xref: /vim-8.2.3635/runtime/syntax/tak.vim (revision f37506f6)
1071d4279SBram Moolenaar" Vim syntax file
2071d4279SBram Moolenaar" Language:     TAK2, TAK3, TAK2000 thermal modeling input file
3071d4279SBram Moolenaar" Maintainer:   Adrian Nagle, [email protected]
4071d4279SBram Moolenaar" Last Change:  2003 May 11
5071d4279SBram Moolenaar" Filenames:    *.tak
6071d4279SBram Moolenaar" URL:		http://www.naglenet.org/vim/syntax/tak.vim
7071d4279SBram Moolenaar" MAIN URL:     http://www.naglenet.org/vim/
8071d4279SBram Moolenaar
9071d4279SBram Moolenaar
10071d4279SBram Moolenaar
1189bcfda6SBram Moolenaar" quit when a syntax file was already loaded
1289bcfda6SBram Moolenaarif exists("b:current_syntax")
13071d4279SBram Moolenaar  finish
14071d4279SBram Moolenaarendif
15071d4279SBram Moolenaar
16071d4279SBram Moolenaar
17071d4279SBram Moolenaar
18071d4279SBram Moolenaar" Ignore case
19071d4279SBram Moolenaarsyn case ignore
20071d4279SBram Moolenaar
21071d4279SBram Moolenaar
22071d4279SBram Moolenaar
23071d4279SBram Moolenaar"
24071d4279SBram Moolenaar"
25071d4279SBram Moolenaar" Begin syntax definitions for tak input file.
26071d4279SBram Moolenaar"
27071d4279SBram Moolenaar
28071d4279SBram Moolenaar" Force free-form fortran format
29071d4279SBram Moolenaarlet fortran_free_source=1
30071d4279SBram Moolenaar
31071d4279SBram Moolenaar" Load FORTRAN syntax file
32071d4279SBram Moolenaarruntime! syntax/fortran.vim
33071d4279SBram Moolenaarunlet b:current_syntax
34071d4279SBram Moolenaar
35071d4279SBram Moolenaar
36071d4279SBram Moolenaar
37071d4279SBram Moolenaar" Define keywords for TAK and TAKOUT
38071d4279SBram Moolenaarsyn keyword takOptions  AUTODAMP CPRINT CSGDUMP GPRINT HPRINT LODTMP
39071d4279SBram Moolenaarsyn keyword takOptions  LOGIC LPRINT NCVPRINT PLOTQ QPRINT QDUMP
40071d4279SBram Moolenaarsyn keyword takOptions  SUMMARY SOLRTN UID DICTIONARIES
41071d4279SBram Moolenaar
42071d4279SBram Moolenaarsyn keyword takRoutine  SSITER FWDWRD FWDBCK BCKWRD
43071d4279SBram Moolenaar
44071d4279SBram Moolenaarsyn keyword takControl  ABSZRO BACKUP DAMP DTIMEI DTIMEL DTIMEH IFC
45071d4279SBram Moolenaarsyn keyword takControl  MAXTEMP NLOOPS NLOOPT NODELIST OUTPUT PLOT
46071d4279SBram Moolenaarsyn keyword takControl  SCALE SIGMA SSCRIT TIMEND TIMEN TIMEO TRCRIT
47071d4279SBram Moolenaarsyn keyword takControl  PLOT
48071d4279SBram Moolenaar
49071d4279SBram Moolenaarsyn keyword takSolids   PLATE CYL
50071d4279SBram Moolenaarsyn keyword takSolidsArg   ID MATNAM NTYPE TEMP XL YL ZL ISTRN ISTRG NNX
51071d4279SBram Moolenaarsyn keyword takSolidsArg   NNY NNZ INCX INCY INCZ IAK IAC DIFF ARITH BOUN
52071d4279SBram Moolenaarsyn keyword takSolidsArg   RMIN RMAX AXMAX NNR NNTHETA INCR INCTHETA END
53071d4279SBram Moolenaar
54071d4279SBram Moolenaarsyn case ignore
55071d4279SBram Moolenaar
56071d4279SBram Moolenaarsyn keyword takMacro    fac pstart pstop
57071d4279SBram Moolenaarsyn keyword takMacro    takcommon fstart fstop
58071d4279SBram Moolenaar
59071d4279SBram Moolenaarsyn keyword takIdentifier  flq flx gen ncv per sim siv stf stv tvd tvs
60071d4279SBram Moolenaarsyn keyword takIdentifier  tvt pro thm
61071d4279SBram Moolenaar
62071d4279SBram Moolenaar
63071d4279SBram Moolenaar
64071d4279SBram Moolenaar" Define matches for TAK
65071d4279SBram Moolenaarsyn match  takFortran     "^F[0-9 ]"me=e-1
66071d4279SBram Moolenaarsyn match  takMotran      "^M[0-9 ]"me=e-1
67071d4279SBram Moolenaar
68071d4279SBram Moolenaarsyn match  takComment     "^C.*$"
69071d4279SBram Moolenaarsyn match  takComment     "^R.*$"
70071d4279SBram Moolenaarsyn match  takComment     "\$.*$"
71071d4279SBram Moolenaar
72071d4279SBram Moolenaarsyn match  takHeader      "^header[^,]*"
73071d4279SBram Moolenaar
74071d4279SBram Moolenaarsyn match  takIncludeFile "include \+[^ ]\+"hs=s+8 contains=fortranInclude
75071d4279SBram Moolenaar
76071d4279SBram Moolenaarsyn match  takInteger     "-\=\<[0-9]*\>"
77071d4279SBram Moolenaarsyn match  takFloat       "-\=\<[0-9]*\.[0-9]*"
78071d4279SBram Moolenaarsyn match  takScientific  "-\=\<[0-9]*\.[0-9]*E[-+]\=[0-9]\+\>"
79071d4279SBram Moolenaar
80071d4279SBram Moolenaarsyn match  takEndData     "END OF DATA"
81071d4279SBram Moolenaar
82071d4279SBram Moolenaarif exists("thermal_todo")
83071d4279SBram Moolenaar  execute 'syn match  takTodo ' . '"^'.thermal_todo.'.*$"'
84071d4279SBram Moolenaarelse
85071d4279SBram Moolenaar  syn match  takTodo	    "^?.*$"
86071d4279SBram Moolenaarendif
87071d4279SBram Moolenaar
88071d4279SBram Moolenaar
89071d4279SBram Moolenaar
90071d4279SBram Moolenaar" Define the default highlighting
9189bcfda6SBram Moolenaar" Only when an item doesn't have highlighting yet
92071d4279SBram Moolenaar
93*f37506f6SBram Moolenaarhi def link takMacro		Macro
94*f37506f6SBram Moolenaarhi def link takOptions		Special
95*f37506f6SBram Moolenaarhi def link takRoutine		Type
96*f37506f6SBram Moolenaarhi def link takControl		Special
97*f37506f6SBram Moolenaarhi def link takSolids		Special
98*f37506f6SBram Moolenaarhi def link takSolidsArg		Statement
99*f37506f6SBram Moolenaarhi def link takIdentifier		Identifier
100071d4279SBram Moolenaar
101*f37506f6SBram Moolenaarhi def link takFortran		PreProc
102*f37506f6SBram Moolenaarhi def link takMotran		PreProc
103071d4279SBram Moolenaar
104*f37506f6SBram Moolenaarhi def link takComment		Comment
105*f37506f6SBram Moolenaarhi def link takHeader		Typedef
106*f37506f6SBram Moolenaarhi def link takIncludeFile		Type
107*f37506f6SBram Moolenaarhi def link takInteger		Number
108*f37506f6SBram Moolenaarhi def link takFloat		Float
109*f37506f6SBram Moolenaarhi def link takScientific		Float
110071d4279SBram Moolenaar
111*f37506f6SBram Moolenaarhi def link takEndData		Macro
112071d4279SBram Moolenaar
113*f37506f6SBram Moolenaarhi def link takTodo		Todo
114071d4279SBram Moolenaar
115071d4279SBram Moolenaar
116071d4279SBram Moolenaar
117071d4279SBram Moolenaarlet b:current_syntax = "tak"
118071d4279SBram Moolenaar
119071d4279SBram Moolenaar" vim: ts=8 sw=2
120