xref: /vim-8.2.3635/runtime/syntax/sinda.vim (revision 071d4279)
1*071d4279SBram Moolenaar" Vim syntax file
2*071d4279SBram Moolenaar" Language:     sinda85, sinda/fluint input file
3*071d4279SBram Moolenaar" Maintainer:   Adrian Nagle, [email protected]
4*071d4279SBram Moolenaar" Last Change:  2003 May 11
5*071d4279SBram Moolenaar" Filenames:    *.sin
6*071d4279SBram Moolenaar" URL:		http://www.naglenet.org/vim/syntax/sinda.vim
7*071d4279SBram Moolenaar" MAIN URL:     http://www.naglenet.org/vim/
8*071d4279SBram Moolenaar
9*071d4279SBram Moolenaar
10*071d4279SBram Moolenaar
11*071d4279SBram Moolenaar" For version 5.x: Clear all syntax items
12*071d4279SBram Moolenaar" For version 6.x: Quit when a syntax file was already loaded
13*071d4279SBram Moolenaarif version < 600
14*071d4279SBram Moolenaar  syntax clear
15*071d4279SBram Moolenaarelseif exists("b:current_syntax")
16*071d4279SBram Moolenaar  finish
17*071d4279SBram Moolenaarendif
18*071d4279SBram Moolenaar
19*071d4279SBram Moolenaar
20*071d4279SBram Moolenaar
21*071d4279SBram Moolenaar" Ignore case
22*071d4279SBram Moolenaarsyn case ignore
23*071d4279SBram Moolenaar
24*071d4279SBram Moolenaar
25*071d4279SBram Moolenaar
26*071d4279SBram Moolenaar"
27*071d4279SBram Moolenaar"
28*071d4279SBram Moolenaar" Begin syntax definitions for sinda input and output files.
29*071d4279SBram Moolenaar"
30*071d4279SBram Moolenaar
31*071d4279SBram Moolenaar" Force free-form fortran format
32*071d4279SBram Moolenaarlet fortran_free_source=1
33*071d4279SBram Moolenaar
34*071d4279SBram Moolenaar" Load FORTRAN syntax file
35*071d4279SBram Moolenaarif version < 600
36*071d4279SBram Moolenaar  source <sfile>:p:h/fortran.vim
37*071d4279SBram Moolenaarelse
38*071d4279SBram Moolenaar  runtime! syntax/fortran.vim
39*071d4279SBram Moolenaarendif
40*071d4279SBram Moolenaarunlet b:current_syntax
41*071d4279SBram Moolenaar
42*071d4279SBram Moolenaar
43*071d4279SBram Moolenaar
44*071d4279SBram Moolenaar" Define keywords for SINDA
45*071d4279SBram Moolenaarsyn keyword sindaMacro    BUILD BUILDF DEBON DEBOFF DEFMOD FSTART FSTOP
46*071d4279SBram Moolenaar
47*071d4279SBram Moolenaarsyn keyword sindaOptions  TITLE PPSAVE RSI RSO OUTPUT SAVE QMAP USER1 USER2
48*071d4279SBram Moolenaarsyn keyword sindaOptions  MODEL PPOUT NOLIST MLINE NODEBUG DIRECTORIES
49*071d4279SBram Moolenaarsyn keyword sindaOptions  DOUBLEPR
50*071d4279SBram Moolenaar
51*071d4279SBram Moolenaarsyn keyword sindaRoutine  FORWRD FWDBCK STDSTL FASTIC
52*071d4279SBram Moolenaar
53*071d4279SBram Moolenaarsyn keyword sindaControl  ABSZRO ACCELX ACCELY ACCELZ ARLXCA ATMPCA
54*071d4279SBram Moolenaarsyn keyword sindaControl  BACKUP CSGFAC DRLXCA DTIMEH DTIMEI DTIMEL
55*071d4279SBram Moolenaarsyn keyword sindaControl  DTIMES DTMPCA EBALNA EBALSA EXTLIM ITEROT
56*071d4279SBram Moolenaarsyn keyword sindaControl  ITERXT ITHOLD NLOOPS NLOOPT OUTPUT OPEITR
57*071d4279SBram Moolenaarsyn keyword sindaControl  PATMOS SIGMA TIMEO TIMEND UID
58*071d4279SBram Moolenaar
59*071d4279SBram Moolenaarsyn keyword sindaSubRoutine  ASKERS ADARIN ADDARY ADDMOD ARINDV
60*071d4279SBram Moolenaarsyn keyword sindaSubRoutine  RYINV ARYMPY ARYSUB ARYTRN BAROC
61*071d4279SBram Moolenaarsyn keyword sindaSubRoutine  BELACC BNDDRV BNDGET CHENNB CHGFLD
62*071d4279SBram Moolenaarsyn keyword sindaSubRoutine  CHGLMP CHGSUC CHGVOL CHKCHL CHKCHP
63*071d4279SBram Moolenaarsyn keyword sindaSubRoutine  CNSTAB COMBAL COMPLQ COMPRS CONTRN
64*071d4279SBram Moolenaarsyn keyword sindaSubRoutine  CPRINT CRASH CRVINT CRYTRN CSIFLX
65*071d4279SBram Moolenaarsyn keyword sindaSubRoutine  CVTEMP D11CYL C11DAI D11DIM D11MCY
66*071d4279SBram Moolenaarsyn keyword sindaSubRoutine  D11MDA D11MDI D11MDT D12CYL D12MCY
67*071d4279SBram Moolenaarsyn keyword sindaSubRoutine  D12MDA D1D1DA D1D1IM D1D1WM D1D2DA
68*071d4279SBram Moolenaarsyn keyword sindaSubRoutine  D1D2WM D1DEG1 D1DEG2 D1DG1I D1IMD1
69*071d4279SBram Moolenaarsyn keyword sindaSubRoutine  D1IMIM D1IMWM D1M1DA D1M2MD D1M2WM
70*071d4279SBram Moolenaarsyn keyword sindaSubRoutine  D1MDG1 D1MDG2 D2D1WM D1DEG1 D2DEG2
71*071d4279SBram Moolenaarsyn keyword sindaSubRoutine  D2D2
72*071d4279SBram Moolenaar
73*071d4279SBram Moolenaarsyn keyword sindaIdentifier  BIV CAL DIM DIV DPM DPV DTV GEN PER PIV PIM
74*071d4279SBram Moolenaarsyn keyword sindaIdentifier  SIM SIV SPM SPV TVS TVD
75*071d4279SBram Moolenaar
76*071d4279SBram Moolenaar
77*071d4279SBram Moolenaar
78*071d4279SBram Moolenaar" Define matches for SINDA
79*071d4279SBram Moolenaarsyn match  sindaFortran     "^F[0-9 ]"me=e-1
80*071d4279SBram Moolenaarsyn match  sindaMotran      "^M[0-9 ]"me=e-1
81*071d4279SBram Moolenaar
82*071d4279SBram Moolenaarsyn match  sindaComment     "^C.*$"
83*071d4279SBram Moolenaarsyn match  sindaComment     "^R.*$"
84*071d4279SBram Moolenaarsyn match  sindaComment     "\$.*$"
85*071d4279SBram Moolenaar
86*071d4279SBram Moolenaarsyn match  sindaHeader      "^header[^,]*"
87*071d4279SBram Moolenaar
88*071d4279SBram Moolenaarsyn match  sindaIncludeFile "include \+[^ ]\+"hs=s+8 contains=fortranInclude
89*071d4279SBram Moolenaar
90*071d4279SBram Moolenaarsyn match  sindaMacro       "^PSTART"
91*071d4279SBram Moolenaarsyn match  sindaMacro       "^PSTOP"
92*071d4279SBram Moolenaarsyn match  sindaMacro       "^FAC"
93*071d4279SBram Moolenaar
94*071d4279SBram Moolenaarsyn match  sindaInteger     "-\=\<[0-9]*\>"
95*071d4279SBram Moolenaarsyn match  sindaFloat       "-\=\<[0-9]*\.[0-9]*"
96*071d4279SBram Moolenaarsyn match  sindaScientific  "-\=\<[0-9]*\.[0-9]*E[-+]\=[0-9]\+\>"
97*071d4279SBram Moolenaar
98*071d4279SBram Moolenaarsyn match  sindaEndData		 "^END OF DATA"
99*071d4279SBram Moolenaar
100*071d4279SBram Moolenaarif exists("thermal_todo")
101*071d4279SBram Moolenaar  execute 'syn match  sindaTodo ' . '"^'.thermal_todo.'.*$"'
102*071d4279SBram Moolenaarelse
103*071d4279SBram Moolenaar  syn match  sindaTodo     "^?.*$"
104*071d4279SBram Moolenaarendif
105*071d4279SBram Moolenaar
106*071d4279SBram Moolenaar
107*071d4279SBram Moolenaar
108*071d4279SBram Moolenaar" Define the default highlighting
109*071d4279SBram Moolenaar" For version 5.7 and earlier: only when not done already
110*071d4279SBram Moolenaar" For version 5.8 and later: only when an item doesn't have highlighting yet
111*071d4279SBram Moolenaarif version >= 508 || !exists("did_sinda_syntax_inits")
112*071d4279SBram Moolenaar  if version < 508
113*071d4279SBram Moolenaar    let did_sinda_syntax_inits = 1
114*071d4279SBram Moolenaar    command -nargs=+ HiLink hi link <args>
115*071d4279SBram Moolenaar  else
116*071d4279SBram Moolenaar    command -nargs=+ HiLink hi def link <args>
117*071d4279SBram Moolenaar  endif
118*071d4279SBram Moolenaar
119*071d4279SBram Moolenaar  HiLink sindaMacro		Macro
120*071d4279SBram Moolenaar  HiLink sindaOptions		Special
121*071d4279SBram Moolenaar  HiLink sindaRoutine		Type
122*071d4279SBram Moolenaar  HiLink sindaControl		Special
123*071d4279SBram Moolenaar  HiLink sindaSubRoutine	Function
124*071d4279SBram Moolenaar  HiLink sindaIdentifier	Identifier
125*071d4279SBram Moolenaar
126*071d4279SBram Moolenaar  HiLink sindaFortran		PreProc
127*071d4279SBram Moolenaar  HiLink sindaMotran		PreProc
128*071d4279SBram Moolenaar
129*071d4279SBram Moolenaar  HiLink sindaComment		Comment
130*071d4279SBram Moolenaar  HiLink sindaHeader		Typedef
131*071d4279SBram Moolenaar  HiLink sindaIncludeFile	Type
132*071d4279SBram Moolenaar  HiLink sindaInteger		Number
133*071d4279SBram Moolenaar  HiLink sindaFloat		Float
134*071d4279SBram Moolenaar  HiLink sindaScientific	Float
135*071d4279SBram Moolenaar
136*071d4279SBram Moolenaar  HiLink sindaEndData		Macro
137*071d4279SBram Moolenaar
138*071d4279SBram Moolenaar  HiLink sindaTodo		Todo
139*071d4279SBram Moolenaar
140*071d4279SBram Moolenaar  delcommand HiLink
141*071d4279SBram Moolenaarendif
142*071d4279SBram Moolenaar
143*071d4279SBram Moolenaar
144*071d4279SBram Moolenaarlet b:current_syntax = "sinda"
145*071d4279SBram Moolenaar
146*071d4279SBram Moolenaar" vim: ts=8 sw=2
147