blob: c575347c60e1cd1cf1289264e698d84f21dc0649 [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
76command -nargs=+ HiLink hi def link <args>
Bram Moolenaar071d4272004-06-13 20:20:40 +000077
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020078HiLink tssgmParam Statement
79HiLink tssgmSurfType Type
80HiLink tssgmArgs Special
81HiLink tssgmDelim Typedef
82HiLink tssgmEnd Macro
83HiLink tssgmUnits Special
Bram Moolenaar071d4272004-06-13 20:20:40 +000084
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020085HiLink tssgmDefault SpecialComment
86HiLink tssgmComment Statement
87HiLink tssgmCommentString Comment
88HiLink tssgmSurfIdent Identifier
89HiLink tssgmString Delimiter
Bram Moolenaar071d4272004-06-13 20:20:40 +000090
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020091HiLink tssgmInteger Number
92HiLink tssgmFloat Float
93HiLink tssgmScientific Float
Bram Moolenaar071d4272004-06-13 20:20:40 +000094
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020095delcommand HiLink
Bram Moolenaar071d4272004-06-13 20:20:40 +000096
97
98let b:current_syntax = "tssgm"
99
100" vim: ts=8 sw=2