1" Vim syntax file 2" Language: TAK2, TAK3, TAK2000 thermal modeling input file 3" Maintainer: Adrian Nagle, anagle@ball.com 4" Last Change: 2003 May 11 5" Filenames: *.tak 6" URL: http://www.naglenet.org/vim/syntax/tak.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 tak input file. 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 TAK and TAKOUT 38syn keyword takOptions AUTODAMP CPRINT CSGDUMP GPRINT HPRINT LODTMP 39syn keyword takOptions LOGIC LPRINT NCVPRINT PLOTQ QPRINT QDUMP 40syn keyword takOptions SUMMARY SOLRTN UID DICTIONARIES 41 42syn keyword takRoutine SSITER FWDWRD FWDBCK BCKWRD 43 44syn keyword takControl ABSZRO BACKUP DAMP DTIMEI DTIMEL DTIMEH IFC 45syn keyword takControl MAXTEMP NLOOPS NLOOPT NODELIST OUTPUT PLOT 46syn keyword takControl SCALE SIGMA SSCRIT TIMEND TIMEN TIMEO TRCRIT 47syn keyword takControl PLOT 48 49syn keyword takSolids PLATE CYL 50syn keyword takSolidsArg ID MATNAM NTYPE TEMP XL YL ZL ISTRN ISTRG NNX 51syn keyword takSolidsArg NNY NNZ INCX INCY INCZ IAK IAC DIFF ARITH BOUN 52syn keyword takSolidsArg RMIN RMAX AXMAX NNR NNTHETA INCR INCTHETA END 53 54syn case ignore 55 56syn keyword takMacro fac pstart pstop 57syn keyword takMacro takcommon fstart fstop 58 59syn keyword takIdentifier flq flx gen ncv per sim siv stf stv tvd tvs 60syn keyword takIdentifier tvt pro thm 61 62 63 64" Define matches for TAK 65syn match takFortran "^F[0-9 ]"me=e-1 66syn match takMotran "^M[0-9 ]"me=e-1 67 68syn match takComment "^C.*$" 69syn match takComment "^R.*$" 70syn match takComment "\$.*$" 71 72syn match takHeader "^header[^,]*" 73 74syn match takIncludeFile "include \+[^ ]\+"hs=s+8 contains=fortranInclude 75 76syn match takInteger "-\=\<[0-9]*\>" 77syn match takFloat "-\=\<[0-9]*\.[0-9]*" 78syn match takScientific "-\=\<[0-9]*\.[0-9]*E[-+]\=[0-9]\+\>" 79 80syn match takEndData "END OF DATA" 81 82if exists("thermal_todo") 83 execute 'syn match takTodo ' . '"^'.thermal_todo.'.*$"' 84else 85 syn match takTodo "^?.*$" 86endif 87 88 89 90" Define the default highlighting 91" Only when an item doesn't have highlighting yet 92 93hi def link takMacro Macro 94hi def link takOptions Special 95hi def link takRoutine Type 96hi def link takControl Special 97hi def link takSolids Special 98hi def link takSolidsArg Statement 99hi def link takIdentifier Identifier 100 101hi def link takFortran PreProc 102hi def link takMotran PreProc 103 104hi def link takComment Comment 105hi def link takHeader Typedef 106hi def link takIncludeFile Type 107hi def link takInteger Number 108hi def link takFloat Float 109hi def link takScientific Float 110 111hi def link takEndData Macro 112 113hi def link takTodo Todo 114 115 116 117let b:current_syntax = "tak" 118 119" vim: ts=8 sw=2 120