1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196
|
# JOE syntax highlight file for YAML
# by Christian Nicolai (http://mycrobase.de)
=Idle
=Comment green
=Constant cyan
=Escape bold cyan
=Type bold
=Keyword bold
=Bad bold red
=Brace magenta
=Quote blue
=Directive red
=Reference yellow
=LocalType fg_310 # brown
=BlockDelim bold blue
=BadTab inverse red
:line_start Idle
* maybe_key noeat mark
"\t" bad_tab recolor=-1
"#" line_comment recolor=-1
"." maybe_block_end1
" " line_start
:idle Constant
* plain_scalar noeat mark
"\n" line_start
"%" directive recolor=-1
" " maybe_idle_comment
"'" string_sq_start recolor=-1
"\"" string_dq_start recolor=-1
"{[]}" brace recolor=-1
"." maybe_block_end1
"*&" maybe_reference
"!" maybe_typecast
:plain_scalar Constant
* plain_scalar
"\t" bad_tab recolor=-1
"\n" line_start
" " maybe_plain_scalar_comment
":" plain_scalar_interrupt recolor=-1
"{[]}," post_scalar noeat
:plain_scalar_interrupt Constant
* plain_scalar recolor=-1
" \n" key recolormark
"{[]}," brace
:post_scalar Idle
* maybe_key noeat
"#" line_comment recolor=-1
",\n" line_start recolor=-1
"{[]}" brace recolor=-1
"'" string_sq_1 recolor=-1
"\"" string_dq_1 recolor=-1
:maybe_key Idle
* maybe_key1 recolor=-1
"\n" line_start
"%#'\"{[]}*&!" idle noeat
"-" maybe_block1
:maybe_key1 Constant
* idle noeat
":" maybe_key2
"a-zA-Z0-9_.-" maybe_key1
" " maybe_key1_comment
:maybe_key2 Constant
* idle noeat
" \n" key noeat recolormark
:key Idle
* key_end noeat
:key_end Idle
* idle noeat
# mark bad tabs until the first non-whitespace
:bad_tab BadTab
* line_start noeat
:maybe_idle_comment Comment
* idle noeat
"#" line_comment
:maybe_key1_comment Comment
* maybe_key1 noeat
"#" line_comment
:maybe_plain_scalar_comment Comment
* plain_scalar noeat
"#" line_comment
:line_comment Comment
* line_comment
"\n" line_start
:brace Brace
* line_start noeat
:directive Directive
* directive
"\n" line_start
#============ Quoted Strings ===================
:string_q_end Quote
* idle noeat
#------------ single-quotes --------------------
:string_sq_start Quote
* string_sq noeat
:string_sq Constant
* string_sq
"'" string_sq_maybe_end recolor=-1
:string_sq_maybe_end Escape
* string_q_end noeat recolor=-2
"'" string_sq
#------------ double-quotes --------------------
:string_dq_start Quote
* string_dq noeat
:string_dq Constant
* string_dq
"\"" string_q_end recolor=-1
"\\" string_dq_esc recolor=-1
:string_dq_esc Escape
* string_dq
"\n" string_dq recolor=-2
#============ '---' Blocks =====================
:maybe_block1 Constant
* maybe_key1 noeat
"-" maybe_block2
:maybe_block2 Constant
* maybe_key1 noeat
"-" block recolor=-3
:block BlockDelim
* idle noeat recolor=-4
"\n" line_start
:maybe_block_end1 Constant
* idle noeat recolor=-2
"." maybe_block_end2
:maybe_block_end2 Constant
* idle noeat recolor=-3
"." block_end recolor=-3
:block_end BlockDelim
* idle noeat recolor=-4
"\n" line_start
#============ Reference ========================
:maybe_reference Constant
* idle
"a-zA-Z_" reference recolor=-2
:reference Reference
* idle noeat
"a-zA-Z0-9_" reference
#============ Types ============================
: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
|