dotfiles

My dotfiles.
Log | Files | Refs | LICENSE

scala.jsf (5987B)


      1 # JOE syntax highlight file for Scala
      2 
      3 =Idle
      4 =Ident
      5 =Comment
      6 =Constant
      7 =Number		+Constant
      8 =String		+Constant
      9 =StringEscape	+Escape
     10 =Character	+Constant
     11 =CharacterEscape +Escape
     12 =Boolean	+Constant
     13 =Type
     14 =DefinedFunction +DefinedIdent
     15 
     16 =Keyword
     17 =Operator	+Keyword
     18 =Statement	+Keyword
     19 =Loop		+Statement
     20 =Conditional	+Statement
     21 =Structure	+Statement
     22 =StorageClass	+Type +Keyword
     23 
     24 =Bad
     25 =Brace
     26 =Control	
     27 
     28 =Methods
     29 
     30 :begin Idle
     31 	*	begin	noeat call=.scala()
     32 
     33 .subr scala
     34 
     35 :idle Idle
     36 	*		idle
     37 	"\n"		idle
     38 	"/"		slash
     39 	"0"		first_digit	recolor=-1
     40 	"1-9"		decimal		recolor=-1
     41 	"."		maybe_float
     42 	"\""		maybe_string	recolor=-1
     43 	"'"		char		recolor=-1
     44 	"\i\p{Sc}"	ident		mark buffer
     45 	"{}"		brace		recolor=-1
     46 	",:;=()><[]*&|!~+\-%^"	control	recolor=-1
     47 
     48 :maybe_done Control
     49 	*		idle		noeat
     50 	"/"		idle		noeat return recolor=-2
     51 
     52 :brace Brace
     53 	*		idle		noeat
     54 
     55 :control Control
     56 	*		idle		noeat
     57 
     58 :slash Idle
     59 	*		idle		noeat
     60 	"*"		comment		recolor=-2
     61 	"/"		line_comment	recolor=-2
     62 
     63 :comment Comment comment
     64 	*		comment
     65 	# might be TODO label
     66 	"BFHNTX"	comment		noeat call=comment_todo.comment_todo()
     67 	"*"		maybe_end_comment
     68 
     69 :maybe_end_comment Comment comment
     70 	*		comment		noeat
     71 	"/"		idle
     72 	"*"		maybe_end_comment
     73 
     74 :line_comment Comment comment
     75 	*		line_comment
     76 	# might be TODO label
     77 	"BFHNTX"	line_comment	noeat call=comment_todo.comment_todo()
     78 	"\n"		idle
     79 
     80 :first_digit Number
     81 	*		idle		noeat
     82 	"lLfF"		idle
     83 	"xX"		hex
     84 	"."		float
     85 	"eE"		epart
     86 	"0-7"		octal
     87 	"89"		bad_number	recolor=-1
     88 
     89 :bad_number Bad
     90 	*		idle		noeat
     91 	"0-9"		bad_number
     92 
     93 :octal Number
     94 	*		idle		noeat
     95 	"0-7"		octal
     96 	"89"		bad_number	recolor=-1
     97 	"lL"		idle
     98 
     99 :hex Number
    100 	*		idle		noeat
    101 	"0-9A-Fa-f"	hex
    102 	"lL"		idle
    103 
    104 :decimal Number
    105 	*		idle		noeat
    106 	"0-9"		decimal
    107 	"lLfF"		idle
    108 	"eE"		epart
    109 	"."		float
    110 
    111 :maybe_float Number
    112 	*		idle		recolor=-2 noeat
    113 	"\i\p{Sc}"	not_ident	recolor=-2
    114 	"0-9"		float		recolor=-2
    115 
    116 :not_ident Idle
    117 	*		idle		noeat
    118 	"\c\p{Sc}"	not_ident
    119 
    120 :float Number
    121 	*		idle		noeat
    122 	"eE"		epart
    123 	"0-9"		float
    124 	"fFlL"		idle
    125 
    126 :epart Number
    127 	*		idle		noeat
    128 	"0-9+\-"	enum
    129 
    130 :enum Number
    131 	*		idle		noeat
    132 	"0-9"		enum
    133 	"fFlL"		idle
    134 
    135 :maybe_string String string
    136 	*		string		noeat
    137 	"\""		maybe_string_1
    138 
    139 :maybe_string_1 String string
    140 	*		idle		noeat
    141 	"\""		stringstring
    142 
    143 :string	String string
    144 	*		string
    145 	"\""		idle
    146 	"\\"		string_escape	recolor=-1
    147 	"%"		string_control	recolor=-1
    148 
    149 :string_escape StringEscape string
    150 	*		string
    151 	"u"		string_uni1
    152 	"0-7"		string_octal2
    153 	"\n"		string		recolor=-2
    154 
    155 :string_uni1 StringEscape string
    156 	*		string		noeat
    157 	"0-9a-fA-F"	string_uni2
    158 
    159 :string_uni2 StringEscape string
    160 	*		string		noeat
    161 	"0-9a-fA-F"	string_uni3
    162 
    163 :string_uni3 StringEscape string
    164 	*		string		noeat
    165 	"0-9a-fA-F"	string_uni4
    166 
    167 :string_uni4 StringEscape string
    168 	*		string		noeat
    169 	"0-9a-fA-F"	string
    170 
    171 :string_octal2 StringEscape string
    172 	*		string		noeat
    173 	"0-7"		string_octal3
    174 
    175 :string_octal3 StringEscape string
    176 	*		string		noeat
    177 	"0-7"		string
    178 
    179 :string_control StringEscape string
    180 	*		string_control
    181 	"\n"		idle
    182 	"\""		string		noeat
    183  	"diouxXeEfFgGaAcspn%SCM"	string
    184 
    185 :stringstring	String string
    186 	*		stringstring
    187 	"\""		stringstring_1
    188 	"\\"		stringstring_escape	recolor=-1
    189 	"%"		stringstring_control	recolor=-1
    190 
    191 :stringstring_1 String string
    192 	*		stringstring	noeat
    193 	"\""		stringstring_2
    194 
    195 :stringstring_2 String string
    196 	*		stringstring	noeat
    197 	"\""		idle
    198 
    199 :stringstring_escape StringEscape string
    200 	*		stringstring
    201 	"u"		stringstring_uni1
    202 	"0-7"		stringstring_octal2
    203 	"\n"		stringstring		recolor=-2
    204 
    205 :stringstring_uni1 StringEscape string
    206 	*		stringstring		noeat
    207 	"0-9a-fA-F"	stringstring_uni2
    208 
    209 :stringstring_uni2 StringEscape string
    210 	*		stringstring		noeat
    211 	"0-9a-fA-F"	stringstring_uni3
    212 
    213 :stringstring_uni3 StringEscape string
    214 	*		stringstring		noeat
    215 	"0-9a-fA-F"	stringstring_uni4
    216 
    217 :stringstring_uni4 StringEscape string
    218 	*		stringstring		noeat
    219 	"0-9a-fA-F"	stringstring
    220 
    221 :stringstring_octal2 StringEscape string
    222 	*		stringstring		noeat
    223 	"0-7"		stringstring_octal3
    224 
    225 :stringstring_octal3 StringEscape string
    226 	*		stringstring		noeat
    227 	"0-7"		stringstring
    228 
    229 :stringstring_control StringEscape string
    230 	*		stringstring_control
    231 	"\n"		idle
    232 	"\""		stringstring	noeat
    233 	"diouxXeEfFgGaAcspn%SCM"	stringstring
    234 
    235 :char Character string
    236 	*		char_done
    237 	"'"		idle
    238 	"\\"		char_escape	recolor=-1
    239 
    240 :char_done Character string
    241 	*		idle		noeat recolor=-3
    242 	"\'"		idle
    243 
    244 :char_escape	CharacterEscape string
    245 	*		char_done
    246 	"u"		char_uni1
    247 	"0-7"		char_octal2
    248 
    249 :char_uni1 CharacterEscape string
    250 	*		char_done	noeat
    251 	"0-9a-fA-F"	char_uni2
    252 
    253 :char_uni2 CharacterEscape string
    254 	*		char_done	noeat
    255 	"0-9a-fA-F"	char_uni3
    256 
    257 :char_uni3 CharacterEscape string
    258 	*		char_done	noeat
    259 	"0-9a-fA-F"	char_uni4
    260 
    261 :char_uni4 CharacterEscape string
    262 	*		char_done	noeat
    263 	"0-9a-fA-F"	char_done
    264 
    265 :char_octal2 CharacterEscape string
    266 	*		char_done	noeat
    267 	"0-7"		char_octal3
    268 
    269 :char_octal3 CharacterEscape string
    270 	*		char_done	noeat
    271 	"0-7"		char_done
    272 
    273 :ident Ident
    274 	*		ident_end	noeat markend strings
    275 	"abstract"	storage
    276 	"case"		struct
    277 	"catch"		kw
    278 	"class"		struct
    279 	"def"		struct
    280 	"do"		loop
    281 	"else"		cond
    282 	"false"		bool
    283 	"final"		storage
    284 	"finally"	stmt
    285 	"for"		loop
    286 	"forSome"	loop
    287 	"if"		cond
    288 	"implicit"	storage
    289 	"import"	stmt
    290 	"lazy"		storage
    291 	"match"		cond
    292 	"new"		operator
    293 	"null"		lit
    294 	"object"	storage
    295 	"override"	storage
    296 	"package"	storage
    297 	"private"	storage
    298 	"protected"	storage
    299 	"return"	stmt
    300 	"sealed"	storage
    301 	"super"		kw
    302 	"this"		kw
    303 	"throw"		stmt
    304 	"trait"		kw
    305 	"try"		stmt
    306 	"true"		bool
    307 	"type"		kw
    308 	"val"		kw
    309 	"var"		kw
    310 	"while"		loop
    311 	"with"		kw
    312 	"yield"		loop
    313 done
    314 	"\c\p{Sc}"	ident
    315 
    316 :type Type
    317 	*		idle		noeat
    318 
    319 :kw Keyword
    320 	*		idle		noeat
    321 
    322 :bad_kw Bad
    323 	*		idle		noeat
    324 
    325 :lit Constant
    326 	*		idle		noeat
    327 
    328 :bool Boolean
    329 	*		idle		noeat
    330 
    331 :operator Operator
    332 	*		idle		noeat
    333 
    334 :storage StorageClass
    335 	*		idle		noeat
    336 
    337 :cond Conditional
    338 	*		idle		noeat
    339 
    340 :loop Loop
    341 	*		idle		noeat
    342 
    343 :stmt Statement
    344 	*		idle		noeat
    345 
    346 :struct Structure
    347 	*		idle		noeat
    348 
    349 :ident_end Idle
    350 	*		idle		noeat
    351 	" "		ident_end
    352 	"("		method_end	noeat recolormark
    353 
    354 :method_end DefinedFunction
    355 	*		idle		noeat
    356 
    357 .end