annotate runtime/syntax/verilogams.vim @ 34:e170173ecb68 current-release

before ack base protocol.
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Wed, 26 Nov 2008 15:02:10 +0900
parents 76efa0be13f1
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
1 " Vim syntax file
34
e170173ecb68 before ack base protocol.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
2 " Language: Verilog-AMS
e170173ecb68 before ack base protocol.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
3 " Maintainer: S. Myles Prather <smprather@gmail.com>
e170173ecb68 before ack base protocol.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
4 "
e170173ecb68 before ack base protocol.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
5 " Version 1.1 S. Myles Prather <smprather@gmail.com>
e170173ecb68 before ack base protocol.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
6 " Moved some keywords to the type category.
e170173ecb68 before ack base protocol.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
7 " Added the metrix suffixes to the number matcher.
e170173ecb68 before ack base protocol.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
8 " Version 1.2 Prasanna Tamhankar <pratam@gmail.com>
e170173ecb68 before ack base protocol.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
9 " Minor reserved keyword updates.
e170173ecb68 before ack base protocol.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
10 " Last Update: Thursday September 15 15:36:03 CST 2005
0
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
11
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
12 " For version 5.x: Clear all syntax items
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
13 " For version 6.x: Quit when a syntax file was already loaded
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
14 if version < 600
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
15 syntax clear
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
16 elseif exists("b:current_syntax")
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
17 finish
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
18 endif
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
19
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
20 " Set the local value of the 'iskeyword' option
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
21 if version >= 600
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
22 setlocal iskeyword=@,48-57,_,192-255
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
23 else
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
24 set iskeyword=@,48-57,_,192-255
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
25 endif
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
26
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
27 " Annex B.1 'All keywords'
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
28 syn keyword verilogamsStatement above abs absdelay acos acosh ac_stim
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
29 syn keyword verilogamsStatement always analog analysis and asin
34
e170173ecb68 before ack base protocol.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
30 syn keyword verilogamsStatement asinh assign atan atan2 atanh
e170173ecb68 before ack base protocol.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
31 syn keyword verilogamsStatement buf bufif0 bufif1 ceil cmos connectmodule
0
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
32 syn keyword verilogamsStatement connectrules cos cosh cross ddt ddx deassign
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
33 syn keyword verilogamsStatement defparam disable discipline
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
34 syn keyword verilogamsStatement driver_update edge enddiscipline
34
e170173ecb68 before ack base protocol.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
35 syn keyword verilogamsStatement endconnectrules endmodule endfunction endgenerate
0
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
36 syn keyword verilogamsStatement endnature endparamset endprimitive endspecify
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
37 syn keyword verilogamsStatement endtable endtask event exp final_step
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
38 syn keyword verilogamsStatement flicker_noise floor flow force fork
34
e170173ecb68 before ack base protocol.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
39 syn keyword verilogamsStatement function generate highz0
e170173ecb68 before ack base protocol.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
40 syn keyword verilogamsStatement highz1 hypot idt idtmod if ifnone inf initial
0
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
41 syn keyword verilogamsStatement initial_step inout input join
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
42 syn keyword verilogamsStatement laplace_nd laplace_np laplace_zd laplace_zp
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
43 syn keyword verilogamsStatement large last_crossing limexp ln localparam log
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
44 syn keyword verilogamsStatement macromodule max medium min module nand nature
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
45 syn keyword verilogamsStatement negedge net_resolution nmos noise_table nor not
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
46 syn keyword verilogamsStatement notif0 notif1 or output paramset pmos
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
47 syn keyword verilogamsType parameter real integer electrical input output
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
48 syn keyword verilogamsType inout reg tri tri0 tri1 triand trior trireg
34
e170173ecb68 before ack base protocol.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
49 syn keyword verilogamsType string from exclude aliasparam ground genvar
e170173ecb68 before ack base protocol.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
50 syn keyword verilogamsType branch time realtime
0
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
51 syn keyword verilogamsStatement posedge potential pow primitive pull0 pull1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
52 syn keyword verilogamsStatement pullup pulldown rcmos release
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
53 syn keyword verilogamsStatement rnmos rpmos rtran rtranif0 rtranif1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
54 syn keyword verilogamsStatement scalared sin sinh slew small specify specparam
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
55 syn keyword verilogamsStatement sqrt strong0 strong1 supply0 supply1
34
e170173ecb68 before ack base protocol.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
56 syn keyword verilogamsStatement table tan tanh task timer tran tranif0
0
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
57 syn keyword verilogamsStatement tranif1 transition
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
58 syn keyword verilogamsStatement vectored wait wand weak0 weak1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
59 syn keyword verilogamsStatement white_noise wire wor wreal xnor xor zi_nd
34
e170173ecb68 before ack base protocol.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
60 syn keyword verilogamsStatement zi_np zi_zd zi_zp
0
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
61 syn keyword verilogamsRepeat forever repeat while for
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
62 syn keyword verilogamsLabel begin end
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
63 syn keyword verilogamsConditional if else case casex casez default endcase
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
64 syn match verilogamsConstant ":inf"lc=1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
65 syn match verilogamsConstant "-inf"lc=1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
66 " Annex B.2 Discipline/nature
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
67 syn keyword verilogamsStatement abstol access continuous ddt_nature discrete
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
68 syn keyword verilogamsStatement domain idt_nature units
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
69 " Annex B.3 Connect Rules
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
70 syn keyword verilogamsStatement connect merged resolveto split
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
71
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
72 syn match verilogamsOperator "[&|~><!)(*#%@+/=?:;}{,.\^\-\[\]]"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
73 syn match verilogamsOperator "<+"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
74 syn match verilogamsStatement "[vV]("me=e-1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
75 syn match verilogamsStatement "[iI]("me=e-1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
76
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
77 syn keyword verilogamsTodo contained TODO
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
78 syn region verilogamsComment start="/\*" end="\*/" contains=verilogamsTodo
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
79 syn match verilogamsComment "//.*" contains=verilogamsTodo
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
80
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
81 syn match verilogamsGlobal "`celldefine"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
82 syn match verilogamsGlobal "`default_nettype"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
83 syn match verilogamsGlobal "`define"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
84 syn match verilogamsGlobal "`else"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
85 syn match verilogamsGlobal "`elsif"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
86 syn match verilogamsGlobal "`endcelldefine"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
87 syn match verilogamsGlobal "`endif"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
88 syn match verilogamsGlobal "`ifdef"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
89 syn match verilogamsGlobal "`ifndef"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
90 syn match verilogamsGlobal "`include"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
91 syn match verilogamsGlobal "`line"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
92 syn match verilogamsGlobal "`nounconnected_drive"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
93 syn match verilogamsGlobal "`resetall"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
94 syn match verilogamsGlobal "`timescale"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
95 syn match verilogamsGlobal "`unconnected_drive"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
96 syn match verilogamsGlobal "`undef"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
97 syn match verilogamsSystask "$[a-zA-Z0-9_]\+\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
98
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
99 syn match verilogamsConstant "\<[A-Z][A-Z0-9_]\+\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
100
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
101 syn match verilogamsNumber "\(\<\d\+\|\)'[bB]\s*[0-1_xXzZ?]\+\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
102 syn match verilogamsNumber "\(\<\d\+\|\)'[oO]\s*[0-7_xXzZ?]\+\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
103 syn match verilogamsNumber "\(\<\d\+\|\)'[dD]\s*[0-9_xXzZ?]\+\>"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
104 syn match verilogamsNumber "\(\<\d\+\|\)'[hH]\s*[0-9a-fA-F_xXzZ?]\+\>"
34
e170173ecb68 before ack base protocol.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
105 syn match verilogamsNumber "\<[+-]\=[0-9_]\+\(\.[0-9_]*\|\)\(e[0-9_]*\|\)[TGMKkmunpfa]\=\>"
0
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
106
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
107 syn region verilogamsString start=+"+ skip=+\\"+ end=+"+ contains=verilogamsEscape
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
108 syn match verilogamsEscape +\\[nt"\\]+ contained
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
109 syn match verilogamsEscape "\\\o\o\=\o\=" contained
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
110
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
111 "Modify the following as needed. The trade-off is performance versus
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
112 "functionality.
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
113 syn sync lines=50
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
114
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
115 " Define the default highlighting.
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
116 " For version 5.7 and earlier: only when not done already
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
117 " For version 5.8 and later: only when an item doesn't have highlighting yet
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
118 if version >= 508 || !exists("did_verilogams_syn_inits")
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
119 if version < 508
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
120 let did_verilogams_syn_inits = 1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
121 command -nargs=+ HiLink hi link <args>
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
122 else
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
123 command -nargs=+ HiLink hi def link <args>
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
124 endif
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
125
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
126 " The default highlighting.
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
127 HiLink verilogamsCharacter Character
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
128 HiLink verilogamsConditional Conditional
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
129 HiLink verilogamsRepeat Repeat
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
130 HiLink verilogamsString String
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
131 HiLink verilogamsTodo Todo
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
132 HiLink verilogamsComment Comment
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
133 HiLink verilogamsConstant Constant
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
134 HiLink verilogamsLabel Label
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
135 HiLink verilogamsNumber Number
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
136 HiLink verilogamsOperator Special
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
137 HiLink verilogamsStatement Statement
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
138 HiLink verilogamsGlobal Define
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
139 HiLink verilogamsDirective SpecialComment
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
140 HiLink verilogamsEscape Special
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
141 HiLink verilogamsType Type
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
142 HiLink verilogamsSystask Function
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
143
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
144 delcommand HiLink
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
145 endif
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
146
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
147 let b:current_syntax = "verilogams"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
148
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
149 " vim: ts=8