blob: 94074bd0832e27f990da114a65b3ab101f8f30d9 [file] [log] [blame]
Bram Moolenaar92dff182014-02-11 19:15:50 +01001" Vim syntax file
2" Language: SystemVerilog
3" Maintainer: kocha <kocha.lsifrontend@gmail.com>
4" Last Change: 12-Aug-2013.
5
Bram Moolenaar89bcfda2016-08-30 23:26:57 +02006" quit when a syntax file was already loaded
7if exists("b:current_syntax")
Bram Moolenaar92dff182014-02-11 19:15:50 +01008 finish
9endif
10
11" Read in Verilog syntax files
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020012runtime! syntax/verilog.vim
13unlet b:current_syntax
Bram Moolenaar92dff182014-02-11 19:15:50 +010014
15" IEEE1800-2005
16syn keyword systemverilogStatement always_comb always_ff always_latch
17syn keyword systemverilogStatement class endclass new
18syn keyword systemverilogStatement virtual local const protected
19syn keyword systemverilogStatement package endpackage
20syn keyword systemverilogStatement rand randc constraint randomize
21syn keyword systemverilogStatement with inside dist
22syn keyword systemverilogStatement sequence endsequence randsequence
23syn keyword systemverilogStatement srandom
24syn keyword systemverilogStatement logic bit byte
25syn keyword systemverilogStatement int longint shortint
26syn keyword systemverilogStatement struct packed
27syn keyword systemverilogStatement final
28syn keyword systemverilogStatement import export
29syn keyword systemverilogStatement context pure
30syn keyword systemverilogStatement void shortreal chandle string
31syn keyword systemverilogStatement clocking endclocking iff
32syn keyword systemverilogStatement interface endinterface modport
33syn keyword systemverilogStatement cover covergroup coverpoint endgroup
34syn keyword systemverilogStatement property endproperty
35syn keyword systemverilogStatement program endprogram
36syn keyword systemverilogStatement bins binsof illegal_bins ignore_bins
37syn keyword systemverilogStatement alias matches solve static assert
38syn keyword systemverilogStatement assume super before expect bind
39syn keyword systemverilogStatement extends null tagged extern this
40syn keyword systemverilogStatement first_match throughout timeprecision
41syn keyword systemverilogStatement timeunit type union
42syn keyword systemverilogStatement uwire var cross ref wait_order intersect
43syn keyword systemverilogStatement wildcard within
44
45syn keyword systemverilogTypeDef typedef enum
46
47syn keyword systemverilogConditional randcase
48syn keyword systemverilogConditional unique priority
49
50syn keyword systemverilogRepeat return break continue
51syn keyword systemverilogRepeat do foreach
52
53syn keyword systemverilogLabel join_any join_none forkjoin
54
55" IEEE1800-2009 add
56syn keyword systemverilogStatement checker endchecker
57syn keyword systemverilogStatement accept_on reject_on
58syn keyword systemverilogStatement sync_accept_on sync_reject_on
59syn keyword systemverilogStatement eventually nexttime until until_with
60syn keyword systemverilogStatement s_always s_eventually s_nexttime s_until s_until_with
61syn keyword systemverilogStatement let untyped
62syn keyword systemverilogStatement strong weak
63syn keyword systemverilogStatement restrict global implies
64
65syn keyword systemverilogConditional unique0
66
67" IEEE1800-2012 add
68syn keyword systemverilogStatement implements
69syn keyword systemverilogStatement interconnect soft nettype
70
71" Define the default highlighting.
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020072command -nargs=+ HiLink hi def link <args>
Bram Moolenaar92dff182014-02-11 19:15:50 +010073
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020074" The default highlighting.
75HiLink systemverilogStatement Statement
76HiLink systemverilogTypeDef TypeDef
77HiLink systemverilogConditional Conditional
78HiLink systemverilogRepeat Repeat
79HiLink systemverilogLabel Label
80HiLink systemverilogGlobal Define
81HiLink systemverilogNumber Number
Bram Moolenaar92dff182014-02-11 19:15:50 +010082
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020083delcommand HiLink
Bram Moolenaar92dff182014-02-11 19:15:50 +010084
85let b:current_syntax = "systemverilog"
86
87" vim: ts=8