blob: 30e136941f6a48bde4c137ed3c31a42ae094fac8 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim syntax file
2" Language: ATLAS
3" Maintainer: Inaki Saez <jisaez@sfe.indra.es>
4" Last Change: 2001 May 09
5
Bram Moolenaar89bcfda2016-08-30 23:26:57 +02006" quit when a syntax file was already loaded
7if exists("b:current_syntax")
Bram Moolenaar071d4272004-06-13 20:20:40 +00008 finish
9endif
10
11syn case ignore
12
13syn keyword atlasStatement begin terminate
14syn keyword atlasStatement fill calculate compare
15syn keyword atlasStatement setup connect close open disconnect reset
16syn keyword atlasStatement initiate read fetch
17syn keyword atlasStatement apply measure verify remove
18syn keyword atlasStatement perform leave finish output delay
19syn keyword atlasStatement prepare execute
20syn keyword atlasStatement do
21syn match atlasStatement "\<go[ ]\+to\>"
22syn match atlasStatement "\<wait[ ]\+for\>"
23
24syn keyword atlasInclude include
25syn keyword atlasDefine define require declare identify
26
27"syn keyword atlasReserved true false go nogo hi lo via
28syn keyword atlasReserved true false
29
30syn keyword atlasStorageClass external global
31
32syn keyword atlasConditional if then else end
33syn keyword atlasRepeat while for thru
34
35" Flags BEF and statement number
36syn match atlasSpecial "^[BE ][ 0-9]\{,6}\>"
37
38" Number formats
39syn match atlasHexNumber "\<X'[0-9A-F]\+'"
40syn match atlasOctalNumber "\<O'[0-7]\+'"
41syn match atlasBinNumber "\<B'[01]\+'"
42syn match atlasNumber "\<\d\+\>"
43"Floating point number part only
44syn match atlasDecimalNumber "\.\d\+\([eE][-+]\=\d\)\=\>"
45
46syn region atlasFormatString start=+((+ end=+\())\)\|\()[ ]*\$\)+me=e-1
47syn region atlasString start=+\<C'+ end=+'+ oneline
48
49syn region atlasComment start=+^C+ end=+\$+
50syn region atlasComment2 start=+\$.\++ms=s+1 end=+$+ oneline
51
52syn match atlasIdentifier "'[A-Za-z0-9 ._-]\+'"
53
54"Synchronization with Statement terminator $
55syn sync match atlasTerminator grouphere atlasComment "^C"
56syn sync match atlasTerminator groupthere NONE "\$"
57syn sync maxlines=100
58
59
60" Define the default highlighting.
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020061" Only when an item doesn't have highlighting yet
62command -nargs=+ HiLink hi def link <args>
Bram Moolenaar071d4272004-06-13 20:20:40 +000063
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020064HiLink atlasConditional Conditional
65HiLink atlasRepeat Repeat
66HiLink atlasStatement Statement
67HiLink atlasNumber Number
68HiLink atlasHexNumber Number
69HiLink atlasOctalNumber Number
70HiLink atlasBinNumber Number
71HiLink atlasDecimalNumber Float
72HiLink atlasFormatString String
73HiLink atlasString String
74HiLink atlasComment Comment
75HiLink atlasComment2 Comment
76HiLink atlasInclude Include
77HiLink atlasDefine Macro
78HiLink atlasReserved PreCondit
79HiLink atlasStorageClass StorageClass
80HiLink atlasIdentifier NONE
81HiLink atlasSpecial Special
Bram Moolenaar071d4272004-06-13 20:20:40 +000082
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020083delcommand HiLink
Bram Moolenaar071d4272004-06-13 20:20:40 +000084
85let b:current_syntax = "atlas"
86
87" vim: ts=8