tak.vim (2920B)
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 12 if exists("b:current_syntax") 13 finish 14 endif 15 16 17 18 " Ignore case 19 syn case ignore 20 21 22 23 " 24 " 25 " Begin syntax definitions for tak input file. 26 " 27 28 " Force free-form fortran format 29 let fortran_free_source=1 30 31 " Load FORTRAN syntax file 32 runtime! syntax/fortran.vim 33 unlet b:current_syntax 34 35 36 37 " Define keywords for TAK and TAKOUT 38 syn keyword takOptions AUTODAMP CPRINT CSGDUMP GPRINT HPRINT LODTMP 39 syn keyword takOptions LOGIC LPRINT NCVPRINT PLOTQ QPRINT QDUMP 40 syn keyword takOptions SUMMARY SOLRTN UID DICTIONARIES 41 42 syn keyword takRoutine SSITER FWDWRD FWDBCK BCKWRD 43 44 syn keyword takControl ABSZRO BACKUP DAMP DTIMEI DTIMEL DTIMEH IFC 45 syn keyword takControl MAXTEMP NLOOPS NLOOPT NODELIST OUTPUT PLOT 46 syn keyword takControl SCALE SIGMA SSCRIT TIMEND TIMEN TIMEO TRCRIT 47 syn keyword takControl PLOT 48 49 syn keyword takSolids PLATE CYL 50 syn keyword takSolidsArg ID MATNAM NTYPE TEMP XL YL ZL ISTRN ISTRG NNX 51 syn keyword takSolidsArg NNY NNZ INCX INCY INCZ IAK IAC DIFF ARITH BOUN 52 syn keyword takSolidsArg RMIN RMAX AXMAX NNR NNTHETA INCR INCTHETA END 53 54 syn case ignore 55 56 syn keyword takMacro fac pstart pstop 57 syn keyword takMacro takcommon fstart fstop 58 59 syn keyword takIdentifier flq flx gen ncv per sim siv stf stv tvd tvs 60 syn keyword takIdentifier tvt pro thm 61 62 63 64 " Define matches for TAK 65 syn match takFortran "^F[0-9 ]"me=e-1 66 syn match takMotran "^M[0-9 ]"me=e-1 67 68 syn match takComment "^C.*$" 69 syn match takComment "^R.*$" 70 syn match takComment "\$.*$" 71 72 syn match takHeader "^header[^,]*" 73 74 syn match takIncludeFile "include \+[^ ]\+"hs=s+8 contains=fortranInclude 75 76 syn match takInteger "-\=\<[0-9]*\>" 77 syn match takFloat "-\=\<[0-9]*\.[0-9]*" 78 syn match takScientific "-\=\<[0-9]*\.[0-9]*E[-+]\=[0-9]\+\>" 79 80 syn match takEndData "END OF DATA" 81 82 if exists("thermal_todo") 83 execute 'syn match takTodo ' . '"^'.thermal_todo.'.*$"' 84 else 85 syn match takTodo "^?.*$" 86 endif 87 88 89 90 " Define the default highlighting 91 " Only when an item doesn't have highlighting yet 92 93 hi def link takMacro Macro 94 hi def link takOptions Special 95 hi def link takRoutine Type 96 hi def link takControl Special 97 hi def link takSolids Special 98 hi def link takSolidsArg Statement 99 hi def link takIdentifier Identifier 100 101 hi def link takFortran PreProc 102 hi def link takMotran PreProc 103 104 hi def link takComment Comment 105 hi def link takHeader Typedef 106 hi def link takIncludeFile Type 107 hi def link takInteger Number 108 hi def link takFloat Float 109 hi def link takScientific Float 110 111 hi def link takEndData Macro 112 113 hi def link takTodo Todo 114 115 116 117 let b:current_syntax = "tak" 118 119 " vim: ts=8 sw=2