neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

nastran.vim (8504B)


      1 " Vim syntax file
      2 " Language: NASTRAN input/DMAP
      3 " Maintainer: Tom Kowalski <trk@schaefferas.com>
      4 " Last change: April 27, 2001
      5 "  Thanks to the authors and maintainers of fortran.vim.
      6 "		Since DMAP shares some traits with fortran, this syntax file
      7 "		is based on the fortran.vim syntax file.
      8 "----------------------------------------------------------------------
      9 " quit when a syntax file was already loaded
     10 if exists("b:current_syntax")
     11  finish
     12 endif
     13 " DMAP is not case dependent
     14 syn case ignore
     15 "
     16 "--------------------DMAP SYNTAX---------------------------------------
     17 "
     18 " -------Executive Modules and Statements
     19 "
     20 syn keyword nastranDmapexecmod	       call dbview delete end equiv equivx exit
     21 syn keyword nastranDmapexecmod	       file message purge purgex return subdmap
     22 syn keyword nastranDmapType	       type
     23 syn keyword nastranDmapLabel  go to goto
     24 syn keyword nastranDmapRepeat  if else elseif endif then
     25 syn keyword nastranDmapRepeat  do while
     26 syn region nastranDmapString  start=+"+ end=+"+ oneline
     27 syn region nastranDmapString  start=+'+ end=+'+ oneline
     28 " If you don't like initial tabs in dmap (or at all)
     29 "syn match nastranDmapIniTab  "^\t.*$"
     30 "syn match nastranDmapTab   "\t"
     31 
     32 " Any integer
     33 syn match nastranDmapNumber  "-\=\<[0-9]\+\>"
     34 " floating point number, with dot, optional exponent
     35 syn match nastranDmapFloat  "\<[0-9]\+\.[0-9]*\([edED][-+]\=[0-9]\+\)\=\>"
     36 " floating point number, starting with a dot, optional exponent
     37 syn match nastranDmapFloat  "\.[0-9]\+\([edED][-+]\=[0-9]\+\)\=\>"
     38 " floating point number, without dot, with exponent
     39 syn match nastranDmapFloat  "\<[0-9]\+[edED][-+]\=[0-9]\+\>"
     40 
     41 syn match nastranDmapLogical "\(true\|false\)"
     42 
     43 syn match nastranDmapPreCondit  "^#define\>"
     44 syn match nastranDmapPreCondit  "^#include\>"
     45 "
     46 " -------Comments may be contained in another line.
     47 "
     48 syn match nastranDmapComment "^[\$].*$"
     49 syn match nastranDmapComment "\$.*$"
     50 syn match nastranDmapComment "^[\$].*$" contained
     51 syn match nastranDmapComment "\$.*$"  contained
     52 " Treat all past 72nd column as a comment. Do not work with tabs!
     53 " Breaks down when 72-73rd column is in another match (eg number or keyword)
     54 syn match  nastranDmapComment  "^.\{-72}.*$"lc=72 contained
     55 
     56 "
     57 " -------Utility Modules
     58 "
     59 syn keyword nastranDmapUtilmod	       append copy dbc dbdict dbdir dmin drms1
     60 syn keyword nastranDmapUtilmod	       dtiin eltprt ifp ifp1 inputt2 inputt4 lamx
     61 syn keyword nastranDmapUtilmod	       matgen matgpr matmod matpch matprn matprt
     62 syn keyword nastranDmapUtilmod	       modtrl mtrxin ofp output2 output4 param
     63 syn keyword nastranDmapUtilmod	       paraml paramr prtparam pvt scalar
     64 syn keyword nastranDmapUtilmod	       seqp setval tabedit tabprt tabpt vec vecplot
     65 syn keyword nastranDmapUtilmod	       xsort
     66 "
     67 " -------Matrix Modules
     68 "
     69 syn keyword nastranDmapMatmod	       add add5 cead dcmp decomp diagonal fbs merge
     70 syn keyword nastranDmapMatmod	       mpyad norm read reigl smpyad solve solvit
     71 syn keyword nastranDmapMatmod	       trnsp umerge umerge1 upartn dmiin partn
     72 syn region  nastranDmapMatmod	       start=+^ *[Dd][Mm][Ii]+ end=+[\/]+
     73 "
     74 " -------Implicit Functions
     75 "
     76 syn keyword nastranDmapImplicit abs acos acosh andl asin asinh atan atan2
     77 syn keyword nastranDmapImplicit atanh atanh2 char clen clock cmplx concat1
     78 syn keyword nastranDmapImplicit concat2 concat3 conjg cos cosh dble diagoff
     79 syn keyword nastranDmapImplicit diagon dim dlablank dlxblank dprod eqvl exp
     80 syn keyword nastranDmapImplicit getdiag getsys ichar imag impl index indexstr
     81 syn keyword nastranDmapImplicit int itol leq lge lgt lle llt lne log log10
     82 syn keyword nastranDmapImplicit logx ltoi mcgetsys mcputsys max min mod neqvl
     83 syn keyword nastranDmapImplicit nint noop normal notl numeq numge numgt numle
     84 syn keyword nastranDmapImplicit numlt numne orl pi precison putdiag putsys
     85 syn keyword nastranDmapImplicit rand rdiagon real rtimtogo setcore sign sin
     86 syn keyword nastranDmapImplicit sinh sngl sprod sqrt substrin tan tanh
     87 syn keyword nastranDmapImplicit timetogo wlen xorl
     88 "
     89 "
     90 "--------------------INPUT FILE SYNTAX---------------------------------------
     91 "
     92 "
     93 " -------Nastran Statement
     94 "
     95 syn keyword nastranNastranCard		 nastran
     96 "
     97 " -------The File Management Section (FMS)
     98 "
     99 syn region nastranFMSCard start=+^ *[Aa][Cc][Qq][Uu][Ii]+ end=+$+  oneline
    100 syn region nastranFMSCard start=+^ *[Aa][Ss][Ss][Ii][Gg]+ end=+$+  oneline
    101 syn region nastranFMSCard start=+^ *[Cc][oO][Nn][Nn][Ee]+ end=+$+  oneline
    102 syn region nastranFMSCard start=+^ *[Dd][Bb][Cc][Ll][Ee]+ end=+$+  oneline
    103 syn region nastranFMSCard start=+^ *[Dd][Bb][Dd][Ii][Cc]+ end=+$+  oneline
    104 syn region nastranFMSCard start=+^ *[Dd][Bb][Dd][Ii][Rr]+ end=+$+  oneline
    105 syn region nastranFMSCard start=+^ *[Dd][Bb][Ff][Ii][Xx]+ end=+$+  oneline
    106 syn region nastranFMSCard start=+^ *[Dd][Bb][Ll][Oo][Aa]+ end=+$+  oneline
    107 syn region nastranFMSCard start=+^ *[Dd][Bb][Ll][Oo][Cc]+ end=+$+  oneline
    108 syn region nastranFMSCard start=+^ *[Dd][Bb][Ss][Ee][Tt]+ end=+$+  oneline
    109 syn region nastranFMSCard start=+^ *[Dd][Bb][Uu][Nn][Ll]+ end=+$+  oneline
    110 syn region nastranFMSCard start=+^ *[Dd][Bb][Uu][Pp][Dd]+ end=+$+  oneline
    111 syn region nastranFMSCard start=+^ *[Dd][Ee][Ff][Ii][Nn]+ end=+$+  oneline
    112 syn region nastranFMSCard start=+^ *[Ee][Nn][Dd][Jj][Oo]+ end=+$+  oneline
    113 syn region nastranFMSCard start=+^ *[Ee][Xx][Pp][Aa][Nn]+ end=+$+  oneline
    114 syn region nastranFMSCard start=+^ *[Ii][Nn][Cc][Ll][Uu]+ end=+$+  oneline
    115 syn region nastranFMSCard start=+^ *[Ii][Nn][Ii][Tt]+ end=+$+  oneline
    116 syn region nastranFMSCard start=+^ *[Pp][Rr][Oo][Jj]+ end=+$+  oneline
    117 syn region nastranFMSCard start=+^ *[Rr][Ee][Ss][Tt]+ end=+$+  oneline
    118 syn match   nastranDmapUtilmod	   "^ *[Rr][Ee][Ss][Tt][Aa].*,.*," contains=nastranDmapComment
    119 "
    120 " -------Executive Control Section
    121 "
    122 syn region nastranECSCard start=+^ *[Aa][Ll][Tt][Ee][Rr]+ end=+$+  oneline
    123 syn region nastranECSCard start=+^ *[Aa][Pp][Pp]+ end=+$+  oneline
    124 syn region nastranECSCard start=+^ *[Cc][Oo][Mm][Pp][Ii]+ end=+$+  oneline
    125 syn region nastranECSCard start=+^ *[Dd][Ii][Aa][Gg] + end=+$+  oneline
    126 syn region nastranECSCard start=+^ *[Ee][Cc][Hh][Oo]+ end=+$+  oneline
    127 syn region nastranECSCard start=+^ *[Ee][Nn][Dd][Aa][Ll]+ end=+$+  oneline
    128 syn region nastranECSCard start=+^ *[Ii][Dd]+ end=+$+  oneline
    129 syn region nastranECSCard start=+^ *[Ii][Nn][Cc][Ll][Uu]+ end=+$+  oneline
    130 syn region nastranECSCard start=+^ *[Ll][Ii][Nn][Kk]+ end=+$+  oneline
    131 syn region nastranECSCard start=+^ *[Mm][Aa][Ll][Tt][Ee]+ end=+$+  oneline
    132 syn region nastranECSCard start=+^ *[Ss][Oo][Ll] + end=+$+  oneline
    133 syn region nastranECSCard start=+^ *[Tt][Ii][Mm][Ee]+ end=+$+  oneline
    134 "
    135 " -------Delimiters
    136 "
    137 syn match nastranDelimiter "[Cc][Ee][Nn][Dd]" contained
    138 syn match nastranDelimiter "[Bb][Ee][Gg][Ii][Nn]" contained
    139 syn match nastranDelimiter " *[Bb][Uu][Ll][Kk]" contained
    140 syn match nastranDelimiter "[Ee][Nn][Dd] *[dD][Aa][Tt][Aa]" contained
    141 "
    142 " -------Case Control section
    143 "
    144 syn region nastranCC start=+^ *[Cc][Ee][Nn][Dd]+ end=+^ *[Bb][Ee][Gg][Ii][Nn]+ contains=nastranDelimiter,nastranBulkData,nastranDmapComment
    145 
    146 "
    147 " -------Bulk Data section
    148 "
    149 syn region nastranBulkData start=+ *[Bb][Uu][Ll][Kk] *$+ end=+^ [Ee][Nn][Dd] *[Dd]+ contains=nastranDelimiter,nastranDmapComment
    150 "
    151 " -------The following cards may appear in multiple sections of the file
    152 "
    153 syn keyword nastranUtilCard ECHOON ECHOOFF INCLUDE PARAM
    154 
    155 
    156 " The default methods for highlighting.  Can be overridden later
    157 hi def link nastranDmapexecmod	     Statement
    158 hi def link nastranDmapType	     Type
    159 hi def link nastranDmapPreCondit	     Error
    160 hi def link nastranDmapUtilmod	     PreProc
    161 hi def link nastranDmapMatmod	     nastranDmapUtilmod
    162 hi def link nastranDmapString	     String
    163 hi def link nastranDmapNumber	     Constant
    164 hi def link nastranDmapFloat	     nastranDmapNumber
    165 hi def link nastranDmapInitTab	     nastranDmapNumber
    166 hi def link nastranDmapTab		     nastranDmapNumber
    167 hi def link nastranDmapLogical	     nastranDmapExecmod
    168 hi def link nastranDmapImplicit	     Identifier
    169 hi def link nastranDmapComment	     Comment
    170 hi def link nastranDmapRepeat	     nastranDmapexecmod
    171 hi def link nastranNastranCard	     nastranDmapPreCondit
    172 hi def link nastranECSCard		     nastranDmapUtilmod
    173 hi def link nastranFMSCard		     nastranNastranCard
    174 hi def link nastranCC		     nastranDmapexecmod
    175 hi def link nastranDelimiter	     Special
    176 hi def link nastranBulkData	     nastranDmapType
    177 hi def link nastranUtilCard	     nastranDmapexecmod
    178 
    179 let b:current_syntax = "nastran"
    180 
    181 "EOF vim: ts=8 noet tw=120 sw=8 sts=0