" Vim syntax file " Language: TRASYS input file " Maintainer: Adrian Nagle, anagle@ball.com " Last Change: 2003 May 11 " Filenames: *.inp " URL: http://www.naglenet.org/vim/syntax/trasys.vim " MAIN URL: http://www.naglenet.org/vim/ " For version 5.x: Clear all syntax items " For version 6.x: Quit when a syntax file was already loaded if version < 600 syntax clear elseif exists("b:current_syntax") finish endif " Force free-form fortran format let fortran_free_source=1 " Load FORTRAN syntax file if version < 600 source :p:h/fortran.vim else runtime! syntax/fortran.vim endif unlet b:current_syntax " Ignore case syn case ignore " Define keywords for TRASYS syn keyword trasysOptions model rsrec info maxfl nogo dmpdoc syn keyword trasysOptions rsi rti rso rto bcdou cmerg emerg syn keyword trasysOptions user1 nnmin erplot syn keyword trasysSurface icsn tx ty tz rotx roty rotz inc bcsn syn keyword trasysSurface nnx nny nnz nnax nnr nnth unnx syn keyword trasysSurface unny unnz unnax unnr unnth type idupsf syn keyword trasysSurface imagsf act active com shade bshade axmin syn keyword trasysSurface axmax zmin zmax rmin rmax thmin thmin syn keyword trasysSurface thmax alpha emiss trani trans spri sprs syn keyword trasysSurface refno posit com dupbcs dimensions syn keyword trasysSurface dimension position prop surfn syn keyword trasysSurfaceType rect trap disk cyl cone sphere parab syn keyword trasysSurfaceType box5 box6 shpero tor ogiv elem tape poly syn keyword trasysSurfaceArgs ff di top bottom in out both no only syn keyword trasysArgs fig smn nodea zero only ir sol syn keyword trasysArgs both wband stepn initl syn keyword trasysOperations orbgen build "syn keyword trasysSubRoutine call syn keyword trasysSubRoutine chgblk ndata ndatas odata odatas syn keyword trasysSubRoutine pldta ffdata cmdata adsurf rbdata syn keyword trasysSubRoutine rtdata pffshd orbit1 orbit2 orient syn keyword trasysSubRoutine didt1 didt1s didt2 didt2s spin syn keyword trasysSubRoutine spinav dicomp distab drdata gbdata syn keyword trasysSubRoutine gbaprx rkdata rcdata aqdata stfaq syn keyword trasysSubRoutine qodata qoinit modar modpr modtr syn keyword trasysSubRoutine modprs modshd moddat rstoff rston syn keyword trasysSubRoutine rsmerg ffread diread ffusr1 diusr1 syn keyword trasysSubRoutine surfp didt3 didt3s romain stfrc syn keyword trasysSubRoutine rornt rocstr romove flxdata title syn keyword trassyPrcsrSegm nplot oplot plot cmcal ffcal rbcal syn keyword trassyPrcsrSegm rtcal dical drcal sfcal gbcal rccal syn keyword trassyPrcsrSegm rkcal aqcal qocal " Define matches for TRASYS syn match trasysOptions "list source" syn match trasysOptions "save source" syn match trasysOptions "no print" "syn match trasysSurface "^K *.* [^$]" "syn match trasysSurface "^D *[0-9]*\.[0-9]\+" "syn match trasysSurface "^I *.*[0-9]\+\.\=" "syn match trasysSurface "^N *[0-9]\+" "syn match trasysSurface "^M *[a-z[A-Z0-9]\+" "syn match trasysSurface "^B[C][S] *[a-zA-Z0-9]*" "syn match trasysSurface "^S *SURFN.*[0-9]" syn match trasysSurface "P[0-9]* *="he=e-1 syn match trasysIdentifier "^L "he=e-1 syn match trasysIdentifier "^K "he=e-1 syn match trasysIdentifier "^D "he=e-1 syn match trasysIdentifier "^I "he=e-1 syn match trasysIdentifier "^N "he=e-1 syn match trasysIdentifier "^M "he=e-1 syn match trasysIdentifier "^B[C][S]" syn match trasysIdentifier "^S "he=e-1 syn match trasysComment "^C.*$" syn match trasysComment "^R.*$" syn match trasysComment "\$.*$" syn match trasysHeader "^header[^,]*" syn match trasysMacro "^FAC" syn match trasysInteger "-\=\<[0-9]*\>" syn match trasysFloat "-\=\<[0-9]*\.[0-9]*" syn match trasysScientific "-\=\<[0-9]*\.[0-9]*E[-+]\=[0-9]\+\>" syn match trasysBlank "' \+'"hs=s+1,he=e-1 syn match trasysEndData "^END OF DATA" if exists("thermal_todo") execute 'syn match trasysTodo ' . '"^'.thermal_todo.'.*$"' else syn match trasysTodo "^?.*$" endif " Define regions for TRASYS syn region trasysComment matchgroup=trasysHeader start="^HEADER DOCUMENTATION DATA" end="^HEADER[^,]*" " Define synchronizing patterns for TRASYS syn sync maxlines=500 syn sync match trasysSync grouphere trasysComment "^HEADER DOCUMENTATION DATA" " Define the default highlighting " For version 5.7 and earlier: only when not done already " For version 5.8 and later: only when an item doesn't have highlighting yet if version >= 508 || !exists("did_trasys_syntax_inits") if version < 508 let did_trasys_syntax_inits = 1 command -nargs=+ HiLink hi link else command -nargs=+ HiLink hi def link endif HiLink trasysOptions Special HiLink trasysSurface Special HiLink trasysSurfaceType Constant HiLink trasysSurfaceArgs Constant HiLink trasysArgs Constant HiLink trasysOperations Statement HiLink trasysSubRoutine Statement HiLink trassyPrcsrSegm PreProc HiLink trasysIdentifier Identifier HiLink trasysComment Comment HiLink trasysHeader Typedef HiLink trasysMacro Macro HiLink trasysInteger Number HiLink trasysFloat Float HiLink trasysScientific Float HiLink trasysBlank SpecialChar HiLink trasysEndData Macro HiLink trasysTodo Todo delcommand HiLink endif let b:current_syntax = "trasys" " vim: ts=8 sw=2