📄 nastran.vim
字号:
" Vim syntax file" Language: NASTRAN input/DMAP" Maintainer: Tom Kowalski (tom.kowalski@mscsoftware.com)" Last change: April 27, 2001" Thanks to the authors and maintainers of fortran.vim." Since DMAP shares some traits with fortran, this syntax file" is based on the fortran.vim syntax file."----------------------------------------------------------------------" Remove any old syntax stuff hanging around"syn clearif version < 600 syntax clearelseif exists("b:current_syntax") finishendif" DMAP is not case dependentsyn case ignore""--------------------DMAP SYNTAX---------------------------------------"" -------Executive Modules and Statements"syn keyword nastranDmapexecmod call dbview delete end equiv equivx exitsyn keyword nastranDmapexecmod file message purge purgex return subdmapsyn keyword nastranDmapType typesyn keyword nastranDmapLabel go to gotosyn keyword nastranDmapRepeat if else elseif endif thensyn keyword nastranDmapRepeat do whilesyn region nastranDmapString start=+"+ end=+"+ onelinesyn region nastranDmapString start=+'+ end=+'+ oneline" If you don't like initial tabs in dmap (or at all)"syn match nastranDmapIniTab "^\t.*$""syn match nastranDmapTab "\t"" Any integersyn match nastranDmapNumber "-\=\<[0-9]\+\>"" floating point number, with dot, optional exponentsyn match nastranDmapFloat "\<[0-9]\+\.[0-9]*\([edED][-+]\=[0-9]\+\)\=\>"" floating point number, starting with a dot, optional exponentsyn match nastranDmapFloat "\.[0-9]\+\([edED][-+]\=[0-9]\+\)\=\>"" floating point number, without dot, with exponentsyn match nastranDmapFloat "\<[0-9]\+[edED][-+]\=[0-9]\+\>"syn match nastranDmapLogical "\(true\|false\)"syn match nastranDmapPreCondit "^#define\>"syn match nastranDmapPreCondit "^#include\>""" -------Comments may be contained in another line."syn match nastranDmapComment "^[\$].*$"syn match nastranDmapComment "\$.*$"syn match nastranDmapComment "^[\$].*$" containedsyn match nastranDmapComment "\$.*$" contained" Treat all past 72nd column as a comment. Do not work with tabs!" Breaks down when 72-73rd column is in another match (eg number or keyword)syn match nastranDmapComment "^.\{-72}.*$"lc=72 contained"" -------Utility Modules"syn keyword nastranDmapUtilmod append copy dbc dbdict dbdir dmin drms1syn keyword nastranDmapUtilmod dtiin eltprt ifp ifp1 inputt2 inputt4 lamxsyn keyword nastranDmapUtilmod matgen matgpr matmod matpch matprn matprtsyn keyword nastranDmapUtilmod modtrl mtrxin ofp output2 output4 paramsyn keyword nastranDmapUtilmod paraml paramr prtparam pvt scalarsyn keyword nastranDmapUtilmod seqp setval tabedit tabprt tabpt vec vecplotsyn keyword nastranDmapUtilmod xsort"" -------Matrix Modules"syn keyword nastranDmapMatmod add add5 cead dcmp decomp diagonal fbs mergesyn keyword nastranDmapMatmod mpyad norm read reigl smpyad solve solvitsyn keyword nastranDmapMatmod trnsp umerge umerge1 upartn dmiin partnsyn region nastranDmapMatmod start=+^ *[Dd][Mm][Ii]+ end=+[\/]+"" -------Implicit Functions"syn keyword nastranDmapImplicit abs acos acosh andl asin asinh atan atan2syn keyword nastranDmapImplicit atanh atanh2 char clen clock cmplx concat1syn keyword nastranDmapImplicit concat2 concat3 conjg cos cosh dble diagoffsyn keyword nastranDmapImplicit diagon dim dlablank dlxblank dprod eqvl expsyn keyword nastranDmapImplicit getdiag getsys ichar imag impl index indexstrsyn keyword nastranDmapImplicit int itol leq lge lgt lle llt lne log log10syn keyword nastranDmapImplicit logx ltoi mcgetsys mcputsys max min mod neqvlsyn keyword nastranDmapImplicit nint noop normal notl numeq numge numgt numlesyn keyword nastranDmapImplicit numlt numne orl pi precison putdiag putsyssyn keyword nastranDmapImplicit rand rdiagon real rtimtogo setcore sign sinsyn keyword nastranDmapImplicit sinh sngl sprod sqrt substrin tan tanhsyn keyword nastranDmapImplicit timetogo wlen xorl"""--------------------INPUT FILE SYNTAX---------------------------------------""" -------Nastran Statement"syn keyword nastranNastranCard nastran"" -------The File Management Section (FMS)"syn region nastranFMSCard start=+^ *[Aa][Cc][Qq][Uu][Ii]+ end=+$+ onelinesyn region nastranFMSCard start=+^ *[Aa][Ss][Ss][Ii][Gg]+ end=+$+ onelinesyn region nastranFMSCard start=+^ *[Cc][oO][Nn][Nn][Ee]+ end=+$+ onelinesyn region nastranFMSCard start=+^ *[Dd][Bb][Cc][Ll][Ee]+ end=+$+ onelinesyn region nastranFMSCard start=+^ *[Dd][Bb][Dd][Ii][Cc]+ end=+$+ onelinesyn region nastranFMSCard start=+^ *[Dd][Bb][Dd][Ii][Rr]+ end=+$+ onelinesyn region nastranFMSCard start=+^ *[Dd][Bb][Ff][Ii][Xx]+ end=+$+ onelinesyn region nastranFMSCard start=+^ *[Dd][Bb][Ll][Oo][Aa]+ end=+$+ onelinesyn region nastranFMSCard start=+^ *[Dd][Bb][Ll][Oo][Cc]+ end=+$+ onelinesyn region nastranFMSCard start=+^ *[Dd][Bb][Ss][Ee][Tt]+ end=+$+ onelinesyn region nastranFMSCard start=+^ *[Dd][Bb][Uu][Nn][Ll]+ end=+$+ onelinesyn region nastranFMSCard start=+^ *[Dd][Bb][Uu][Pp][Dd]+ end=+$+ onelinesyn region nastranFMSCard start=+^ *[Dd][Ee][Ff][Ii][Nn]+ end=+$+ onelinesyn region nastranFMSCard start=+^ *[Ee][Nn][Dd][Jj][Oo]+ end=+$+ onelinesyn region nastranFMSCard start=+^ *[Ee][Xx][Pp][Aa][Nn]+ end=+$+ onelinesyn region nastranFMSCard start=+^ *[Ii][Nn][Cc][Ll][Uu]+ end=+$+ onelinesyn region nastranFMSCard start=+^ *[Ii][Nn][Ii][Tt]+ end=+$+ onelinesyn region nastranFMSCard start=+^ *[Pp][Rr][Oo][Jj]+ end=+$+ onelinesyn region nastranFMSCard start=+^ *[Rr][Ee][Ss][Tt]+ end=+$+ onelinesyn match nastranDmapUtilmod "^ *[Rr][Ee][Ss][Tt][Aa].*,.*," contains=nastranDmapComment"" -------Executive Control Section"syn region nastranECSCard start=+^ *[Aa][Ll][Tt][Ee][Rr]+ end=+$+ onelinesyn region nastranECSCard start=+^ *[Aa][Pp][Pp]+ end=+$+ onelinesyn region nastranECSCard start=+^ *[Cc][Oo][Mm][Pp][Ii]+ end=+$+ onelinesyn region nastranECSCard start=+^ *[Dd][Ii][Aa][Gg] + end=+$+ onelinesyn region nastranECSCard start=+^ *[Ee][Cc][Hh][Oo]+ end=+$+ onelinesyn region nastranECSCard start=+^ *[Ee][Nn][Dd][Aa][Ll]+ end=+$+ onelinesyn region nastranECSCard start=+^ *[Ii][Dd]+ end=+$+ onelinesyn region nastranECSCard start=+^ *[Ii][Nn][Cc][Ll][Uu]+ end=+$+ onelinesyn region nastranECSCard start=+^ *[Ll][Ii][Nn][Kk]+ end=+$+ onelinesyn region nastranECSCard start=+^ *[Mm][Aa][Ll][Tt][Ee]+ end=+$+ onelinesyn region nastranECSCard start=+^ *[Ss][Oo][Ll] + end=+$+ onelinesyn region nastranECSCard start=+^ *[Tt][Ii][Mm][Ee]+ end=+$+ oneline"" -------Delimiters"syn match nastranDelimiter "[Cc][Ee][Nn][Dd]" containedsyn match nastranDelimiter "[Bb][Ee][Gg][Ii][Nn]" containedsyn match nastranDelimiter " *[Bb][Uu][Ll][Kk]" containedsyn match nastranDelimiter "[Ee][Nn][Dd] *[dD][Aa][Tt][Aa]" contained"" -------Case Control section"syn region nastranCC start=+^ *[Cc][Ee][Nn][Dd]+ end=+^ *[Bb][Ee][Gg][Ii][Nn]+ contains=nastranDelimiter,nastranBulkData,nastranDmapComment"" -------Bulk Data section"syn region nastranBulkData start=+ *[Bb][Uu][Ll][Kk] *$+ end=+^ [Ee][Nn][Dd] *[Dd]+ contains=nastranDelimiter,nastranDmapComment"" -------The following cards may appear in multiple sections of the file"syn keyword nastranUtilCard ECHOON ECHOOFF INCLUDE PARAMif version >= 508 || !exists("did_nastran_syntax_inits") if version < 508 let did_nastran_syntax_inits = 1 command -nargs=+ HiLink hi link <args> else command -nargs=+ HiLink hi link <args> endif " The default methods for highlighting. Can be overridden later HiLink nastranDmapexecmod Statement HiLink nastranDmapType Type HiLink nastranDmapPreCondit Error HiLink nastranDmapUtilmod PreProc HiLink nastranDmapMatmod nastranDmapUtilmod HiLink nastranDmapString String HiLink nastranDmapNumber Constant HiLink nastranDmapFloat nastranDmapNumber HiLink nastranDmapInitTab nastranDmapNumber HiLink nastranDmapTab nastranDmapNumber HiLink nastranDmapLogical nastranDmapExecmod HiLink nastranDmapImplicit Identifier HiLink nastranDmapComment Comment HiLink nastranDmapRepeat nastranDmapexecmod HiLink nastranNastranCard nastranDmapPreCondit HiLink nastranECSCard nastranDmapUtilmod HiLink nastranFMSCard nastranNastranCard HiLink nastranCC nastranDmapexecmod HiLink nastranDelimiter Special HiLink nastranBulkData nastranDmapType HiLink nastranUtilCard nastranDmapexecmod delcommand HiLinkendiflet b:current_syntax = "nastran""EOF vim: ts=8 noet tw=120 sw=8 sts=0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -