dotfiles

My dotfiles.
Log | Files | Refs | LICENSE

vhdl.jsf (3138B)


      1 # JOE syntax highlight file for VHDL
      2 
      3 # Define colors
      4 
      5 =Idle
      6 =Ident
      7 =Comment
      8 =Constant
      9 =Number		+Constant
     10 =String		+Constant
     11 =Character	+String
     12 =Escape
     13 =StringEscape	+Escape +String
     14 =CharacterEscape +StringEscape
     15 =Keyword
     16 =Operator	+Keyword
     17 
     18 # All following states are for when we're not in a preprocessor line
     19 
     20 :idle Idle
     21 	*		idle
     22 	"-"		maybe_comment
     23 	"'"		char		recolor=-1
     24 	"\""		string		recolor=-1
     25 	"0-9"		first_digit	recolor=-1
     26 	"."		maybe_float
     27 	"\""		string		recolor=-1
     28 	"Bb"		maybe_binary	buffer
     29 	"Oo"		maybe_octal	buffer
     30 	"Xx"		maybe_hex	buffer
     31 	"ac-np-wyzAC-NP-WYZ"	ident	buffer
     32 
     33 :maybe_comment Idle
     34 	*		idle		noeat
     35 	"-"		comment		recolor=-2
     36 
     37 :comment Comment
     38 	*		comment
     39 	"BFHNTX"	comment		noeat call=comment_todo.comment_todo()
     40 	"\n"		idle
     41 
     42 
     43 # Character constant
     44 
     45 :char Character
     46 	*		char
     47 	"'"		idle
     48 
     49 # Strings
     50 
     51 :maybe_binary Idle
     52 	*		ident		noeat
     53 	"\""		string		recolor=-2
     54 
     55 :maybe_octal Idle
     56 	*		ident		noeat
     57 	"\""		string		recolor=-2
     58 
     59 :maybe_hex Idle
     60 	*		ident		noeat
     61 	"\""		string		recolor=-2
     62 
     63 :string	String string
     64 	*		string
     65 	"\n"		idle
     66 	"\""		idle
     67 	"\\"		string_escape	recolor=-1
     68 
     69 :string_escape StringEscape string
     70 	*		string
     71 	"\n"		string		recolor=-2
     72 
     73 # Integer constants
     74 
     75 :first_digit Number
     76 	*		idle		noeat
     77 	"."		float
     78 	"_"		first_digit
     79 	"0-9"		first_digit
     80 
     81 # Floating point
     82 
     83 :maybe_float Number
     84 	*		idle	recolor=-2	noeat
     85 	"0-9"		float		recolor=-2
     86 
     87 :float Number
     88 	*		idle	noeat
     89 	"eE"		epart
     90 	"0-9"		float
     91 
     92 :epart	Number
     93 	*		idle	noeat
     94 	"0-9+\-"	enum
     95 
     96 :enum	Number
     97 	*		idle	noeat
     98 	"0-9"		enum
     99 
    100 # Identifiers
    101 
    102 :ident	Ident
    103 	*		quote		noeat istrings
    104 	"abs"		operator
    105 	"access"	kw
    106 	"after"		kw
    107 	"alias"		kw
    108 	"all"		kw
    109 	"and"		operator
    110 	"architecture"	kw
    111 	"array"		kw
    112 	"assert"	kw
    113 	"attribute"	kw
    114 	"begin"		kw
    115 	"block"		kw
    116 	"body"		kw
    117 	"buffer"	kw
    118 	"bus"		kw
    119 	"case"		kw
    120 	"component"	kw
    121 	"configuration"	kw
    122 	"constant"	kw
    123 	"disconnect"	kw
    124 	"downto"	kw
    125 	"else"		kw
    126 	"elsif"		kw
    127 	"end"		kw
    128 	"entity"	kw
    129 	"exit"		kw
    130 	"file"		kw
    131 	"for"		kw
    132 	"function"	kw
    133 	"generate"	kw
    134 	"generic"	kw
    135 	"group"		kw
    136 	"guarded"	kw
    137 	"if"		kw
    138 	"impure"	kw
    139 	"in"		kw
    140 	"inertial"	kw
    141 	"inout"		kw
    142 	"is"		kw
    143 	"label"		kw
    144 	"library"	kw
    145 	"linkage"	kw
    146 	"literal"	kw
    147 	"loop"		kw
    148 	"map"		kw
    149 	"mod"		operator
    150 	"nand"		operator
    151 	"new"		kw
    152 	"next"		kw
    153 	"nor"		operator
    154 	"not"		operator
    155 	"null"		kw
    156 	"of"		kw
    157 	"on"		kw
    158 	"open"		kw
    159 	"or"		operator
    160 	"others"	kw
    161 	"out"		kw
    162 	"package"	kw
    163 	"port"		kw
    164 	"postponed"	kw
    165 	"procedure"	kw
    166 	"process"	kw
    167 	"process"	kw
    168 	"pure"		kw
    169 	"range"		kw
    170 	"record"	kw
    171 	"register"	kw
    172 	"reject"	kw
    173 	"rem"		operator
    174 	"report"	kw
    175 	"return"	kw
    176 	"rol"		operator
    177 	"ror"		operator
    178 	"select"	kw
    179 	"severity"	kw
    180 	"shared"	kw
    181 	"signal"	kw
    182 	"sla"		operator
    183 	"sll"		operator
    184 	"sra"		operator
    185 	"srl"		operator
    186 	"subtype"	kw
    187 	"then"		kw
    188 	"to"		kw
    189 	"transport"	kw
    190 	"type"		kw
    191 	"unaffected"	kw
    192 	"units"		kw
    193 	"until"		kw
    194 	"use"		kw
    195 	"variable"	kw
    196 	"wait"		kw
    197 	"when"		kw
    198 	"while"		kw
    199 	"with"		kw
    200 	"xnor"		operator
    201 	"xor"		operator
    202 done
    203 	"a-zA-Z0-9_"	ident
    204 
    205 :operator Operator
    206 	*	idle	noeat
    207 
    208 :kw Keyword
    209 	*	idle	noeat
    210 
    211 # identifiers separated with quote '
    212 
    213 :quote	Idle
    214 	*	idle	noeat
    215 	"'"	quote_word
    216 
    217 :quote_word	Idle
    218 	*	idle	noeat
    219 	"a-zA-Z"	ident	buffer