dotfiles

My dotfiles.
Log | Files | Refs | LICENSE

rexx.jsf (1154B)


      1 # JOE syntax highlight file for REXX
      2 
      3 =Idle
      4 =Bad
      5 =Comment
      6 =Constant
      7 =String		+Constant
      8 =Keyword
      9 
     10 :idle Idle
     11 	*			idle
     12 	"\""			dquote recolor=-1
     13 	"'"			squote recolor=-1
     14 	"a-zA-Z.!?@_0-9"	symbol buffer
     15 	"/"			idle call=.maybe_comment()
     16 
     17 :symbol Idle
     18 	*			idle noeat istrings
     19 	"address"	kw
     20 	"arg"		kw
     21 	"call"		kw
     22 	"do"		kw
     23 	"drop"		kw
     24 	"exit"		kw
     25 	"if"		kw
     26 	"interpret"	kw
     27 	"iterate"	kw
     28 	"leave"		kw
     29 	"nop"		kw
     30 	"numeric"	kw
     31 	"options"	kw
     32 	"parse"		kw
     33 	"procedure"	kw
     34 	"pull"		kw
     35 	"push"		kw
     36 	"queue"		kw
     37 	"return"	kw
     38 	"say"		kw
     39 	"select"	kw
     40 	"signal"	kw
     41 	"trace"		kw
     42 	"upper"		kw
     43 	"then"		kw
     44 	"end"		kw
     45 	"else"		kw
     46 	"when"		kw
     47 	"otherwise"	kw
     48 done
     49 	"a-zA-Z.!?@_0-9"	symbol
     50 
     51 :kw Keyword
     52 	*		idle noeat
     53 
     54 :squote String string
     55 	*	squote
     56 	"'"	idle
     57 
     58 :dquote String string
     59 	*	dquote
     60 	"\""	idle
     61 
     62 #
     63 # Subroutine to parse recursive /* */ comments
     64 #
     65 
     66 .subr maybe_comment
     67 
     68 :maybe_comment Idle
     69 	*		maybe_comment return noeat
     70 	"*"		comment recolor=-2
     71 
     72 :comment Comment comment
     73 	*	comment
     74 	"BFHNTX" comment noeat call=comment_todo.comment_todo()
     75 	"*"	maybe_done
     76 	"/"	comment call=.maybe_comment()
     77 
     78 :maybe_done Comment comment
     79 	*	comment noeat
     80 	"/"	comment	return
     81 
     82 .end