xref: /vim-8.2.3635/runtime/syntax/grads.vim (revision 89bcfda6)
1" Vim syntax file
2" Language:	grads (GrADS scripts)
3" Maintainer:	Stefan Fronzek (sfronzek at gmx dot net)
4" Last change: 13 Feb 2004
5
6" Grid Analysis and Display System (GrADS); http://grads.iges.org/grads
7" This syntax file defines highlighting for only very few features of
8" the GrADS scripting language.
9
10" quit when a syntax file was already loaded
11if exists("b:current_syntax")
12  finish
13endif
14
15" GrADS is entirely case-insensitive.
16syn case ignore
17
18" The keywords
19
20syn keyword gradsStatement	if else endif break exit return
21syn keyword gradsStatement	while endwhile say prompt pull function
22syn keyword gradsStatement subwrd sublin substr read write close
23" String
24
25syn region gradsString		start=+'+ end=+'+
26
27" Integer number
28syn match  gradsNumber		"[+-]\=\<[0-9]\+\>"
29
30" Operator
31
32"syn keyword gradsOperator	| ! % & != >=
33"syn match gradsOperator		"[^\.]not[^a-zA-Z]"
34
35" Variables
36
37syn keyword gradsFixVariables	lat lon lev result rec rc
38syn match gradsglobalVariables	"_[a-zA-Z][a-zA-Z0-9]*"
39syn match gradsVariables		"[a-zA-Z][a-zA-Z0-9]*"
40syn match gradsConst		"#[A-Z][A-Z_]+"
41
42" Comments
43
44syn match gradsComment	"\*.*"
45
46" Typical Typos
47
48" for C programmers:
49" syn match gradsTypos	"=="
50" syn match gradsTypos	"!="
51
52" Define the default highlighting.
53" Only when an item doesn't hgs highlighting+yet
54command -nargs=+ HiLink hi def link <args>
55
56HiLink gradsStatement		Statement
57
58HiLink gradsString		String
59HiLink gradsNumber		Number
60
61HiLink gradsFixVariables	Special
62HiLink gradsVariables		Identifier
63HiLink gradsglobalVariables	Special
64HiLink gradsConst		Special
65
66HiLink gradsClassMethods	Function
67
68HiLink gradsOperator		Operator
69HiLink gradsComment		Comment
70
71HiLink gradsTypos		Error
72
73delcommand HiLink
74
75let b:current_syntax = "grads"
76