3 " Maintainer: Inaki Saez <jisaez@sfe.indra.es>
4 " Last Change: 2001 May 09
6 " For version 5.x: Clear all syntax items
7 " For version 6.x: Quit when a syntax file was already loaded
10 elseif exists("b:current_syntax")
16 syn keyword atlasStatement begin terminate
17 syn keyword atlasStatement fill calculate compare
18 syn keyword atlasStatement setup connect close open disconnect reset
19 syn keyword atlasStatement initiate read fetch
20 syn keyword atlasStatement apply measure verify remove
21 syn keyword atlasStatement perform leave finish output delay
22 syn keyword atlasStatement prepare execute
23 syn keyword atlasStatement do
24 syn match atlasStatement "\<go[ ]\+to\>"
25 syn match atlasStatement "\<wait[ ]\+for\>"
27 syn keyword atlasInclude include
28 syn keyword atlasDefine define require declare identify
30 "syn keyword atlasReserved true false go nogo hi lo via
31 syn keyword atlasReserved true false
33 syn keyword atlasStorageClass external global
35 syn keyword atlasConditional if then else end
36 syn keyword atlasRepeat while for thru
38 " Flags BEF and statement number
39 syn match atlasSpecial "^[BE ][ 0-9]\{,6}\>"
42 syn match atlasHexNumber "\<X'[0-9A-F]\+'"
43 syn match atlasOctalNumber "\<O'[0-7]\+'"
44 syn match atlasBinNumber "\<B'[01]\+'"
45 syn match atlasNumber "\<\d\+\>"
46 "Floating point number part only
47 syn match atlasDecimalNumber "\.\d\+\([eE][-+]\=\d\)\=\>"
49 syn region atlasFormatString start=+((+ end=+\())\)\|\()[ ]*\$\)+me=e-1
50 syn region atlasString start=+\<C'+ end=+'+ oneline
52 syn region atlasComment start=+^C+ end=+\$+
53 syn region atlasComment2 start=+\$.\++ms=s+1 end=+$+ oneline
55 syn match atlasIdentifier "'[A-Za-z0-9 ._-]\+'"
57 "Synchronization with Statement terminator $
58 syn sync match atlasTerminator grouphere atlasComment "^C"
59 syn sync match atlasTerminator groupthere NONE "\$"
63 " Define the default highlighting.
64 " For version 5.7 and earlier: only when not done already
65 " For version 5.8 and later: only when an item doesn't have highlighting yet
66 if version >= 508 || !exists("did_atlas_syntax_inits")
68 let did_atlas_syntax_inits = 1
69 command -nargs=+ HiLink hi link <args>
71 command -nargs=+ HiLink hi def link <args>
74 HiLink atlasConditional Conditional
75 HiLink atlasRepeat Repeat
76 HiLink atlasStatement Statement
77 HiLink atlasNumber Number
78 HiLink atlasHexNumber Number
79 HiLink atlasOctalNumber Number
80 HiLink atlasBinNumber Number
81 HiLink atlasDecimalNumber Float
82 HiLink atlasFormatString String
83 HiLink atlasString String
84 HiLink atlasComment Comment
85 HiLink atlasComment2 Comment
86 HiLink atlasInclude Include
87 HiLink atlasDefine Macro
88 HiLink atlasReserved PreCondit
89 HiLink atlasStorageClass StorageClass
90 HiLink atlasIdentifier NONE
91 HiLink atlasSpecial Special
96 let b:current_syntax = "atlas"