1071d4279SBram Moolenaar" Vim syntax file 2071d4279SBram Moolenaar" Language: TAK2, TAK3, TAK2000 thermal modeling input file 3071d4279SBram Moolenaar" Maintainer: Adrian Nagle, [email protected] 4071d4279SBram Moolenaar" Last Change: 2003 May 11 5071d4279SBram Moolenaar" Filenames: *.tak 6071d4279SBram Moolenaar" URL: http://www.naglenet.org/vim/syntax/tak.vim 7071d4279SBram Moolenaar" MAIN URL: http://www.naglenet.org/vim/ 8071d4279SBram Moolenaar 9071d4279SBram Moolenaar 10071d4279SBram Moolenaar 1189bcfda6SBram Moolenaar" quit when a syntax file was already loaded 1289bcfda6SBram Moolenaarif exists("b:current_syntax") 13071d4279SBram Moolenaar finish 14071d4279SBram Moolenaarendif 15071d4279SBram Moolenaar 16071d4279SBram Moolenaar 17071d4279SBram Moolenaar 18071d4279SBram Moolenaar" Ignore case 19071d4279SBram Moolenaarsyn case ignore 20071d4279SBram Moolenaar 21071d4279SBram Moolenaar 22071d4279SBram Moolenaar 23071d4279SBram Moolenaar" 24071d4279SBram Moolenaar" 25071d4279SBram Moolenaar" Begin syntax definitions for tak input file. 26071d4279SBram Moolenaar" 27071d4279SBram Moolenaar 28071d4279SBram Moolenaar" Force free-form fortran format 29071d4279SBram Moolenaarlet fortran_free_source=1 30071d4279SBram Moolenaar 31071d4279SBram Moolenaar" Load FORTRAN syntax file 32071d4279SBram Moolenaarruntime! syntax/fortran.vim 33071d4279SBram Moolenaarunlet b:current_syntax 34071d4279SBram Moolenaar 35071d4279SBram Moolenaar 36071d4279SBram Moolenaar 37071d4279SBram Moolenaar" Define keywords for TAK and TAKOUT 38071d4279SBram Moolenaarsyn keyword takOptions AUTODAMP CPRINT CSGDUMP GPRINT HPRINT LODTMP 39071d4279SBram Moolenaarsyn keyword takOptions LOGIC LPRINT NCVPRINT PLOTQ QPRINT QDUMP 40071d4279SBram Moolenaarsyn keyword takOptions SUMMARY SOLRTN UID DICTIONARIES 41071d4279SBram Moolenaar 42071d4279SBram Moolenaarsyn keyword takRoutine SSITER FWDWRD FWDBCK BCKWRD 43071d4279SBram Moolenaar 44071d4279SBram Moolenaarsyn keyword takControl ABSZRO BACKUP DAMP DTIMEI DTIMEL DTIMEH IFC 45071d4279SBram Moolenaarsyn keyword takControl MAXTEMP NLOOPS NLOOPT NODELIST OUTPUT PLOT 46071d4279SBram Moolenaarsyn keyword takControl SCALE SIGMA SSCRIT TIMEND TIMEN TIMEO TRCRIT 47071d4279SBram Moolenaarsyn keyword takControl PLOT 48071d4279SBram Moolenaar 49071d4279SBram Moolenaarsyn keyword takSolids PLATE CYL 50071d4279SBram Moolenaarsyn keyword takSolidsArg ID MATNAM NTYPE TEMP XL YL ZL ISTRN ISTRG NNX 51071d4279SBram Moolenaarsyn keyword takSolidsArg NNY NNZ INCX INCY INCZ IAK IAC DIFF ARITH BOUN 52071d4279SBram Moolenaarsyn keyword takSolidsArg RMIN RMAX AXMAX NNR NNTHETA INCR INCTHETA END 53071d4279SBram Moolenaar 54071d4279SBram Moolenaarsyn case ignore 55071d4279SBram Moolenaar 56071d4279SBram Moolenaarsyn keyword takMacro fac pstart pstop 57071d4279SBram Moolenaarsyn keyword takMacro takcommon fstart fstop 58071d4279SBram Moolenaar 59071d4279SBram Moolenaarsyn keyword takIdentifier flq flx gen ncv per sim siv stf stv tvd tvs 60071d4279SBram Moolenaarsyn keyword takIdentifier tvt pro thm 61071d4279SBram Moolenaar 62071d4279SBram Moolenaar 63071d4279SBram Moolenaar 64071d4279SBram Moolenaar" Define matches for TAK 65071d4279SBram Moolenaarsyn match takFortran "^F[0-9 ]"me=e-1 66071d4279SBram Moolenaarsyn match takMotran "^M[0-9 ]"me=e-1 67071d4279SBram Moolenaar 68071d4279SBram Moolenaarsyn match takComment "^C.*$" 69071d4279SBram Moolenaarsyn match takComment "^R.*$" 70071d4279SBram Moolenaarsyn match takComment "\$.*$" 71071d4279SBram Moolenaar 72071d4279SBram Moolenaarsyn match takHeader "^header[^,]*" 73071d4279SBram Moolenaar 74071d4279SBram Moolenaarsyn match takIncludeFile "include \+[^ ]\+"hs=s+8 contains=fortranInclude 75071d4279SBram Moolenaar 76071d4279SBram Moolenaarsyn match takInteger "-\=\<[0-9]*\>" 77071d4279SBram Moolenaarsyn match takFloat "-\=\<[0-9]*\.[0-9]*" 78071d4279SBram Moolenaarsyn match takScientific "-\=\<[0-9]*\.[0-9]*E[-+]\=[0-9]\+\>" 79071d4279SBram Moolenaar 80071d4279SBram Moolenaarsyn match takEndData "END OF DATA" 81071d4279SBram Moolenaar 82071d4279SBram Moolenaarif exists("thermal_todo") 83071d4279SBram Moolenaar execute 'syn match takTodo ' . '"^'.thermal_todo.'.*$"' 84071d4279SBram Moolenaarelse 85071d4279SBram Moolenaar syn match takTodo "^?.*$" 86071d4279SBram Moolenaarendif 87071d4279SBram Moolenaar 88071d4279SBram Moolenaar 89071d4279SBram Moolenaar 90071d4279SBram Moolenaar" Define the default highlighting 9189bcfda6SBram Moolenaar" Only when an item doesn't have highlighting yet 92071d4279SBram Moolenaar 93*f37506f6SBram Moolenaarhi def link takMacro Macro 94*f37506f6SBram Moolenaarhi def link takOptions Special 95*f37506f6SBram Moolenaarhi def link takRoutine Type 96*f37506f6SBram Moolenaarhi def link takControl Special 97*f37506f6SBram Moolenaarhi def link takSolids Special 98*f37506f6SBram Moolenaarhi def link takSolidsArg Statement 99*f37506f6SBram Moolenaarhi def link takIdentifier Identifier 100071d4279SBram Moolenaar 101*f37506f6SBram Moolenaarhi def link takFortran PreProc 102*f37506f6SBram Moolenaarhi def link takMotran PreProc 103071d4279SBram Moolenaar 104*f37506f6SBram Moolenaarhi def link takComment Comment 105*f37506f6SBram Moolenaarhi def link takHeader Typedef 106*f37506f6SBram Moolenaarhi def link takIncludeFile Type 107*f37506f6SBram Moolenaarhi def link takInteger Number 108*f37506f6SBram Moolenaarhi def link takFloat Float 109*f37506f6SBram Moolenaarhi def link takScientific Float 110071d4279SBram Moolenaar 111*f37506f6SBram Moolenaarhi def link takEndData Macro 112071d4279SBram Moolenaar 113*f37506f6SBram Moolenaarhi def link takTodo Todo 114071d4279SBram Moolenaar 115071d4279SBram Moolenaar 116071d4279SBram Moolenaar 117071d4279SBram Moolenaarlet b:current_syntax = "tak" 118071d4279SBram Moolenaar 119071d4279SBram Moolenaar" vim: ts=8 sw=2 120