mirror of
https://github.com/cmur2/joe-syntax.git
synced 2024-12-22 02:54:23 +01:00
Added original ruby syntax highlighting file
This commit is contained in:
parent
d1ab2b4bc4
commit
e6384eab3f
423
ruby.jsf
Normal file
423
ruby.jsf
Normal file
@ -0,0 +1,423 @@
|
||||
# JOE syntax highlight file for Ruby
|
||||
|
||||
# Oh No! It's another perl!
|
||||
|
||||
# <<EOF1, <<EOF2 is not working. Only EOF1 is seen. It should wait for the
|
||||
# EOF2.
|
||||
|
||||
=Idle
|
||||
=Preproc blue
|
||||
=Comment green
|
||||
=POD green
|
||||
=Constant cyan
|
||||
=Escape bold cyan
|
||||
=Type bold
|
||||
=Keyword bold
|
||||
=Bad bold red
|
||||
=Var yellow
|
||||
|
||||
# Detect pod
|
||||
|
||||
:idle Idle
|
||||
* rest noeat
|
||||
"=" pod_start
|
||||
|
||||
# Rest of line
|
||||
|
||||
:rest Idle
|
||||
* rest
|
||||
"#" line_comment_i recolor=-1
|
||||
"\n" idle
|
||||
"0" first_digit recolor=-1
|
||||
"1-9" decimal recolor=-1
|
||||
"." maybe_float
|
||||
"\"" string recolor=-1
|
||||
"'" char recolor=-1
|
||||
"`" backtick recolor=-1
|
||||
"/" regex recolor=-1
|
||||
"<" maybe_inc
|
||||
"$" not_string buffer
|
||||
"%" pstring
|
||||
"a-zA-Z_" ident buffer
|
||||
|
||||
# / / regex not allowed after terms
|
||||
|
||||
:after_term Idle
|
||||
* rest noeat
|
||||
" )]" after_term
|
||||
"/%" rest
|
||||
|
||||
:pod_start Idle
|
||||
* pod_start
|
||||
"\n" pod_block
|
||||
|
||||
:pod_block POD
|
||||
* pod_block
|
||||
"=" pod_ident buffer
|
||||
|
||||
:pod_ident POD
|
||||
* pod_block noeat strings
|
||||
"=end" rest
|
||||
done
|
||||
"a-zA-Z0-9_" pod_ident
|
||||
|
||||
:maybe_inc Idle
|
||||
* after_term noeat
|
||||
"<" maybe_inc1
|
||||
|
||||
:maybe_inc1 Idle
|
||||
* after_term noeat
|
||||
"-" allow_space
|
||||
"'\"" quoted_inc_start save_c recolor=-1
|
||||
"A-Za-z_" inc buffer noeat
|
||||
|
||||
:allow_space Idle
|
||||
* after_term noeat
|
||||
"'\"" quoted_inc_start_allow save_c recolor=-1
|
||||
"A-Za-z_" inc_allow buffer noeat
|
||||
|
||||
:quoted_inc_start Var
|
||||
* quoted_inc buffer
|
||||
|
||||
:quoted_inc_start_allow Var
|
||||
* quoted_inc_allow buffer
|
||||
|
||||
:quoted_inc Var
|
||||
* quoted_inc
|
||||
& skipline save_s
|
||||
|
||||
:quoted_inc_allow Var
|
||||
* quoted_inc_allow
|
||||
& skipline_allow save_s
|
||||
|
||||
:inc Var
|
||||
* skipline save_s noeat
|
||||
"A-Za-z0-9_" inc
|
||||
|
||||
:inc_allow Var
|
||||
* skipline_allow save_s noeat
|
||||
"A-Za-z0-9_" inc_allow
|
||||
|
||||
# Should be treated as a normal line here...
|
||||
|
||||
:skipline Idle
|
||||
* skipline
|
||||
"\n" next_line
|
||||
|
||||
:skipline_allow Idle
|
||||
* skipline_allow
|
||||
"\n" next_line_allow
|
||||
|
||||
:todelim Constant
|
||||
* todelim
|
||||
"\n" next_line strings
|
||||
"&" founddelim
|
||||
done
|
||||
|
||||
:todelim_allow Constant
|
||||
* todelim_allow
|
||||
"\n" next_line_allow strings
|
||||
"&" founddelim
|
||||
done
|
||||
|
||||
# eat \n so it's not in string.
|
||||
:next_line Constant
|
||||
* todelim buffer
|
||||
"\n" next_line
|
||||
|
||||
:next_line_allow Constant
|
||||
* todelim_allow buffer
|
||||
" \n" next_line_allow
|
||||
|
||||
:founddelim Var
|
||||
* idle noeat
|
||||
|
||||
:regex Constant
|
||||
* regex
|
||||
"\\" regex_quote recolor=-1
|
||||
"/" after_term
|
||||
|
||||
:regex_quote Escape
|
||||
* regex
|
||||
|
||||
:not_string Idle
|
||||
* rest noeat
|
||||
"A-Za-z_" ident
|
||||
"\"'`#/" rest
|
||||
|
||||
:line_comment Comment
|
||||
* line_comment
|
||||
"\n" rest
|
||||
|
||||
:line_comment_i Comment
|
||||
* line_comment_i
|
||||
"\n" idle
|
||||
|
||||
:end_of_file_comment Comment
|
||||
* end_of_file_comment
|
||||
|
||||
:first_digit Constant
|
||||
* after_term noeat
|
||||
"x" hex
|
||||
"b" binary
|
||||
"." float
|
||||
"eE" epart
|
||||
"0-7" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:bad_number Bad
|
||||
* after_term noeat
|
||||
"0-9" bad_number
|
||||
|
||||
:octal Constant
|
||||
* after_term noeat
|
||||
"0-7_" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:binary Constant
|
||||
* after_term noeat
|
||||
"01_" binary
|
||||
"2-9" bad_number recolor=-1
|
||||
|
||||
:hex Constant
|
||||
* after_term noeat
|
||||
"0-9A-Fa-f_" hex
|
||||
|
||||
:decimal Constant
|
||||
* after_term noeat
|
||||
"0-9_" decimal
|
||||
"eE" epart
|
||||
"." float
|
||||
|
||||
:maybe_float Constant
|
||||
* after_term recolor=-2 noeat
|
||||
"0-9" float recolor=-2
|
||||
|
||||
:float Constant
|
||||
* after_term noeat
|
||||
"eE" epart
|
||||
"0-9_" float
|
||||
|
||||
:epart Constant
|
||||
* after_term noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Constant
|
||||
* after_term noeat
|
||||
"0-9_" enum
|
||||
|
||||
:string Constant
|
||||
* string
|
||||
"\"" after_term
|
||||
"\\" string_escape recolor=-1
|
||||
"$@" string_subst recolor=-1
|
||||
|
||||
:string_subst Escape
|
||||
* string noeat recolor=-1
|
||||
"a-zA-Z_0-9" string_subst
|
||||
|
||||
:string_escape Escape
|
||||
* string
|
||||
"x" string_hex1
|
||||
"c" string_ctrl
|
||||
"N" string_named
|
||||
"0-7" string_octal2
|
||||
"\n" string recolor=-2
|
||||
|
||||
:string_named Escape
|
||||
* string
|
||||
"{" string_named_rest
|
||||
|
||||
:string_named_rest Escape
|
||||
* string_named_rest
|
||||
"}" string
|
||||
|
||||
:string_ctrl Escape
|
||||
* string
|
||||
|
||||
:string_hex1 Escape
|
||||
* string noeat
|
||||
"{" string_unicode
|
||||
"0-9a-fA-F" string_hex2
|
||||
|
||||
:string_unicode Escape
|
||||
* string_unicode
|
||||
"}" string
|
||||
|
||||
:string_hex2 Escape
|
||||
* string noeat
|
||||
"0-9a-fA-F" string
|
||||
|
||||
:string_octal2 Escape
|
||||
* string noeat
|
||||
"0-7" string_octal3
|
||||
|
||||
:string_octal3 Escape
|
||||
* string noeat
|
||||
"0-7" string
|
||||
|
||||
# Only \\ and \' allowed in single quoted strings
|
||||
|
||||
:char Constant
|
||||
* char
|
||||
"\n" reset
|
||||
"'" after_term
|
||||
"\\" char_escape recolor=-1
|
||||
|
||||
:char_escape Escape
|
||||
* char recolor=-2
|
||||
"\\'" char
|
||||
|
||||
:backtick Constant
|
||||
* backtick
|
||||
"`" after_term
|
||||
"\\" backtick_escape recolor=-1
|
||||
"$@" backtick_subst recolor=-1
|
||||
|
||||
:backtick_subst Escape
|
||||
* backtick noeat recolor=-1
|
||||
"a-zA-Z_0-9" backtick_subst
|
||||
|
||||
:backtick_escape Escape
|
||||
* backtick
|
||||
"x" backtick_hex1
|
||||
"c" backtick_ctrl
|
||||
"N" backtick_named
|
||||
"0-7" backtick_octal2
|
||||
"\n" backtick recolor=-2
|
||||
|
||||
:backtick_named Escape
|
||||
* backtick
|
||||
"{" backtick_named_rest
|
||||
|
||||
:backtick_named_rest Escape
|
||||
* backtick_named_rest
|
||||
"}" backtick
|
||||
|
||||
:backtick_ctrl Escape
|
||||
* backtick
|
||||
|
||||
:backtick_hex1 Escape
|
||||
* backtick noeat
|
||||
"{" backtick_unicode
|
||||
"0-9a-fA-F" backtick_hex2
|
||||
|
||||
:backtick_unicode Escape
|
||||
* backtick_unicode
|
||||
"}" backtick
|
||||
|
||||
:backtick_hex2 Escape
|
||||
* backtick noeat
|
||||
"0-9a-fA-F" backtick
|
||||
|
||||
:backtick_octal2 Escape
|
||||
* backtick noeat
|
||||
"0-7" backtick_octal3
|
||||
|
||||
:backtick_octal3 Escape
|
||||
* backtick noeat
|
||||
"0-7" backtick
|
||||
|
||||
:ident Idle
|
||||
* after_term noeat strings
|
||||
"BEGIN" kw
|
||||
"END" kw
|
||||
"alias" kw
|
||||
"and" kw
|
||||
"begin" kw
|
||||
"break" kw
|
||||
"case" kw
|
||||
"class" kw
|
||||
"def" kw
|
||||
"defined" kw
|
||||
"do" kw
|
||||
"else" kw
|
||||
"elsif" kw
|
||||
"end" kw
|
||||
"ensure" kw
|
||||
"false" kw
|
||||
"for" kw
|
||||
"if" kw
|
||||
"in" kw
|
||||
"module" kw
|
||||
"next" kw
|
||||
"nil" kw
|
||||
"not" kw
|
||||
"or" kw
|
||||
"redo" kw
|
||||
"rescue" kw
|
||||
"retry" kw
|
||||
"return" kw
|
||||
"self" kw
|
||||
"super" kw
|
||||
"then" kw
|
||||
"true" kw
|
||||
"undef" kw
|
||||
"unless" kw
|
||||
"until" kw
|
||||
"when" kw
|
||||
"while" kw
|
||||
"yield" kw
|
||||
done
|
||||
"a-zA-Z0-9_" ident
|
||||
|
||||
:kw Keyword
|
||||
* rest noeat
|
||||
|
||||
:pstring Idle
|
||||
* match noeat
|
||||
" " after_term noeat
|
||||
"xrqQw" match
|
||||
|
||||
:match Idle
|
||||
* inmatch save_c recolor=-1
|
||||
" " match
|
||||
|
||||
:inmatch Constant
|
||||
* inmatch
|
||||
& after_term
|
||||
"\\" inmatch_quote recolor=-1
|
||||
|
||||
:inmatch_quote Escape
|
||||
* inmatch
|
||||
|
||||
:subst Idle
|
||||
* insubst save_c recolor=-1
|
||||
"<([{`" delim_insubst save_c recolor=-1
|
||||
" " subst
|
||||
|
||||
:insubst Constant
|
||||
* insubst
|
||||
& inrepl
|
||||
"\\" insubst_quote recolor=-1
|
||||
|
||||
:insubst_quote Escape
|
||||
* insubst
|
||||
|
||||
:inrepl Constant
|
||||
* inrepl
|
||||
& after_term
|
||||
"\\" inrepl_quote
|
||||
|
||||
:inrepl_quote Escape
|
||||
* inrepl
|
||||
|
||||
:delim_insubst Constant
|
||||
* delim_insubst
|
||||
& delim_repl
|
||||
"\\" delim_quote
|
||||
|
||||
:delim_quote Escape
|
||||
* delim_insubst
|
||||
|
||||
:delim_repl Constant
|
||||
* repl save_c recolor=-1
|
||||
" " delim_repl
|
||||
|
||||
:repl Constant
|
||||
* repl
|
||||
& after_term
|
||||
"\\" repl_quote
|
||||
|
||||
:repl_quote Escape
|
||||
* repl
|
Loading…
Reference in New Issue
Block a user