xref: /vim-8.2.3635/runtime/syntax/xmath.vim (revision 1d9215b9)
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