blob: 8ca7962e81879d42077cf8cb174ba34440a3c387 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim syntax file
2" Language: TSS (Thermal Synthesizer System) Geometry
3" Maintainer: Adrian Nagle, anagle@ball.com
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
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020011" quit when a syntax file was already loaded
12if exists("b:current_syntax")
Bram Moolenaar071d4272004-06-13 20:20:40 +000013 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
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020075" Only when an item doesn't have highlighting yet
Bram Moolenaar071d4272004-06-13 20:20:40 +000076
Bram Moolenaarf37506f2016-08-31 22:22:10 +020077hi 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
Bram Moolenaar071d4272004-06-13 20:20:40 +000083
Bram Moolenaarf37506f2016-08-31 22:22:10 +020084hi def link tssgmDefault SpecialComment
85hi def link tssgmComment Statement
86hi def link tssgmCommentString Comment
87hi def link tssgmSurfIdent Identifier
88hi def link tssgmString Delimiter
Bram Moolenaar071d4272004-06-13 20:20:40 +000089
Bram Moolenaarf37506f2016-08-31 22:22:10 +020090hi def link tssgmInteger Number
91hi def link tssgmFloat Float
92hi def link tssgmScientific Float
Bram Moolenaar071d4272004-06-13 20:20:40 +000093
Bram Moolenaar071d4272004-06-13 20:20:40 +000094
95
96let b:current_syntax = "tssgm"
97
98" vim: ts=8 sw=2