xref: /vim-8.2.3635/runtime/syntax/tssgm.vim (revision bb76f24a)
1" Vim syntax file
2" Language:     TSS (Thermal Synthesizer System) Geometry
3" Maintainer:   Adrian Nagle, [email protected]
4" Last Change:  2003 May 11
5" Filenames:    *.tssgm
6" URL:		http://www.naglenet.org/vim/syntax/tssgm.vim
7" MAIN URL:     http://www.naglenet.org/vim/
8
9
10
11" quit when a syntax file was already loaded
12if exists("b:current_syntax")
13  finish
14endif
15
16
17
18" Ignore case
19syn case ignore
20
21
22
23"
24"
25" Begin syntax definitions for tss geomtery file.
26"
27
28" Define keywords for TSS
29syn keyword tssgmParam  units mirror param active sides submodel include
30syn keyword tssgmParam  iconductor nbeta ngamma optics material thickness color
31syn keyword tssgmParam  initial_temp
32syn keyword tssgmParam  initial_id node_ids node_add node_type
33syn keyword tssgmParam  gamma_boundaries gamma_add beta_boundaries
34syn keyword tssgmParam  p1 p2 p3 p4 p5 p6 rot1 rot2 rot3 tx ty tz
35
36syn keyword tssgmSurfType  rectangle trapezoid disc ellipse triangle
37syn keyword tssgmSurfType  polygon cylinder cone sphere ellipic-cone
38syn keyword tssgmSurfType  ogive torus box paraboloid hyperboloid ellipsoid
39syn keyword tssgmSurfType  quadrilateral trapeziod
40
41syn keyword tssgmArgs   OUT IN DOWN BOTH DOUBLE NONE SINGLE RADK CC FECC
42syn keyword tssgmArgs   white red blue green yellow orange violet pink
43syn keyword tssgmArgs   turquoise grey black
44syn keyword tssgmArgs   Arithmetic Boundary Heater
45
46syn keyword tssgmDelim  assembly
47
48syn keyword tssgmEnd    end
49
50syn keyword tssgmUnits  cm feet meters inches
51syn keyword tssgmUnits  Celsius Kelvin Fahrenheit Rankine
52
53
54
55" Define matches for TSS
56syn match  tssgmDefault     "^DEFAULT/LENGTH = \(ft\|in\|cm\|m\)"
57syn match  tssgmDefault     "^DEFAULT/TEMP = [CKFR]"
58
59syn match  tssgmComment       /comment \+= \+".*"/ contains=tssParam,tssgmCommentString
60syn match  tssgmCommentString /".*"/ contained
61
62syn match  tssgmSurfIdent   " \S\+\.\d\+ \=$"
63
64syn match  tssgmString      /"[^" ]\+"/ms=s+1,me=e-1 contains=ALLBUT,tssInteger
65
66syn match  tssgmArgs	    / = [xyz],"/ms=s+3,me=e-2
67
68syn match  tssgmInteger     "-\=\<[0-9]*\>"
69syn match  tssgmFloat       "-\=\<[0-9]*\.[0-9]*"
70syn match  tssgmScientific  "-\=\<[0-9]*\.[0-9]*E[-+]\=[0-9]\+\>"
71
72
73
74" Define the default highlighting
75" Only when an item doesn't have highlighting yet
76
77hi def link tssgmParam		Statement
78hi def link tssgmSurfType		Type
79hi def link tssgmArgs		Special
80hi def link tssgmDelim		Typedef
81hi def link tssgmEnd		Macro
82hi def link tssgmUnits		Special
83
84hi def link tssgmDefault		SpecialComment
85hi def link tssgmComment		Statement
86hi def link tssgmCommentString	Comment
87hi def link tssgmSurfIdent		Identifier
88hi def link tssgmString		Delimiter
89
90hi def link tssgmInteger		Number
91hi def link tssgmFloat		Float
92hi def link tssgmScientific	Float
93
94
95
96let b:current_syntax = "tssgm"
97
98" vim: ts=8 sw=2
99