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