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