PageRenderTime 47ms CodeModel.GetById 20ms RepoModel.GetById 0ms app.codeStats 0ms

/jEdit/tags/jedit-4-0-pre5/modes/verilog.xml

#
XML | 233 lines | 223 code | 4 blank | 6 comment | 0 complexity | 1a4a1bef755590c7c7a4be42ece07ba2 MD5 | raw file
Possible License(s): BSD-3-Clause, AGPL-1.0, Apache-2.0, LGPL-2.0, LGPL-3.0, GPL-2.0, CC-BY-SA-3.0, LGPL-2.1, GPL-3.0, MPL-2.0-no-copyleft-exception, IPL-1.0
  1. <?xml version="1.0"?>
  2. <!DOCTYPE MODE SYSTEM "xmode.dtd">
  3. <!-- Written By: Wojciech Stryjewski - thvortex@sourceforge.net -->
  4. <MODE>
  5. <PROPS>
  6. <!-- Rules for indenting:
  7. - Case expressions (a line ending with colon) are indented
  8. - Keywords begin, module, task, etc. always indented
  9. - Keywords if, while, etc. indent only if ; not on the same line
  10. -->
  11. <PROPERTY NAME="indentPrevLine" VALUE="(.*:\s*)|(\s*(begin|fork|task|table|specify|primitive|module|generate|function|case[xz]?)\&gt;.*)|(\s*(always|if|else|for|forever|initial|repeat|while)\&gt;[^;]*)" />
  12. <PROPERTY NAME="commentStart" VALUE="/*" />
  13. <PROPERTY NAME="commentEnd" VALUE="*/" />
  14. <PROPERTY NAME="lineComment" VALUE="//" />
  15. <PROPERTY NAME="noWordSep" VALUE="_'" />
  16. <PROPERTY NAME="wordBreakChars" VALUE=",+-=&lt;&gt;/?^&amp;*" />
  17. </PROPS>
  18. <RULES ESCAPE="\" IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">
  19. <!-- whitespace: (space and tab) -->
  20. <WHITESPACE> </WHITESPACE>
  21. <WHITESPACE> </WHITESPACE>
  22. <!-- Comments -->
  23. <SPAN TYPE="COMMENT1">
  24. <BEGIN>/*</BEGIN>
  25. <END>*/</END>
  26. </SPAN>
  27. <EOL_SPAN TYPE="COMMENT1">//</EOL_SPAN>
  28. <!--String Literals -->
  29. <SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE">
  30. <BEGIN>"</BEGIN>
  31. <END>"</END>
  32. </SPAN>
  33. <!-- Integer literals: Can't handle 123_456 but 'd123_456 is ok -->
  34. <MARK_FOLLOWING TYPE="DIGIT">'d</MARK_FOLLOWING>
  35. <MARK_FOLLOWING TYPE="DIGIT">'h</MARK_FOLLOWING>
  36. <MARK_FOLLOWING TYPE="DIGIT">'b</MARK_FOLLOWING>
  37. <MARK_FOLLOWING TYPE="DIGIT">'o</MARK_FOLLOWING>
  38. <!-- Function calls, module instantiation, system tasks with args -->
  39. <MARK_PREVIOUS TYPE="FUNCTION" EXCLUDE_MATCH="TRUE">(</MARK_PREVIOUS>
  40. <!-- Operators -->
  41. <SEQ TYPE="OPERATOR">=</SEQ>
  42. <SEQ TYPE="OPERATOR">!</SEQ>
  43. <SEQ TYPE="OPERATOR">+</SEQ>
  44. <SEQ TYPE="OPERATOR">-</SEQ>
  45. <SEQ TYPE="OPERATOR">/</SEQ>
  46. <SEQ TYPE="OPERATOR">*</SEQ>
  47. <SEQ TYPE="OPERATOR">&gt;</SEQ>
  48. <SEQ TYPE="OPERATOR">&lt;</SEQ>
  49. <SEQ TYPE="OPERATOR">%</SEQ>
  50. <SEQ TYPE="OPERATOR">&amp;</SEQ>
  51. <SEQ TYPE="OPERATOR">|</SEQ>
  52. <SEQ TYPE="OPERATOR">^</SEQ>
  53. <SEQ TYPE="OPERATOR">~</SEQ>
  54. <SEQ TYPE="OPERATOR">}</SEQ>
  55. <SEQ TYPE="OPERATOR">{</SEQ>
  56. <SEQ TYPE="NULL">,</SEQ>
  57. <SEQ TYPE="NULL">:</SEQ>
  58. <SEQ TYPE="NULL">;</SEQ>
  59. <SEQ TYPE="NULL">]</SEQ>
  60. <SEQ TYPE="NULL">[</SEQ>
  61. <SEQ TYPE="NULL">(</SEQ>
  62. <SEQ TYPE="NULL">)</SEQ>
  63. <SEQ TYPE="NULL">?</SEQ>
  64. <SEQ TYPE="NULL">#</SEQ>
  65. <SEQ TYPE="NULL">@</SEQ>
  66. <KEYWORDS IGNORE_CASE="FALSE">
  67. <!-- Regular Keywords -->
  68. <KEYWORD1>always</KEYWORD1>
  69. <KEYWORD1>assign</KEYWORD1>
  70. <KEYWORD1>begin</KEYWORD1>
  71. <KEYWORD1>case</KEYWORD1>
  72. <KEYWORD1>casex</KEYWORD1>
  73. <KEYWORD1>casez</KEYWORD1>
  74. <KEYWORD1>default</KEYWORD1>
  75. <KEYWORD1>deassign</KEYWORD1>
  76. <KEYWORD1>disable</KEYWORD1>
  77. <KEYWORD1>else</KEYWORD1>
  78. <KEYWORD1>end</KEYWORD1>
  79. <KEYWORD1>endcase</KEYWORD1>
  80. <KEYWORD1>endfunction</KEYWORD1>
  81. <KEYWORD1>endgenerate</KEYWORD1>
  82. <KEYWORD1>endmodule</KEYWORD1>
  83. <KEYWORD1>endprimitive</KEYWORD1>
  84. <KEYWORD1>endspecify</KEYWORD1>
  85. <KEYWORD1>endtable</KEYWORD1>
  86. <KEYWORD1>endtask</KEYWORD1>
  87. <KEYWORD1>for</KEYWORD1>
  88. <KEYWORD1>force</KEYWORD1>
  89. <KEYWORD1>forever</KEYWORD1>
  90. <KEYWORD1>fork</KEYWORD1>
  91. <KEYWORD1>function</KEYWORD1>
  92. <KEYWORD1>generate</KEYWORD1>
  93. <KEYWORD1>if</KEYWORD1>
  94. <KEYWORD1>initial</KEYWORD1>
  95. <KEYWORD1>join</KEYWORD1>
  96. <KEYWORD1>macromodule</KEYWORD1>
  97. <KEYWORD1>module</KEYWORD1>
  98. <KEYWORD1>negedge</KEYWORD1>
  99. <KEYWORD1>posedge</KEYWORD1>
  100. <KEYWORD1>primitive</KEYWORD1>
  101. <KEYWORD1>repeat</KEYWORD1>
  102. <KEYWORD1>release</KEYWORD1>
  103. <KEYWORD1>specify</KEYWORD1>
  104. <KEYWORD1>table</KEYWORD1>
  105. <KEYWORD1>task</KEYWORD1>
  106. <KEYWORD1>wait</KEYWORD1>
  107. <KEYWORD1>while</KEYWORD1>
  108. <!-- Compiler Directives -->
  109. <KEYWORD2>`include</KEYWORD2>
  110. <KEYWORD2>`define</KEYWORD2>
  111. <KEYWORD2>`undef</KEYWORD2>
  112. <KEYWORD2>`ifdef</KEYWORD2>
  113. <KEYWORD2>`ifndef</KEYWORD2>
  114. <KEYWORD2>`else</KEYWORD2>
  115. <KEYWORD2>`endif</KEYWORD2>
  116. <KEYWORD2>`timescale</KEYWORD2>
  117. <KEYWORD2>`resetall</KEYWORD2>
  118. <KEYWORD2>`signed</KEYWORD2>
  119. <KEYWORD2>`unsigned</KEYWORD2>
  120. <KEYWORD2>`celldefine</KEYWORD2>
  121. <KEYWORD2>`endcelldefine</KEYWORD2>
  122. <KEYWORD2>`default_nettype</KEYWORD2>
  123. <KEYWORD2>`unconnected_drive</KEYWORD2>
  124. <KEYWORD2>`nounconnected_drive</KEYWORD2>
  125. <KEYWORD2>`protect</KEYWORD2>
  126. <KEYWORD2>`endprotect</KEYWORD2>
  127. <KEYWORD2>`protected</KEYWORD2>
  128. <KEYWORD2>`endprotected</KEYWORD2>
  129. <KEYWORD2>`remove_gatename</KEYWORD2>
  130. <KEYWORD2>`noremove_gatename</KEYWORD2>
  131. <KEYWORD2>`remove_netname</KEYWORD2>
  132. <KEYWORD2>`noremove_netname</KEYWORD2>
  133. <KEYWORD2>`expand_vectornets</KEYWORD2>
  134. <KEYWORD2>`noexpand_vectornets</KEYWORD2>
  135. <KEYWORD2>`autoexpand_vectornets</KEYWORD2>
  136. <!-- Type Declaration Keywords -->
  137. <KEYWORD3>integer</KEYWORD3>
  138. <KEYWORD3>reg</KEYWORD3>
  139. <KEYWORD3>time</KEYWORD3>
  140. <KEYWORD3>realtime</KEYWORD3>
  141. <KEYWORD3>defparam</KEYWORD3>
  142. <KEYWORD3>parameter</KEYWORD3>
  143. <KEYWORD3>event</KEYWORD3>
  144. <KEYWORD3>wire</KEYWORD3>
  145. <KEYWORD3>wand</KEYWORD3>
  146. <KEYWORD3>wor</KEYWORD3>
  147. <KEYWORD3>tri</KEYWORD3>
  148. <KEYWORD3>triand</KEYWORD3>
  149. <KEYWORD3>trior</KEYWORD3>
  150. <KEYWORD3>tri0</KEYWORD3>
  151. <KEYWORD3>tri1</KEYWORD3>
  152. <KEYWORD3>trireg</KEYWORD3>
  153. <KEYWORD3>vectored</KEYWORD3>
  154. <KEYWORD3>scalared</KEYWORD3>
  155. <KEYWORD3>input</KEYWORD3>
  156. <KEYWORD3>output</KEYWORD3>
  157. <KEYWORD3>inout</KEYWORD3>
  158. <!-- Signal Strengths -->
  159. <KEYWORD3>supply0</KEYWORD3>
  160. <KEYWORD3>supply1</KEYWORD3>
  161. <KEYWORD3>strong0</KEYWORD3>
  162. <KEYWORD3>strong1</KEYWORD3>
  163. <KEYWORD3>pull0</KEYWORD3>
  164. <KEYWORD3>pull1</KEYWORD3>
  165. <KEYWORD3>weak0</KEYWORD3>
  166. <KEYWORD3>weak1</KEYWORD3>
  167. <KEYWORD3>highz0</KEYWORD3>
  168. <KEYWORD3>highz1</KEYWORD3>
  169. <KEYWORD3>small</KEYWORD3>
  170. <KEYWORD3>medium</KEYWORD3>
  171. <KEYWORD3>large</KEYWORD3>
  172. <!-- System Tasks With No/Optional Arguments -->
  173. <FUNCTION>$stop</FUNCTION>
  174. <FUNCTION>$finish</FUNCTION>
  175. <FUNCTION>$time</FUNCTION>
  176. <FUNCTION>$stime</FUNCTION>
  177. <FUNCTION>$realtime</FUNCTION>
  178. <FUNCTION>$settrace</FUNCTION>
  179. <FUNCTION>$cleartrace</FUNCTION>
  180. <FUNCTION>$showscopes</FUNCTION>
  181. <FUNCTION>$showvars</FUNCTION>
  182. <FUNCTION>$monitoron</FUNCTION>
  183. <FUNCTION>$monitoroff</FUNCTION>
  184. <FUNCTION>$random</FUNCTION>
  185. <FUNCTION>$printtimescale</FUNCTION>
  186. <FUNCTION>$timeformat</FUNCTION>
  187. <!-- Built-in primitives -->
  188. <FUNCTION>and</FUNCTION>
  189. <FUNCTION>nand</FUNCTION>
  190. <FUNCTION>or</FUNCTION>
  191. <FUNCTION>nor</FUNCTION>
  192. <FUNCTION>xor</FUNCTION>
  193. <FUNCTION>xnor</FUNCTION>
  194. <FUNCTION>buf</FUNCTION>
  195. <FUNCTION>bufif0</FUNCTION>
  196. <FUNCTION>bufif1</FUNCTION>
  197. <FUNCTION>not</FUNCTION>
  198. <FUNCTION>notif0</FUNCTION>
  199. <FUNCTION>notif1</FUNCTION>
  200. <FUNCTION>nmos</FUNCTION>
  201. <FUNCTION>pmos</FUNCTION>
  202. <FUNCTION>cmos</FUNCTION>
  203. <FUNCTION>rnmos</FUNCTION>
  204. <FUNCTION>rpmos</FUNCTION>
  205. <FUNCTION>rcmos</FUNCTION>
  206. <FUNCTION>tran</FUNCTION>
  207. <FUNCTION>tranif0</FUNCTION>
  208. <FUNCTION>tranif1</FUNCTION>
  209. <FUNCTION>rtran</FUNCTION>
  210. <FUNCTION>rtranif0</FUNCTION>
  211. <FUNCTION>rtranif1</FUNCTION>
  212. <FUNCTION>pullup</FUNCTION>
  213. <FUNCTION>pulldown</FUNCTION>
  214. </KEYWORDS>
  215. </RULES>
  216. </MODE>