| " 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 <sfile>: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 <args> |
| else |
| command -nargs=+ HiLink hi def link <args> |
| 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 |