Added original JOE highlighter for Python

This commit is contained in:
Christian Nicolai 2011-09-03 11:03:43 +02:00
parent 047a0a054a
commit dfb8ac1c22
1 changed files with 162 additions and 0 deletions

162
python.jsf Normal file
View File

@ -0,0 +1,162 @@
# JOE syntax highlight file for Python
# TODO:
# * octal escape sequences
# * highlight function and class names?
=Idle
=Comment green
=Docstring cyan
=DocEscape bold cyan
=Constant cyan
=Escape bold cyan
=Keyword bold
:idle Idle
* idle
"#" comment recolor=-1
"0-9" first_digit recolor=-1
"'" string_sq_1 recolor=-1
"\"" string_dq_1 recolor=-1
"a-zA-Z_" ident buffer
:comment Comment
* comment
"\n" idle
:string_sq_1 Constant
* string_sq noeat
"'" string_sq_2
:string_sq_2 Constant
* idle noeat
"'" docstr_sq recolor=-3
:string_sq Constant
* string_sq
"\'" idle
"\\" string_sq_esc recolor=-1
:string_sq_esc Escape
* string_sq
"\n" string_sq recolor=-2
:docstr_sq Docstring
* docstr_sq
"\\" docstr_sq_esc recolor=-1
"'" docstr_sq_1
:docstr_sq_1 Docstring
* docstr_sq noeat
"'" docstr_sq_2
:docstr_sq_2 Docstring
* docstr_sq noeat
"'" idle
:docstr_sq_esc DocEscape
* docstr_sq
"\n" docstr_sq recolor=-2
:string_dq_1 Constant
* string_dq noeat
"\"" string_dq_2
:string_dq_2 Constant
* idle noeat
"\"" docstr_dq recolor=-3
:string_dq Constant
* string_dq
"\"" idle
"\\" string_dq_esc recolor=-1
:string_dq_esc Escape
* string_dq
"\n" string_dq recolor=-2
:docstr_dq Docstring
* docstr_dq
"\\" docstr_dq_esc recolor=-1
"\"" docstr_dq_1
:docstr_dq_1 Docstring
* docstr_dq noeat
"\"" docstr_dq_2
:docstr_dq_2 Docstring
* docstr_dq noeat
"\"" idle
:docstr_dq_esc DocEscape
* docstr_dq
"\n" docstr_dq recolor=-2
:first_digit Constant
* idle noeat
"xX" hex
"." float
"0-9" first_number
:hex Constant
* idle noeat
"0-9A-Fa-f" hex
:first_number Constant
* idle noeat
"0-9" first_number
"." float
:maybe_float Constant
* idle recolor=-2 noeat
"0-9" float recolor=-2
:float Constant
* idle noeat
"eE" epart
"0-9" float
:epart Constant
* idle noeat
"0-9+\-" enum
:enum Constant
* idle noeat
"0-9" enum
:ident Idle
* idle noeat strings
"and" kw
"assert" kw
"break" kw
"class" kw
"continue" kw
"def" kw
"del" kw
"elif" kw
"else" kw
"except" kw
"exec" kw
"finally" kw
"for" kw
"from" kw
"global" kw
"if" kw
"import" kw
"in" kw
"is" kw
"lambda" kw
"not" kw
"or" kw
"pass" kw
"print" kw
"raise" kw
"return" kw
"try" kw
"while" kw
"yield" kw
done
"a-zA-Z0-9_" ident
:kw Keyword
* idle noeat