1071d4279SBram Moolenaar" Vim syntax file 2071d4279SBram Moolenaar" Language: xmath (a simulation tool) 3*1d9215b9SBram Moolenaar" Maintainer: Charles E. Campbell <[email protected]> 4f37506f6SBram Moolenaar" Last Change: Aug 31, 2016 5*1d9215b9SBram Moolenaar" Version: 10 6e2719096SBram Moolenaar" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_XMATH 7071d4279SBram Moolenaar 8f37506f6SBram Moolenaar" For version 5.x: Clear all syntax items 9f37506f6SBram Moolenaar" For version 6.x: Quit when a syntax file was already loaded 1089bcfda6SBram Moolenaarif exists("b:current_syntax") 11071d4279SBram Moolenaar finish 12071d4279SBram Moolenaarendif 13071d4279SBram Moolenaar 14071d4279SBram Moolenaar" parenthesis sanity checker 15071d4279SBram Moolenaarsyn region xmathZone matchgroup=Delimiter start="(" matchgroup=Delimiter end=")" transparent contains=ALLBUT,xmathError,xmathBraceError,xmathCurlyError 16071d4279SBram Moolenaarsyn region xmathZone matchgroup=Delimiter start="{" matchgroup=Delimiter end="}" transparent contains=ALLBUT,xmathError,xmathBraceError,xmathParenError 17071d4279SBram Moolenaarsyn region xmathZone matchgroup=Delimiter start="\[" matchgroup=Delimiter end="]" transparent contains=ALLBUT,xmathError,xmathCurlyError,xmathParenError 18071d4279SBram Moolenaarsyn match xmathError "[)\]}]" 19071d4279SBram Moolenaarsyn match xmathBraceError "[)}]" contained 20071d4279SBram Moolenaarsyn match xmathCurlyError "[)\]]" contained 21071d4279SBram Moolenaarsyn match xmathParenError "[\]}]" contained 22071d4279SBram Moolenaarsyn match xmathComma "[,;:]" 23071d4279SBram Moolenaarsyn match xmathComma "\.\.\.$" 24071d4279SBram Moolenaar 25071d4279SBram Moolenaar" A bunch of useful xmath keywords 26071d4279SBram Moolenaarsyn case ignore 27071d4279SBram Moolenaarsyn keyword xmathFuncCmd function endfunction command endcommand 28071d4279SBram Moolenaarsyn keyword xmathStatement abort beep debug default define 29071d4279SBram Moolenaarsyn keyword xmathStatement execute exit pause return undefine 30071d4279SBram Moolenaarsyn keyword xmathConditional if else elseif endif 31071d4279SBram Moolenaarsyn keyword xmathRepeat while for endwhile endfor 32071d4279SBram Moolenaarsyn keyword xmathCmd anigraph deletedatastore keep renamedatastore 33071d4279SBram Moolenaarsyn keyword xmathCmd autocode deletestd linkhyper renamestd 34071d4279SBram Moolenaarsyn keyword xmathCmd build deletesuperblock linksim renamesuperblock 35071d4279SBram Moolenaarsyn keyword xmathCmd comment deletetransition listusertype save 36071d4279SBram Moolenaarsyn keyword xmathCmd copydatastore deleteusertype load sbadisplay 37071d4279SBram Moolenaarsyn keyword xmathCmd copystd detailmodel lock set 38071d4279SBram Moolenaarsyn keyword xmathCmd copysuperblock display minmax_display setsbdefault 39071d4279SBram Moolenaarsyn keyword xmathCmd createblock documentit modifyblock show 40071d4279SBram Moolenaarsyn keyword xmathCmd createbubble editcatalog modifybubble showlicense 41071d4279SBram Moolenaarsyn keyword xmathCmd createconnection erase modifystd showsbdefault 42071d4279SBram Moolenaarsyn keyword xmathCmd creatertf expandsuperbubble modifysuperblock stop 43071d4279SBram Moolenaarsyn keyword xmathCmd createstd for modifytransition stopcosim 44071d4279SBram Moolenaarsyn keyword xmathCmd createsuperblock go modifyusertype syntax 45071d4279SBram Moolenaarsyn keyword xmathCmd createsuperbubble goto new unalias 46071d4279SBram Moolenaarsyn keyword xmathCmd createtransition hardcopy next unlock 47071d4279SBram Moolenaarsyn keyword xmathCmd createusertype help polargraph usertype 48071d4279SBram Moolenaarsyn keyword xmathCmd delete hyperbuild print whatis 49071d4279SBram Moolenaarsyn keyword xmathCmd deleteblock if printmodel while 50071d4279SBram Moolenaarsyn keyword xmathCmd deletebubble ifilter quit who 51071d4279SBram Moolenaarsyn keyword xmathCmd deleteconnection ipcwc remove xgraph 52071d4279SBram Moolenaar 53071d4279SBram Moolenaarsyn keyword xmathFunc abcd eye irea querystdoptions 54071d4279SBram Moolenaarsyn keyword xmathFunc abs eyepattern is querysuperblock 55071d4279SBram Moolenaarsyn keyword xmathFunc acos feedback ISID querysuperblockopt 56071d4279SBram Moolenaarsyn keyword xmathFunc acosh fft ISID Models querytransition 57071d4279SBram Moolenaarsyn keyword xmathFunc adconversion fftpdm kronecker querytransitionopt 58071d4279SBram Moolenaarsyn keyword xmathFunc afeedback filter length qz 59071d4279SBram Moolenaarsyn keyword xmathFunc all find limit rampinvar 60071d4279SBram Moolenaarsyn keyword xmathFunc ambiguity firparks lin random 61071d4279SBram Moolenaarsyn keyword xmathFunc amdemod firremez lin30 randpdm 62071d4279SBram Moolenaarsyn keyword xmathFunc analytic firwind linearfm randpert 63071d4279SBram Moolenaarsyn keyword xmathFunc analyze fmdemod linfnorm randsys 64071d4279SBram Moolenaarsyn keyword xmathFunc any forwdiff lintodb rank 65071d4279SBram Moolenaarsyn keyword xmathFunc append fprintf list rayleigh 66071d4279SBram Moolenaarsyn keyword xmathFunc argn frac log rcepstrum 67071d4279SBram Moolenaarsyn keyword xmathFunc argv fracred log10 rcond 68071d4279SBram Moolenaarsyn keyword xmathFunc arma freq logm rdintegrate 69071d4279SBram Moolenaarsyn keyword xmathFunc arma2ss freqcircle lognormal read 70071d4279SBram Moolenaarsyn keyword xmathFunc armax freqcont logspace real 71071d4279SBram Moolenaarsyn keyword xmathFunc ascii frequencyhop lowpass rectify 72071d4279SBram Moolenaarsyn keyword xmathFunc asin fsesti lpopt redschur 73071d4279SBram Moolenaarsyn keyword xmathFunc asinh fslqgcomp lqgcomp reflect 74071d4279SBram Moolenaarsyn keyword xmathFunc atan fsregu lqgltr regulator 75071d4279SBram Moolenaarsyn keyword xmathFunc atan2 fwls ls residue 76071d4279SBram Moolenaarsyn keyword xmathFunc atanh gabor ls2unc riccati 77071d4279SBram Moolenaarsyn keyword xmathFunc attach_ac100 garb ls2var riccati_eig 78071d4279SBram Moolenaarsyn keyword xmathFunc backdiff gaussian lsjoin riccati_schur 79071d4279SBram Moolenaarsyn keyword xmathFunc balance gcexp lu ricean 80071d4279SBram Moolenaarsyn keyword xmathFunc balmoore gcos lyapunov rifd 81071d4279SBram Moolenaarsyn keyword xmathFunc bandpass gdfileselection makecontinuous rlinfo 82071d4279SBram Moolenaarsyn keyword xmathFunc bandstop gdmessage makematrix rlocus 83071d4279SBram Moolenaarsyn keyword xmathFunc bj gdselection makepoly rms 84071d4279SBram Moolenaarsyn keyword xmathFunc blknorm genconv margin rootlocus 85071d4279SBram Moolenaarsyn keyword xmathFunc bode get markoff roots 86071d4279SBram Moolenaarsyn keyword xmathFunc bpm get_info30 matchedpz round 87071d4279SBram Moolenaarsyn keyword xmathFunc bpm2inn get_inn max rref 88071d4279SBram Moolenaarsyn keyword xmathFunc bpmjoin gfdm maxlike rve_get 89071d4279SBram Moolenaarsyn keyword xmathFunc bpmsplit gfsk mean rve_info 90071d4279SBram Moolenaarsyn keyword xmathFunc bst gfskernel mergeseg rve_reset 91071d4279SBram Moolenaarsyn keyword xmathFunc buttconstr gfunction min rve_update 92071d4279SBram Moolenaarsyn keyword xmathFunc butterworth ggauss minimal samplehold 93071d4279SBram Moolenaarsyn keyword xmathFunc cancel giv mkpert schur 94071d4279SBram Moolenaarsyn keyword xmathFunc canform giv2var mkphase sdf 95071d4279SBram Moolenaarsyn keyword xmathFunc ccepstrum givjoin mma sds 96071d4279SBram Moolenaarsyn keyword xmathFunc char gpsk mmaget sdtrsp 97071d4279SBram Moolenaarsyn keyword xmathFunc chebconstr gpulse mmaput sec 98071d4279SBram Moolenaarsyn keyword xmathFunc chebyshev gqam mod sech 99071d4279SBram Moolenaarsyn keyword xmathFunc check gqpsk modal siginterp 100071d4279SBram Moolenaarsyn keyword xmathFunc cholesky gramp modalstate sign 101071d4279SBram Moolenaarsyn keyword xmathFunc chop gsawtooth modcarrier sim 102071d4279SBram Moolenaarsyn keyword xmathFunc circonv gsigmoid mreduce sim30 103071d4279SBram Moolenaarsyn keyword xmathFunc circorr gsin mtxplt simin 104071d4279SBram Moolenaarsyn keyword xmathFunc clock gsinc mu simin30 105071d4279SBram Moolenaarsyn keyword xmathFunc clocus gsqpsk mulhank simout 106071d4279SBram Moolenaarsyn keyword xmathFunc clsys gsquarewave multipath simout30 107071d4279SBram Moolenaarsyn keyword xmathFunc coherence gstep musynfit simtransform 108071d4279SBram Moolenaarsyn keyword xmathFunc colorind GuiDialogCreate mxstr2xmstr sin 109071d4279SBram Moolenaarsyn keyword xmathFunc combinepf GuiDialogDestroy mxstring2xmstring singriccati 110071d4279SBram Moolenaarsyn keyword xmathFunc commentof GuiFlush names sinh 111071d4279SBram Moolenaarsyn keyword xmathFunc compare GuiGetValue nichols sinm 112071d4279SBram Moolenaarsyn keyword xmathFunc complementaryerf GuiManage noisefilt size 113071d4279SBram Moolenaarsyn keyword xmathFunc complexenvelope GuiPlot none smargin 114071d4279SBram Moolenaarsyn keyword xmathFunc complexfreqshift GuiPlotGet norm sns2sys 115071d4279SBram Moolenaarsyn keyword xmathFunc concatseg GuiSetValue numden sort 116071d4279SBram Moolenaarsyn keyword xmathFunc condition GuiShellCreate nyquist spectrad 117071d4279SBram Moolenaarsyn keyword xmathFunc conj GuiShellDeiconify obscf spectrum 118071d4279SBram Moolenaarsyn keyword xmathFunc conmap GuiShellDestroy observable spline 119071d4279SBram Moolenaarsyn keyword xmathFunc connect GuiShellIconify oe sprintf 120071d4279SBram Moolenaarsyn keyword xmathFunc conpdm GuiShellLower ones sqrt 121071d4279SBram Moolenaarsyn keyword xmathFunc constellation GuiShellRaise ophank sqrtm 122071d4279SBram Moolenaarsyn keyword xmathFunc consys GuiShellRealize optimize sresidualize 123071d4279SBram Moolenaarsyn keyword xmathFunc controllable GuiShellUnrealize optscale ss2arma 124071d4279SBram Moolenaarsyn keyword xmathFunc convolve GuiTimer orderfilt sst 125071d4279SBram Moolenaarsyn keyword xmathFunc correlate GuiToolCreate orderstate ssv 126071d4279SBram Moolenaarsyn keyword xmathFunc cos GuiToolDestroy orth stable 127071d4279SBram Moolenaarsyn keyword xmathFunc cosh GuiToolExist oscmd stair 128071d4279SBram Moolenaarsyn keyword xmathFunc cosm GuiUnmanage oscope starp 129071d4279SBram Moolenaarsyn keyword xmathFunc cot GuiWidgetExist osscale step 130071d4279SBram Moolenaarsyn keyword xmathFunc coth h2norm padcrop stepinvar 131071d4279SBram Moolenaarsyn keyword xmathFunc covariance h2syn partialsum string 132071d4279SBram Moolenaarsyn keyword xmathFunc csc hadamard pdm stringex 133071d4279SBram Moolenaarsyn keyword xmathFunc csch hankelsv pdmslice substr 134071d4279SBram Moolenaarsyn keyword xmathFunc csum hessenberg pem subsys 135071d4279SBram Moolenaarsyn keyword xmathFunc ctrcf highpass perfplots sum 136071d4279SBram Moolenaarsyn keyword xmathFunc ctrlplot hilbert period svd 137071d4279SBram Moolenaarsyn keyword xmathFunc daug hilberttransform pfscale svplot 138071d4279SBram Moolenaarsyn keyword xmathFunc dbtolin hinfcontr phaseshift sweep 139071d4279SBram Moolenaarsyn keyword xmathFunc dct hinfnorm pinv symbolmap 140071d4279SBram Moolenaarsyn keyword xmathFunc decimate hinfsyn plot sys2sns 141071d4279SBram Moolenaarsyn keyword xmathFunc defFreqRange histogram plot30 sysic 142071d4279SBram Moolenaarsyn keyword xmathFunc defTimeRange idfreq pmdemod Sysid 143071d4279SBram Moolenaarsyn keyword xmathFunc delay idimpulse poisson system 144071d4279SBram Moolenaarsyn keyword xmathFunc delsubstr idsim poissonimpulse tan 145071d4279SBram Moolenaarsyn keyword xmathFunc det ifft poleplace tanh 146071d4279SBram Moolenaarsyn keyword xmathFunc detrend imag poles taper 147071d4279SBram Moolenaarsyn keyword xmathFunc dht impinvar polezero tfid 148071d4279SBram Moolenaarsyn keyword xmathFunc diagonal impplot poltrend toeplitz 149071d4279SBram Moolenaarsyn keyword xmathFunc differentiate impulse polyfit trace 150071d4279SBram Moolenaarsyn keyword xmathFunc directsequence index polynomial tril 151071d4279SBram Moolenaarsyn keyword xmathFunc discretize indexlist polyval trim 152071d4279SBram Moolenaarsyn keyword xmathFunc divide initial polyvalm trim30 153071d4279SBram Moolenaarsyn keyword xmathFunc domain initmodel prbs triu 154071d4279SBram Moolenaarsyn keyword xmathFunc dst initx0 product trsp 155071d4279SBram Moolenaarsyn keyword xmathFunc eig inn2bpm psd truncate 156071d4279SBram Moolenaarsyn keyword xmathFunc ellipconstr inn2pe put_inn tustin 157071d4279SBram Moolenaarsyn keyword xmathFunc elliptic inn2unc qpopt uniform 158071d4279SBram Moolenaarsyn keyword xmathFunc erf insertseg qr val 159071d4279SBram Moolenaarsyn keyword xmathFunc error int quantize variance 160071d4279SBram Moolenaarsyn keyword xmathFunc estimator integrate queryblock videolines 161071d4279SBram Moolenaarsyn keyword xmathFunc etfe integratedump queryblockoptions wcbode 162071d4279SBram Moolenaarsyn keyword xmathFunc exist interp querybubble wcgain 163071d4279SBram Moolenaarsyn keyword xmathFunc exp interpolate querybubbleoptionswindow 164071d4279SBram Moolenaarsyn keyword xmathFunc expm inv querycatalog wtbalance 165071d4279SBram Moolenaarsyn keyword xmathFunc extractchan invhilbert queryconnection zeros 166071d4279SBram Moolenaarsyn keyword xmathFunc extractseg iqmix querystd 167071d4279SBram Moolenaar 168071d4279SBram Moolenaarsyn case match 169071d4279SBram Moolenaar 170071d4279SBram Moolenaar" Labels (supports xmath's goto) 171071d4279SBram Moolenaarsyn match xmathLabel "^\s*<[a-zA-Z_][a-zA-Z0-9]*>" 172071d4279SBram Moolenaar 173071d4279SBram Moolenaar" String and Character constants 174071d4279SBram Moolenaar" Highlight special characters (those which have a backslash) differently 175071d4279SBram Moolenaarsyn match xmathSpecial contained "\\\d\d\d\|\\." 176d5ab34bdSBram Moolenaarsyn region xmathString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=xmathSpecial,@Spell 177071d4279SBram Moolenaarsyn match xmathCharacter "'[^\\]'" 178071d4279SBram Moolenaarsyn match xmathSpecialChar "'\\.'" 179071d4279SBram Moolenaar 180071d4279SBram Moolenaarsyn match xmathNumber "-\=\<\d\+L\=\>\|0[xX][0-9a-fA-F]\+\>" 181071d4279SBram Moolenaar 182071d4279SBram Moolenaar" Comments: 183071d4279SBram Moolenaar" xmath supports #... (like Unix shells) 184071d4279SBram Moolenaar" and #{ ... }# comment blocks 185d5ab34bdSBram Moolenaarsyn cluster xmathCommentGroup contains=xmathString,xmathTodo,@Spell 18618144c84SBram Moolenaarsyn keyword xmathTodo contained COMBAK DEBUG FIXME Todo TODO XXX 187d5ab34bdSBram Moolenaarsyn match xmathComment "#.*$" contains=@xmathCommentGroup 188d5ab34bdSBram Moolenaarsyn region xmathCommentBlock start="#{" end="}#" contains=@xmathCommentGroup 189071d4279SBram Moolenaar 190071d4279SBram Moolenaar" synchronizing 191071d4279SBram Moolenaarsyn sync match xmathSyncComment grouphere xmathCommentBlock "#{" 192071d4279SBram Moolenaarsyn sync match xmathSyncComment groupthere NONE "}#" 193071d4279SBram Moolenaar 194071d4279SBram Moolenaar" Define the default highlighting. 195f37506f6SBram Moolenaarif !exists("skip_xmath_syntax_inits") 196071d4279SBram Moolenaar 197f37506f6SBram Moolenaar hi def link xmathBraceError xmathError 198f37506f6SBram Moolenaar hi def link xmathCmd xmathStatement 199f37506f6SBram Moolenaar hi def link xmathCommentBlock xmathComment 200f37506f6SBram Moolenaar hi def link xmathCurlyError xmathError 201f37506f6SBram Moolenaar hi def link xmathFuncCmd xmathStatement 202f37506f6SBram Moolenaar hi def link xmathParenError xmathError 203071d4279SBram Moolenaar 204071d4279SBram Moolenaar " The default methods for highlighting. Can be overridden later 205f37506f6SBram Moolenaar hi def link xmathCharacter Character 206f37506f6SBram Moolenaar hi def link xmathComma Delimiter 207f37506f6SBram Moolenaar hi def link xmathComment Comment 208f37506f6SBram Moolenaar hi def link xmathCommentBlock Comment 209f37506f6SBram Moolenaar hi def link xmathConditional Conditional 210f37506f6SBram Moolenaar hi def link xmathError Error 211f37506f6SBram Moolenaar hi def link xmathFunc Function 212f37506f6SBram Moolenaar hi def link xmathLabel PreProc 213f37506f6SBram Moolenaar hi def link xmathNumber Number 214f37506f6SBram Moolenaar hi def link xmathRepeat Repeat 215f37506f6SBram Moolenaar hi def link xmathSpecial Type 216f37506f6SBram Moolenaar hi def link xmathSpecialChar SpecialChar 217f37506f6SBram Moolenaar hi def link xmathStatement Statement 218f37506f6SBram Moolenaar hi def link xmathString String 219f37506f6SBram Moolenaar hi def link xmathTodo Todo 220071d4279SBram Moolenaar 221f37506f6SBram Moolenaarendif 222071d4279SBram Moolenaar 223071d4279SBram Moolenaarlet b:current_syntax = "xmath" 224071d4279SBram Moolenaar 225071d4279SBram Moolenaar" vim: ts=17 226