init
This commit is contained in:
160
syntax/prolog.jsf
Normal file
160
syntax/prolog.jsf
Normal file
@@ -0,0 +1,160 @@
|
||||
# JOE syntax highlight file for Prolog
|
||||
# by Christian Nicolai (http://mycrobase.de)
|
||||
|
||||
=Idle
|
||||
=Ident
|
||||
=Comment
|
||||
=String +Constant
|
||||
=Number +Constant
|
||||
=Escape
|
||||
=StringEscape +Escape
|
||||
=Keyword
|
||||
=Bad
|
||||
|
||||
=Brace
|
||||
=Variable
|
||||
=Predicate +DefinedFunction +DefinedIdent
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"\n" idle
|
||||
"%" line_comment recolor=-1
|
||||
"/" maybe_comment
|
||||
"0-9" first_digit recolor=-1
|
||||
"'" string_sq_1 recolor=-1
|
||||
"\"" string_dq_1 recolor=-1
|
||||
|
||||
# marking -> predicate hilite
|
||||
# buffering -> keyword hilite
|
||||
"a-z" atom mark buffer
|
||||
|
||||
"A-Z" variable recolor=-1
|
||||
"_" _variable
|
||||
"[]" brace recolor=-1
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" idle
|
||||
|
||||
:maybe_comment Idle
|
||||
* idle noeat
|
||||
"*" comment recolor=-2
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"*" maybe_end_comment
|
||||
"BFHNTX" comment noeat call=comment_todo.comment_todo()
|
||||
|
||||
:maybe_end_comment Comment comment
|
||||
* comment noeat
|
||||
"/" idle
|
||||
"*" maybe_end_comment
|
||||
|
||||
:brace Brace
|
||||
* idle noeat
|
||||
|
||||
:string_sq_1 String string
|
||||
* string_sq noeat
|
||||
|
||||
:string_sq String string
|
||||
* string_sq
|
||||
"\'" idle
|
||||
"\\" string_sq_esc recolor=-1
|
||||
|
||||
:string_sq_esc StringEscape string
|
||||
* string_sq
|
||||
"\n" string_sq recolor=-2
|
||||
|
||||
:string_dq_1 String string
|
||||
* string_dq noeat
|
||||
|
||||
:string_dq String string
|
||||
* string_dq
|
||||
"\"" idle
|
||||
"\\" string_dq_esc recolor=-1
|
||||
|
||||
:string_dq_esc StringEscape string
|
||||
* string_dq
|
||||
"\n" string_dq recolor=-2
|
||||
|
||||
:first_digit Number
|
||||
* idle noeat
|
||||
# no float support
|
||||
# "." float
|
||||
"0-9" first_number
|
||||
|
||||
:first_number Number
|
||||
* idle noeat
|
||||
"0-9" first_number
|
||||
"." float
|
||||
|
||||
:float Number
|
||||
* idle noeat
|
||||
"eE" epart
|
||||
"0-9" float
|
||||
|
||||
:epart Number
|
||||
* idle noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Number
|
||||
* idle noeat
|
||||
"0-9" enum
|
||||
|
||||
# list of keywords includes some predicates...
|
||||
:atom Ident
|
||||
* atom_end noeat markend strings
|
||||
"append" kw
|
||||
"atom" kw
|
||||
"atomic" kw
|
||||
"call" kw
|
||||
"catch" kw
|
||||
"clause" kw
|
||||
"close" kw
|
||||
"fail" kw
|
||||
"findall" kw
|
||||
"float" kw
|
||||
"halt" kw
|
||||
"integer" kw
|
||||
"is" kw
|
||||
"member" kw
|
||||
"nl" kw
|
||||
"nonvar" kw
|
||||
"number" kw
|
||||
"once" kw
|
||||
"op" kw
|
||||
"open" kw
|
||||
"read" kw
|
||||
"repeat" kw
|
||||
"throw" kw
|
||||
"true" kw
|
||||
"var" kw
|
||||
"write" kw
|
||||
done
|
||||
"a-zA-Z0-9_" atom
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
|
||||
:atom_end Idle
|
||||
* idle noeat
|
||||
" " atom_end
|
||||
"(" pred_end recolormark
|
||||
":" maybe_pred_end
|
||||
|
||||
:pred_end Predicate
|
||||
* idle noeat
|
||||
|
||||
:maybe_pred_end Idle
|
||||
* idle noeat
|
||||
"-" pred_end recolormark
|
||||
|
||||
:variable Variable
|
||||
* idle noeat
|
||||
"a-zA-Z0-9_" variable
|
||||
|
||||
:_variable Idle
|
||||
* idle noeat
|
||||
# if it's not only _, color it
|
||||
"a-zA-Z0-9_" variable recolor=-2
|
||||
Reference in New Issue
Block a user