xref: /vim-8.2.3635/runtime/syntax/atlas.vim (revision cf2d8dee)
1" Vim syntax file
2" Language:	ATLAS
3" Maintainer:	Inaki Saez <[email protected]>
4" Last Change:	2001 May 09
5
6" For version 5.x: Clear all syntax items
7" For version 6.x: Quit when a syntax file was already loaded
8if version < 600
9  syntax clear
10elseif exists("b:current_syntax")
11  finish
12endif
13
14syn case ignore
15
16syn keyword atlasStatement	begin terminate
17syn keyword atlasStatement	fill calculate compare
18syn keyword atlasStatement	setup connect close open disconnect reset
19syn keyword atlasStatement	initiate read fetch
20syn keyword atlasStatement	apply measure verify remove
21syn keyword atlasStatement	perform leave finish output delay
22syn keyword atlasStatement	prepare execute
23syn keyword atlasStatement	do
24syn match atlasStatement	"\<go[	 ]\+to\>"
25syn match atlasStatement	"\<wait[	 ]\+for\>"
26
27syn keyword atlasInclude	include
28syn keyword atlasDefine		define require declare identify
29
30"syn keyword atlasReserved	true false go nogo hi lo via
31syn keyword atlasReserved	true false
32
33syn keyword atlasStorageClass	external global
34
35syn keyword atlasConditional	if then else end
36syn keyword atlasRepeat		while for thru
37
38" Flags BEF and statement number
39syn match atlasSpecial		"^[BE ][ 0-9]\{,6}\>"
40
41" Number formats
42syn match atlasHexNumber	"\<X'[0-9A-F]\+'"
43syn match atlasOctalNumber	"\<O'[0-7]\+'"
44syn match atlasBinNumber	"\<B'[01]\+'"
45syn match atlasNumber		"\<\d\+\>"
46"Floating point number part only
47syn match atlasDecimalNumber	"\.\d\+\([eE][-+]\=\d\)\=\>"
48
49syn region atlasFormatString	start=+((+	end=+\())\)\|\()[	 ]*\$\)+me=e-1
50syn region atlasString		start=+\<C'+	end=+'+   oneline
51
52syn region atlasComment		start=+^C+	end=+\$+
53syn region atlasComment2	start=+\$.\++ms=s+1	end=+$+ oneline
54
55syn match  atlasIdentifier	"'[A-Za-z0-9 ._-]\+'"
56
57"Synchronization with Statement terminator $
58syn sync match atlasTerminator	grouphere atlasComment "^C"
59syn sync match atlasTerminator	groupthere NONE "\$"
60syn sync maxlines=100
61
62
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
66if version >= 508 || !exists("did_atlas_syntax_inits")
67  if version < 508
68    let did_atlas_syntax_inits = 1
69    command -nargs=+ HiLink hi link <args>
70  else
71    command -nargs=+ HiLink hi def link <args>
72  endif
73
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
92
93  delcommand HiLink
94endif
95
96let b:current_syntax = "atlas"
97
98" vim: ts=8
99