init
This commit is contained in:
152
syntax/yaml.jsf
Normal file
152
syntax/yaml.jsf
Normal file
@@ -0,0 +1,152 @@
|
||||
# JOE syntax highlight file for YAML
|
||||
# by Christian Nicolai (http://mycrobase.de)
|
||||
|
||||
# TODO: Could use numbers vs strings for Constant, but it's a bit of work
|
||||
# Array elements with colons get misidentified as keys
|
||||
|
||||
=Idle
|
||||
=Comment
|
||||
=Constant
|
||||
=String +Constant
|
||||
=Number +Constant
|
||||
=Escape
|
||||
=StringEscape +Escape +String
|
||||
=Type
|
||||
=Bad
|
||||
=Brace
|
||||
|
||||
=Key +Attr +Type +String
|
||||
=Directive +Keyword
|
||||
=Reference +Label +DefinedIdent
|
||||
=LocalType +DefinedType +Type
|
||||
=BlockDelim +Operator
|
||||
|
||||
=BadTab +Bad
|
||||
|
||||
:line_start Idle
|
||||
* maybe_key noeat
|
||||
"\t" bad_tab recolor=-1
|
||||
" " line_start
|
||||
|
||||
:idle Constant
|
||||
* idle
|
||||
"\n" line_start
|
||||
"%" directive recolor=-1
|
||||
"#" line_comment recolor=-1
|
||||
"'" string_sq_1 recolor=-1
|
||||
"\"" string_dq_1 recolor=-1
|
||||
"{[]}" brace recolor=-1
|
||||
"." maybe_block_end1
|
||||
"*&" maybe_reference
|
||||
"!" maybe_typecast
|
||||
|
||||
:maybe_key Idle
|
||||
* maybe_key1 recolor=-1 mark
|
||||
"\n%#'\"{[]}*&!" idle noeat
|
||||
"-" maybe_block1 mark
|
||||
|
||||
:maybe_key1 Constant
|
||||
* idle noeat
|
||||
":" key
|
||||
" a-zA-Z0-9_-" maybe_key1
|
||||
|
||||
# necessary to include the :
|
||||
:key Key
|
||||
* key_end noeat recolormark
|
||||
|
||||
:key_end Key
|
||||
* idle noeat
|
||||
|
||||
# mark bad tabs until the first non-whitespace
|
||||
:bad_tab BadTab
|
||||
* line_start noeat
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
"\n" line_start
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
|
||||
:brace Brace
|
||||
* idle noeat
|
||||
|
||||
:directive Directive
|
||||
* directive
|
||||
"\n" line_start
|
||||
|
||||
: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
|
||||
|
||||
:maybe_block1 Constant
|
||||
* maybe_key1 noeat
|
||||
"-" maybe_block2
|
||||
|
||||
:maybe_block2 Constant
|
||||
* maybe_key1 noeat
|
||||
"-" block recolor=-3
|
||||
|
||||
:block BlockDelim
|
||||
* idle noeat
|
||||
|
||||
:maybe_block_end1 String string
|
||||
* idle noeat
|
||||
"." maybe_block_end2
|
||||
|
||||
:maybe_block_end2 String string
|
||||
* idle noeat
|
||||
"." block_end recolor=-3
|
||||
|
||||
:block_end BlockDelim
|
||||
* idle noeat
|
||||
|
||||
:maybe_reference Constant
|
||||
* idle
|
||||
"a-zA-Z_" reference recolor=-2
|
||||
|
||||
:reference Reference
|
||||
* idle noeat
|
||||
"a-zA-Z0-9_" reference
|
||||
|
||||
:maybe_typecast Constant
|
||||
* idle noeat
|
||||
"a-zA-Z_" local_type recolor=-1
|
||||
"!" builtin_type
|
||||
|
||||
:builtin_type Idle
|
||||
* idle noeat
|
||||
"a-zA-Z" builtin_type2 buffer
|
||||
|
||||
:builtin_type2 Idle
|
||||
* idle noeat strings
|
||||
"str" type
|
||||
"float" type
|
||||
"binary" type
|
||||
done
|
||||
"a-zA-Z_" builtin_type2
|
||||
|
||||
:type Type
|
||||
* idle noeat
|
||||
|
||||
:local_type LocalType
|
||||
* idle noeat
|
||||
"a-zA-Z_" local_type
|
||||
Reference in New Issue
Block a user