1" Vim syntax file
2" Language:	Maple V (based on release 4)
3" Maintainer:	Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM>
4" Last Change:	Mar 26, 2019
5" Version:	17
6" URL:	http://www.drchip.org/astronaut/vim/index.html#SYNTAX_MAPLE
7"
8" Package Function Selection: {{{1
9" Because there are a lot of packages, and because of the potential for namespace
10" clashes, this version of <maple.vim> needs the user to select which, if any,
11" package functions should be highlighted.  Select your packages and put into your
12" <.vimrc> none or more of the lines following let ...=1 lines:
13"
14"   if exists("mvpkg_all")
15"    ...
16"   endif
17"
18" *OR* let mvpkg_all=1
19
20" This syntax file contains all the keywords and top-level packages of Maple 9.5
21" but only the contents of packages of Maple V Release 4, and the top-level
22" routines of Release 4.  <Jacques Carette - carette@mcmaster.ca>
23
24" quit when a syntax file was already loaded
25if exists("b:current_syntax")
26  finish
27endif
28
29" Iskeyword Effects: {{{1
30if (v:version == 704 && has("patch-7.4.1142")) || v:version > 704
31 syn iskeyword $,48-57,_,a-z,@-Z
32else
33 setl isk=$,48-57,_,a-z,@-Z
34endif
35
36" Package Selection: {{{1
37" allow user to simply select all packages for highlighting
38if exists("mvpkg_all")
39  let mv_DEtools    = 1
40  let mv_Galois     = 1
41  let mv_GaussInt   = 1
42  let mv_LREtools   = 1
43  let mv_combinat   = 1
44  let mv_combstruct = 1
45  let mv_difforms   = 1
46  let mv_finance    = 1
47  let mv_genfunc    = 1
48  let mv_geometry   = 1
49  let mv_grobner    = 1
50  let mv_group      = 1
51  let mv_inttrans   = 1
52  let mv_liesymm    = 1
53  let mv_linalg     = 1
54  let mv_logic      = 1
55  let mv_networks   = 1
56  let mv_numapprox  = 1
57  let mv_numtheory  = 1
58  let mv_orthopoly  = 1
59  let mv_padic      = 1
60  let mv_plots      = 1
61  let mv_plottools  = 1
62  let mv_powseries  = 1
63  let mv_process    = 1
64  let mv_simplex    = 1
65  let mv_stats      = 1
66  let mv_student    = 1
67  let mv_sumtools   = 1
68  let mv_tensor     = 1
69  let mv_totorder   = 1
70endif
71
72" Parenthesis/curly/brace sanity checker: {{{1
73syn case match
74
75" parenthesis/curly/brace sanity checker
76syn region mvZone	matchgroup=Delimiter start="(" matchgroup=Delimiter end=")" transparent contains=ALLBUT,mvError,mvBraceError,mvCurlyError
77syn region mvZone	matchgroup=Delimiter start="{" matchgroup=Delimiter end="}" transparent contains=ALLBUT,mvError,mvBraceError,mvParenError
78syn region mvZone	matchgroup=Delimiter start="\[" matchgroup=Delimiter end="]" transparent contains=ALLBUT,mvError,mvCurlyError,mvParenError
79syn match  mvError		"[)\]}]"
80syn match  mvBraceError	"[)}]"	contained
81syn match  mvCurlyError	"[)\]]"	contained
82syn match  mvParenError	"[\]}]"	contained
83syn match  mvComma		"[,;:]"
84syn match  mvSemiError	"[;:]"	contained
85syn match  mvDcolon		"::"
86
87" Maple Packages, updated for Maple 9.5
88syn keyword mvPackage	algcurves	ArrayTools	Cache	codegen
89syn keyword mvPackage	CodeGeneration	CodeTools	combinat	combstruct
90syn keyword mvPackage	ContextMenu	CurveFitting	DEtools	diffalg
91syn keyword mvPackage	difforms	DiscreteTransforms	Domains	ExternalCalling
92syn keyword mvPackage	FileTools	finance	GaussInt	genfunc
93syn keyword mvPackage	geom3d	geometry	gfun	Groebner
94syn keyword mvPackage	group	hashmset	IntegerRelations	inttrans
95syn keyword mvPackage	LargeExpressions	LibraryTools	liesymm	linalg
96syn keyword mvPackage	LinearAlgebra	LinearFunctionalSystems	LinearOperators
97syn keyword mvPackage	ListTools	Logic	LREtools	Maplets
98syn keyword mvPackage	MathematicalFunctions	MathML	Matlab
99syn keyword mvPackage	MatrixPolynomialAlgebra	MmaTranslator	networks
100syn keyword mvPackage	numapprox	numtheory	Optimization	OreTools
101syn keyword mvPackage	Ore_algebra	OrthogonalSeries	orthopoly	padic
102syn keyword mvPackage	PDEtools	plots	plottools	PolynomialIdeals
103syn keyword mvPackage	PolynomialTools	powseries	process	QDifferenceEquations
104syn keyword mvPackage	RandomTools	RationalNormalForms	RealDomain	RootFinding
105syn keyword mvPackage	ScientificConstants	ScientificErrorAnalysis	simplex
106syn keyword mvPackage	Slode	SNAP	Sockets	SoftwareMetrics
107syn keyword mvPackage	SolveTools	Spread	stats	StringTools
108syn keyword mvPackage	Student	student	sumtools	SumTools
109syn keyword mvPackage	tensor	TypeTools	Units	VariationalCalculus
110syn keyword mvPackage	VectorCalculus	Worksheet	XMLTools
111
112" Language Support: {{{1
113syn keyword mvTodo	contained	COMBAK	FIXME	TODO	XXX
114if exists("g:mapleversion") && g:mapleversion < 9
115 syn region  mvString	start=+`+ skip=+``+ end=+`+	keepend	contains=mvTodo,@Spell
116 syn region  mvString	start=+"+ skip=+""+ end=+"+	keepend	contains=@Spell
117 syn region  mvDelayEval	start=+'+ end=+'+	keepend contains=ALLBUT,mvError,mvBraceError,mvCurlyError,mvParenError,mvSemiError
118 syn match   mvVarAssign	"[a-zA-Z_][a-zA-Z_0-9]*[ \t]*:=" contains=mvAssign
119 syn match   mvAssign	":="	contained
120else
121 syn region  mvName		start=+`+ skip=+``+ end=+`+	keepend	contains=mvTodo
122 syn region  mvString	start=+"+ skip=+""+ end=+"+	keepend	contains=@Spell
123 syn region  mvDelayEval	start=+'+ end=+'+	keepend contains=ALLBUT,mvError,mvBraceError,mvCurlyError,mvParenError
124 syn match   mvDelim		"[;:]"	display
125 syn match   mvAssign	":="
126endif
127
128" Lower-Priority Operators: {{{1
129syn match mvOper	"\."
130
131" Number handling: {{{1
132syn match mvNumber	"\<\d\+"		" integer
133 syn match mvNumber	"[-+]\=\.\d\+"		" . integer
134syn match mvNumber	"\<\d\+\.\d\+"		" integer . integer
135syn match mvNumber	"\<\d\+\."		" integer .
136syn match mvNumber	"\<\d\+\.\."	contains=mvRange	" integer ..
137
138syn match mvNumber	"\<\d\+e[-+]\=\d\+"		" integer e [-+] integer
139syn match mvNumber	"[-+]\=\.\d\+e[-+]\=\d\+"	" . integer e [-+] integer
140syn match mvNumber	"\<\d\+\.\d*e[-+]\=\d\+"	" integer . [integer] e [-+] integer
141
142syn match mvNumber	"[-+]\d\+"		" integer
143syn match mvNumber	"[-+]\d\+\.\d\+"		" integer . integer
144syn match mvNumber	"[-+]\d\+\."		" integer .
145syn match mvNumber	"[-+]\d\+\.\."	contains=mvRange	" integer ..
146
147syn match mvNumber	"[-+]\d\+e[-+]\=\d\+"	" integer e [-+] integer
148syn match mvNumber	"[-+]\d\+\.\d*e[-+]\=\d\+"	" integer . [integer] e [-+] integer
149
150syn match mvRange	"\.\."
151
152" Operators: {{{1
153syn keyword mvOper	and not or xor implies union intersect subset minus mod
154syn match   mvOper	"<>\|[<>]=\|[<>]\|="
155syn match   mvOper	"&+\|&-\|&\*\|&\/\|&"
156syn match   mvError	"\.\.\."
157
158" MapleV Statements: ? statement {{{1
159
160" MapleV Statements: ? statement
161" Split into booleans, conditionals, operators, repeat-logic, etc
162syn keyword mvBool	true	false	FAIL
163syn keyword mvCond	elif	else	fi	if	then
164syn match   mvCond	"end\s\+if"
165
166syn keyword mvRepeat	by	for	in	to
167syn keyword mvRepeat	do	from	od	while
168syn match   mvRepeat	"end\s\+do"
169
170syn keyword mvSpecial	NULL
171syn match   mvSpecial	"\[\]\|{}"
172
173if exists("g:mapleversion") && g:mapleversion < 9
174 syn keyword mvStatement	Order	fail	options	read	save
175 syn keyword mvStatement	break	local	point	remember	stop
176 syn keyword mvStatement	done	mod	proc	restart	with
177 syn keyword mvStatement	end	mods	quit	return
178 syn keyword mvStatement	error	next
179else
180 syn keyword mvStatement	option	options	read	save
181 syn keyword mvStatement	break	local	remember	stop
182 syn keyword mvStatement	done	mod	proc	restart
183 syn keyword mvStatement	end	mods	quit	return
184 syn keyword mvStatement	error	next	try	catch
185 syn keyword mvStatement	finally	assuming	global	export
186 syn keyword mvStatement	module	description	use
187endif
188
189" Builtin Constants: ? constants {{{1
190syn keyword mvConstant	Catalan	I	gamma	infinity
191syn keyword mvConstant	Pi
192
193" Comments:  DEBUG, if in a comment, is specially highlighted. {{{1
194syn keyword mvDebug	contained	DEBUG
195syn cluster mvCommentGroup	contains=mvTodo,mvDebug,@Spell
196syn match mvComment "#.*$"	contains=@mvCommentGroup
197
198" Basic Library Functions: ? index[function]
199syn keyword mvLibrary $	@	@@	ERROR
200syn keyword mvLibrary AFactor	KelvinHer	arctan	factor	log	rhs
201syn keyword mvLibrary AFactors	KelvinKei	arctanh	factors	log10	root
202syn keyword mvLibrary AiryAi	KelvinKer	argument	fclose	lprint	roots
203syn keyword mvLibrary AiryBi	LambertW	array	feof	map	round
204syn keyword mvLibrary AngerJ	Lcm	assign	fflush	map2	rsolve
205syn keyword mvLibrary Berlekamp	LegendreE	assigned	filepos	match	savelib
206syn keyword mvLibrary BesselI	LegendreEc	asspar	fixdiv	matrix	scanf
207syn keyword mvLibrary BesselJ	LegendreEc1	assume	float	max	searchtext
208syn keyword mvLibrary BesselK	LegendreF	asubs	floor	maximize	sec
209syn keyword mvLibrary BesselY	LegendreKc	asympt	fnormal	maxnorm	sech
210syn keyword mvLibrary Beta	LegendreKc1	attribute	fopen	maxorder	select
211syn keyword mvLibrary C	LegendrePi	bernstein	forget	member	seq
212syn keyword mvLibrary Chi	LegendrePic	branches	fortran	min	series
213syn keyword mvLibrary Ci	LegendrePic1	bspline	fprintf	minimize	setattribute
214syn keyword mvLibrary CompSeq	Li	cat	frac	minpoly	shake
215syn keyword mvLibrary Content	Linsolve	ceil	freeze	modp	showprofile
216syn keyword mvLibrary D	MOLS	chrem	fremove	modp1	showtime
217syn keyword mvLibrary DESol	Maple_floats	close	frontend	modp2	sign
218syn keyword mvLibrary Det	MeijerG	close	fscanf	modpol	signum
219syn keyword mvLibrary Diff	Norm	coeff	fsolve	mods	simplify
220syn keyword mvLibrary Dirac	Normal	coeffs	galois	msolve	sin
221syn keyword mvLibrary DistDeg	Nullspace	coeftayl	gc	mtaylor	singular
222syn keyword mvLibrary Divide	Power	collect	gcd	mul	sinh
223syn keyword mvLibrary Ei	Powmod	combine	gcdex	nextprime	sinterp
224syn keyword mvLibrary Eigenvals	Prem	commutat	genpoly	nops	solve
225syn keyword mvLibrary EllipticCE	Primfield	comparray	harmonic	norm	sort
226syn keyword mvLibrary EllipticCK	Primitive	compoly	has	normal	sparse
227syn keyword mvLibrary EllipticCPi	Primpart	conjugate	hasfun	numboccur	spline
228syn keyword mvLibrary EllipticE	ProbSplit	content	hasoption	numer	split
229syn keyword mvLibrary EllipticF	Product	convergs	hastype	op	splits
230syn keyword mvLibrary EllipticK	Psi	convert	heap	open	sprem
231syn keyword mvLibrary EllipticModulus	Quo	coords	history	optimize	sprintf
232syn keyword mvLibrary EllipticNome	RESol	copy	hypergeom	order	sqrfree
233syn keyword mvLibrary EllipticPi	Randpoly	cos	iFFT	parse	sqrt
234syn keyword mvLibrary Eval	Randprime	cosh	icontent	pclose	sscanf
235syn keyword mvLibrary Expand	Ratrecon	cost	identity	pclose	ssystem
236syn keyword mvLibrary FFT	Re	cot	igcd	pdesolve	stack
237syn keyword mvLibrary Factor	Rem	coth	igcdex	piecewise	sturm
238syn keyword mvLibrary Factors	Resultant	csc	ilcm	plot	sturmseq
239syn keyword mvLibrary FresnelC	RootOf	csch	ilog	plot3d	subs
240syn keyword mvLibrary FresnelS	Roots	csgn	ilog10	plotsetup	subsop
241syn keyword mvLibrary Fresnelf	SPrem	dawson	implicitdiff	pochhammer	substring
242syn keyword mvLibrary Fresnelg	Searchtext	define	indets	pointto	sum
243syn keyword mvLibrary Frobenius	Shi	degree	index	poisson	surd
244syn keyword mvLibrary GAMMA	Si	denom	indexed	polar	symmdiff
245syn keyword mvLibrary GaussAGM	Smith	depends	indices	polylog	symmetric
246syn keyword mvLibrary Gaussejord	Sqrfree	diagonal	inifcn	polynom	system
247syn keyword mvLibrary Gausselim	Ssi	diff	ininame	powmod	table
248syn keyword mvLibrary Gcd	StruveH	dilog	initialize	prem	tan
249syn keyword mvLibrary Gcdex	StruveL	dinterp	insert	prevprime	tanh
250syn keyword mvLibrary HankelH1	Sum	disassemble	int	primpart	testeq
251syn keyword mvLibrary HankelH2	Svd	discont	interface	print	testfloat
252syn keyword mvLibrary Heaviside	TEXT	discrim	interp	printf	thaw
253syn keyword mvLibrary Hermite	Trace	dismantle	invfunc	procbody	thiele
254syn keyword mvLibrary Im	WeberE	divide	invztrans	procmake	time
255syn keyword mvLibrary Indep	WeierstrassP	dsolve	iostatus	product	translate
256syn keyword mvLibrary Interp	WeierstrassPPrime	eliminate	iperfpow	proot	traperror
257syn keyword mvLibrary Inverse	WeierstrassSigma	ellipsoid	iquo	property	trigsubs
258syn keyword mvLibrary Irreduc	WeierstrassZeta	entries	iratrecon	protect	trunc
259syn keyword mvLibrary Issimilar	Zeta	eqn	irem	psqrt	type
260syn keyword mvLibrary JacobiAM	abs	erf	iroot	quo	typematch
261syn keyword mvLibrary JacobiCD	add	erfc	irreduc	radnormal	unames
262syn keyword mvLibrary JacobiCN	addcoords	eulermac	iscont	radsimp	unapply
263syn keyword mvLibrary JacobiCS	addressof	eval	isdifferentiable	rand	unassign
264syn keyword mvLibrary JacobiDC	algebraic	evala	isolate	randomize	unload
265syn keyword mvLibrary JacobiDN	algsubs	evalapply	ispoly	randpoly	unprotect
266syn keyword mvLibrary JacobiDS	alias	evalb	isqrfree	range	updatesR4
267syn keyword mvLibrary JacobiNC	allvalues	evalc	isqrt	rationalize	userinfo
268syn keyword mvLibrary JacobiND	anames	evalf	issqr	ratrecon	value
269syn keyword mvLibrary JacobiNS	antisymm	evalfint	latex	readbytes	vector
270syn keyword mvLibrary JacobiSC	applyop	evalgf	lattice	readdata	verify
271syn keyword mvLibrary JacobiSD	arccos	evalhf	lcm	readlib	whattype
272syn keyword mvLibrary JacobiSN	arccosh	evalm	lcoeff	readline	with
273syn keyword mvLibrary JacobiTheta1	arccot	evaln	leadterm	readstat	writebytes
274syn keyword mvLibrary JacobiTheta2	arccoth	evalr	length	realroot	writedata
275syn keyword mvLibrary JacobiTheta3	arccsc	exp	lexorder	recipoly	writeline
276syn keyword mvLibrary JacobiTheta4	arccsch	expand	lhs	rem	writestat
277syn keyword mvLibrary JacobiZeta	arcsec	expandoff	limit	remove	writeto
278syn keyword mvLibrary KelvinBei	arcsech	expandon	ln	residue	zip
279syn keyword mvLibrary KelvinBer	arcsin	extract	lnGAMMA	resultant	ztrans
280syn keyword mvLibrary KelvinHei	arcsinh
281
282
283" ==  PACKAGES  ======================================================= {{{1
284" Note: highlighting of package functions is now user-selectable by package.
285
286" Package: DEtools     differential equations tools {{{2
287if exists("mv_DEtools")
288  syn keyword mvPkg_DEtools	DEnormal	Dchangevar	autonomous	dfieldplot	reduceOrder	untranslate
289  syn keyword mvPkg_DEtools	DEplot	PDEchangecoords	convertAlg	indicialeq	regularsp	varparam
290  syn keyword mvPkg_DEtools	DEplot3d	PDEplot	convertsys	phaseportrait	translate
291endif
292
293" Package: Domains: create domains of computation {{{2
294if exists("mv_Domains")
295endif
296
297" Package: GF: Galois Fields {{{2
298if exists("mv_GF")
299  syn keyword mvPkg_Galois	galois
300endif
301
302" Package: GaussInt: Gaussian Integers {{{2
303if exists("mv_GaussInt")
304  syn keyword mvPkg_GaussInt	GIbasis	GIfactor	GIissqr	GInorm	GIquadres	GIsmith
305  syn keyword mvPkg_GaussInt	GIchrem	GIfactors	GIlcm	GInormal	GIquo	GIsqrfree
306  syn keyword mvPkg_GaussInt	GIdivisor	GIgcd	GImcmbine	GIorder	GIrem	GIsqrt
307  syn keyword mvPkg_GaussInt	GIfacpoly	GIgcdex	GInearest	GIphi	GIroots	GIunitnormal
308  syn keyword mvPkg_GaussInt	GIfacset	GIhermite	GInodiv	GIprime	GIsieve
309endif
310
311" Package: LREtools: manipulate linear recurrence relations {{{2
312if exists("mv_LREtools")
313  syn keyword mvPkg_LREtools	REcontent	REprimpart	REtodelta	delta	hypergeomsols	ratpolysols
314  syn keyword mvPkg_LREtools	REcreate	REreduceorder	REtoproc	dispersion	polysols	shift
315  syn keyword mvPkg_LREtools	REplot	REtoDE	constcoeffsol
316endif
317
318" Package: combinat: combinatorial functions {{{2
319if exists("mv_combinat")
320  syn keyword mvPkg_combinat	Chi	composition	graycode	numbcomb	permute	randperm
321  syn keyword mvPkg_combinat	bell	conjpart	inttovec	numbcomp	powerset	stirling1
322  syn keyword mvPkg_combinat	binomial	decodepart	lastpart	numbpart	prevpart	stirling2
323  syn keyword mvPkg_combinat	cartprod	encodepart	multinomial	numbperm	randcomb	subsets
324  syn keyword mvPkg_combinat	character	fibonacci	nextpart	partition	randpart	vectoint
325  syn keyword mvPkg_combinat	choose	firstpart
326endif
327
328" Package: combstruct: combinatorial structures {{{2
329if exists("mv_combstruct")
330  syn keyword mvPkg_combstruct	allstructs	draw	iterstructs	options	specification	structures
331  syn keyword mvPkg_combstruct	count	finished	nextstruct
332endif
333
334" Package: difforms: differential forms {{{2
335if exists("mv_difforms")
336  syn keyword mvPkg_difforms	const	defform	formpart	parity	scalarpart	wdegree
337  syn keyword mvPkg_difforms	d	form	mixpar	scalar	simpform	wedge
338endif
339
340" Package: finance: financial mathematics {{{2
341if exists("mv_finance")
342  syn keyword mvPkg_finance	amortization	cashflows	futurevalue	growingperpetuity	mv_finance	presentvalue
343  syn keyword mvPkg_finance	annuity	effectiverate	growingannuity	levelcoupon	perpetuity	yieldtomaturity
344  syn keyword mvPkg_finance	blackscholes
345endif
346
347" Package: genfunc: rational generating functions {{{2
348if exists("mv_genfunc")
349  syn keyword mvPkg_genfunc	rgf_charseq	rgf_expand	rgf_hybrid	rgf_pfrac	rgf_sequence	rgf_term
350  syn keyword mvPkg_genfunc	rgf_encode	rgf_findrecur	rgf_norm	rgf_relate	rgf_simp	termscale
351endif
352
353" Package: geometry: Euclidean geometry {{{2
354if exists("mv_geometry")
355  syn keyword mvPkg_geometry	circle	dsegment	hyperbola	parabola	segment	triangle
356  syn keyword mvPkg_geometry	conic	ellipse	line	point	square
357endif
358
359" Package: grobner: Grobner bases {{{2
360if exists("mv_grobner")
361  syn keyword mvPkg_grobner	finduni	gbasis	leadmon	normalf	solvable	spoly
362  syn keyword mvPkg_grobner	finite	gsolve
363endif
364
365" Package: group: permutation and finitely-presented groups {{{2
366if exists("mv_group")
367  syn keyword mvPkg_group	DerivedS	areconjugate	cosets	grouporder	issubgroup	permrep
368  syn keyword mvPkg_group	LCS	center	cosrep	inter	mulperms	pres
369  syn keyword mvPkg_group	NormalClosure	centralizer	derived	invperm	normalizer	subgrel
370  syn keyword mvPkg_group	RandElement	convert	grelgroup	isabelian	orbit	type
371  syn keyword mvPkg_group	Sylow	core	groupmember	isnormal	permgroup
372endif
373
374" Package: inttrans: integral transforms {{{2
375if exists("mv_inttrans")
376  syn keyword mvPkg_inttrans	addtable	fouriercos	hankel	invfourier	invlaplace	mellin
377  syn keyword mvPkg_inttrans	fourier	fouriersin	hilbert	invhilbert	laplace
378endif
379
380" Package: liesymm: Lie symmetries {{{2
381if exists("mv_liesymm")
382  syn keyword mvPkg_liesymm	&^	TD	depvars	getform	mixpar	vfix
383  syn keyword mvPkg_liesymm	&mod	annul	determine	hasclosure	prolong	wcollect
384  syn keyword mvPkg_liesymm	Eta	autosimp	dvalue	hook	reduce	wdegree
385  syn keyword mvPkg_liesymm	Lie	close	extvars	indepvars	setup	wedgeset
386  syn keyword mvPkg_liesymm	Lrank	d	getcoeff	makeforms	translate	wsubs
387endif
388
389" Package: linalg: Linear algebra {{{2
390if exists("mv_linalg")
391  syn keyword mvPkg_linalg	GramSchmidt	coldim	equal	indexfunc	mulcol	singval
392  syn keyword mvPkg_linalg	JordanBlock	colspace	exponential	innerprod	multiply	smith
393  syn keyword mvPkg_linalg	LUdecomp	colspan	extend	intbasis	norm	stack
394  syn keyword mvPkg_linalg	QRdecomp	companion	ffgausselim	inverse	normalize	submatrix
395  syn keyword mvPkg_linalg	addcol	cond	fibonacci	ismith	orthog	subvector
396  syn keyword mvPkg_linalg	addrow	copyinto	forwardsub	issimilar	permanent	sumbasis
397  syn keyword mvPkg_linalg	adjoint	crossprod	frobenius	iszero	pivot	swapcol
398  syn keyword mvPkg_linalg	angle	curl	gausselim	jacobian	potential	swaprow
399  syn keyword mvPkg_linalg	augment	definite	gaussjord	jordan	randmatrix	sylvester
400  syn keyword mvPkg_linalg	backsub	delcols	geneqns	kernel	randvector	toeplitz
401  syn keyword mvPkg_linalg	band	delrows	genmatrix	laplacian	rank	trace
402  syn keyword mvPkg_linalg	basis	det	grad	leastsqrs	references	transpose
403  syn keyword mvPkg_linalg	bezout	diag	hadamard	linsolve	row	vandermonde
404  syn keyword mvPkg_linalg	blockmatrix	diverge	hermite	matadd	rowdim	vecpotent
405  syn keyword mvPkg_linalg	charmat	dotprod	hessian	matrix	rowspace	vectdim
406  syn keyword mvPkg_linalg	charpoly	eigenval	hilbert	minor	rowspan	vector
407  syn keyword mvPkg_linalg	cholesky	eigenvect	htranspose	minpoly	scalarmul	wronskian
408  syn keyword mvPkg_linalg	col	entermatrix	ihermite
409endif
410
411" Package: logic: Boolean logic {{{2
412if exists("mv_logic")
413  syn keyword mvPkg_logic	MOD2	bsimp	distrib	environ	randbool	tautology
414  syn keyword mvPkg_logic	bequal	canon	dual	frominert	satisfy	toinert
415endif
416
417" Package: networks: graph networks {{{2
418if exists("mv_networks")
419  syn keyword mvPkg_networks	acycpoly	connect	dinic	graph	mincut	show
420  syn keyword mvPkg_networks	addedge	connectivity	djspantree	graphical	mindegree	shrink
421  syn keyword mvPkg_networks	addvertex	contract	dodecahedron	gsimp	neighbors	span
422  syn keyword mvPkg_networks	adjacency	countcuts	draw	gunion	new	spanpoly
423  syn keyword mvPkg_networks	allpairs	counttrees	duplicate	head	octahedron	spantree
424  syn keyword mvPkg_networks	ancestor	cube	edges	icosahedron	outdegree	tail
425  syn keyword mvPkg_networks	arrivals	cycle	ends	incidence	path	tetrahedron
426  syn keyword mvPkg_networks	bicomponents	cyclebase	eweight	incident	petersen	tuttepoly
427  syn keyword mvPkg_networks	charpoly	daughter	flow	indegree	random	vdegree
428  syn keyword mvPkg_networks	chrompoly	degreeseq	flowpoly	induce	rank	vertices
429  syn keyword mvPkg_networks	complement	delete	fundcyc	isplanar	rankpoly	void
430  syn keyword mvPkg_networks	complete	departures	getlabel	maxdegree	shortpathtree	vweight
431  syn keyword mvPkg_networks	components	diameter	girth
432endif
433
434" Package: numapprox: numerical approximation {{{2
435if exists("mv_numapprox")
436  syn keyword mvPkg_numapprox	chebdeg	chebsort	fnorm	laurent	minimax	remez
437  syn keyword mvPkg_numapprox	chebmult	chebyshev	hornerform	laurent	pade	taylor
438  syn keyword mvPkg_numapprox	chebpade	confracform	infnorm	minimax
439endif
440
441" Package: numtheory: number theory {{{2
442if exists("mv_numtheory")
443  syn keyword mvPkg_numtheory	B	cyclotomic	invcfrac	mcombine	nthconver	primroot
444  syn keyword mvPkg_numtheory	F	divisors	invphi	mersenne	nthdenom	quadres
445  syn keyword mvPkg_numtheory	GIgcd	euler	isolve	minkowski	nthnumer	rootsunity
446  syn keyword mvPkg_numtheory	J	factorEQ	isprime	mipolys	nthpow	safeprime
447  syn keyword mvPkg_numtheory	L	factorset	issqrfree	mlog	order	sigma
448  syn keyword mvPkg_numtheory	M	fermat	ithprime	mobius	pdexpand	sq2factor
449  syn keyword mvPkg_numtheory	bernoulli	ifactor	jacobi	mroot	phi	sum2sqr
450  syn keyword mvPkg_numtheory	bigomega	ifactors	kronecker	msqrt	pprimroot	tau
451  syn keyword mvPkg_numtheory	cfrac	imagunit	lambda	nearestp	prevprime	thue
452  syn keyword mvPkg_numtheory	cfracpol	index	legendre	nextprime
453endif
454
455" Package: orthopoly: orthogonal polynomials {{{2
456if exists("mv_orthopoly")
457  syn keyword mvPkg_orthopoly	G	H	L	P	T	U
458endif
459
460" Package: padic: p-adic numbers {{{2
461if exists("mv_padic")
462  syn keyword mvPkg_padic	evalp	function	orderp	ratvaluep	rootp	valuep
463  syn keyword mvPkg_padic	expansion	lcoeffp	ordp
464endif
465
466" Package: plots: graphics package {{{2
467if exists("mv_plots")
468  syn keyword mvPkg_plots	animate	coordplot3d	gradplot3d	listplot3d	polarplot	setoptions3d
469  syn keyword mvPkg_plots	animate3d	cylinderplot	implicitplot	loglogplot	polygonplot	spacecurve
470  syn keyword mvPkg_plots	changecoords	densityplot	implicitplot3d	logplot	polygonplot3d	sparsematrixplot
471  syn keyword mvPkg_plots	complexplot	display	inequal	matrixplot	polyhedraplot	sphereplot
472  syn keyword mvPkg_plots	complexplot3d	display3d	listcontplot	odeplot	replot	surfdata
473  syn keyword mvPkg_plots	conformal	fieldplot	listcontplot3d	pareto	rootlocus	textplot
474  syn keyword mvPkg_plots	contourplot	fieldplot3d	listdensityplot	pointplot	semilogplot	textplot3d
475  syn keyword mvPkg_plots	contourplot3d	gradplot	listplot	pointplot3d	setoptions	tubeplot
476  syn keyword mvPkg_plots	coordplot
477endif
478
479" Package: plottools: basic graphical objects {{{2
480if exists("mv_plottools")
481  syn keyword mvPkg_plottools	arc	curve	dodecahedron	hyperbola	pieslice	semitorus
482  syn keyword mvPkg_plottools	arrow	cutin	ellipse	icosahedron	point	sphere
483  syn keyword mvPkg_plottools	circle	cutout	ellipticArc	line	polygon	tetrahedron
484  syn keyword mvPkg_plottools	cone	cylinder	hemisphere	octahedron	rectangle	torus
485  syn keyword mvPkg_plottools	cuboid	disk	hexahedron
486endif
487
488" Package: powseries: formal power series {{{2
489if exists("mv_powseries")
490  syn keyword mvPkg_powseries	compose	multiply	powcreate	powlog	powsolve	reversion
491  syn keyword mvPkg_powseries	evalpow	negative	powdiff	powpoly	powsqrt	subtract
492  syn keyword mvPkg_powseries	inverse	powadd	powexp	powseries	quotient	tpsform
493  syn keyword mvPkg_powseries	multconst	powcos	powint	powsin
494endif
495
496" Package: process: (Unix)-multi-processing {{{2
497if exists("mv_process")
498  syn keyword mvPkg_process	block	fork	pclose	pipe	popen	wait
499  syn keyword mvPkg_process	exec	kill
500endif
501
502" Package: simplex: linear optimization {{{2
503if exists("mv_simplex")
504  syn keyword mvPkg_simplex	NONNEGATIVE	cterm	dual	maximize	pivoteqn	setup
505  syn keyword mvPkg_simplex	basis	define_zero	equality	minimize	pivotvar	standardize
506  syn keyword mvPkg_simplex	convexhull	display	feasible	pivot	ratio
507endif
508
509" Package: stats: statistics {{{2
510if exists("mv_stats")
511  syn keyword mvPkg_stats	anova	describe	fit	random	statevalf	statplots
512endif
513
514" Package: student: student calculus {{{2
515if exists("mv_student")
516  syn keyword mvPkg_student	D	Product	distance	isolate	middlesum	rightsum
517  syn keyword mvPkg_student	Diff	Sum	equate	leftbox	midpoint	showtangent
518  syn keyword mvPkg_student	Doubleint	Tripleint	extrema	leftsum	minimize	simpson
519  syn keyword mvPkg_student	Int	changevar	integrand	makeproc	minimize	slope
520  syn keyword mvPkg_student	Limit	combine	intercept	maximize	powsubs	trapezoid
521  syn keyword mvPkg_student	Lineint	completesquare	intparts	middlebox	rightbox	value
522  syn keyword mvPkg_student	Point
523endif
524
525" Package: sumtools: indefinite and definite sums {{{2
526if exists("mv_sumtools")
527  syn keyword mvPkg_sumtools	Hypersum	extended_gosper	hyperrecursion	hyperterm	sumrecursion	sumtohyper
528  syn keyword mvPkg_sumtools	Sumtohyper	gosper	hypersum	simpcomb
529endif
530
531" Package: tensor: tensor computations and General Relativity {{{2
532if exists("mv_tensor")
533  syn keyword mvPkg_tensor	Christoffel1	Riemann	connexF	display_allGR	get_compts	partial_diff
534  syn keyword mvPkg_tensor	Christoffel2	RiemannF	contract	dual	get_rank	permute_indices
535  syn keyword mvPkg_tensor	Einstein	Weyl	convertNP	entermetric	invars	petrov
536  syn keyword mvPkg_tensor	Jacobian	act	cov_diff	exterior_diff	invert	prod
537  syn keyword mvPkg_tensor	Killing_eqns	antisymmetrize	create	exterior_prod	lin_com	raise
538  syn keyword mvPkg_tensor	Levi_Civita	change_basis	d1metric	frame	lower	symmetrize
539  syn keyword mvPkg_tensor	Lie_diff	commutator	d2metric	geodesic_eqns	npcurve	tensorsGR
540  syn keyword mvPkg_tensor	Ricci	compare	directional_diff	get_char	npspin	transform
541  syn keyword mvPkg_tensor	Ricciscalar	conj	displayGR
542endif
543
544" Package: totorder: total orders on names {{{2
545if exists("mv_totorder")
546  syn keyword mvPkg_totorder	forget	init	ordering	tassume	tis
547endif
548" =====================================================================
549
550" Highlighting: Define the default highlighting. {{{1
551" Only when an item doesn't have highlighting yet
552if !exists("skip_maplev_syntax_inits")
553
554  " Maple->Maple Links {{{2
555  hi def link mvBraceError	mvError
556  hi def link mvCurlyError	mvError
557  hi def link mvDebug		mvTodo
558  hi def link mvParenError	mvError
559  hi def link mvPkg_DEtools	mvPkgFunc
560  hi def link mvPkg_Galois	mvPkgFunc
561  hi def link mvPkg_GaussInt	mvPkgFunc
562  hi def link mvPkg_LREtools	mvPkgFunc
563  hi def link mvPkg_combinat	mvPkgFunc
564  hi def link mvPkg_combstruct	mvPkgFunc
565  hi def link mvPkg_difforms	mvPkgFunc
566  hi def link mvPkg_finance	mvPkgFunc
567  hi def link mvPkg_genfunc	mvPkgFunc
568  hi def link mvPkg_geometry	mvPkgFunc
569  hi def link mvPkg_grobner	mvPkgFunc
570  hi def link mvPkg_group	mvPkgFunc
571  hi def link mvPkg_inttrans	mvPkgFunc
572  hi def link mvPkg_liesymm	mvPkgFunc
573  hi def link mvPkg_linalg	mvPkgFunc
574  hi def link mvPkg_logic	mvPkgFunc
575  hi def link mvPkg_networks	mvPkgFunc
576  hi def link mvPkg_numapprox	mvPkgFunc
577  hi def link mvPkg_numtheory	mvPkgFunc
578  hi def link mvPkg_orthopoly	mvPkgFunc
579  hi def link mvPkg_padic	mvPkgFunc
580  hi def link mvPkg_plots	mvPkgFunc
581  hi def link mvPkg_plottools	mvPkgFunc
582  hi def link mvPkg_powseries	mvPkgFunc
583  hi def link mvPkg_process	mvPkgFunc
584  hi def link mvPkg_simplex	mvPkgFunc
585  hi def link mvPkg_stats	mvPkgFunc
586  hi def link mvPkg_student	mvPkgFunc
587  hi def link mvPkg_sumtools	mvPkgFunc
588  hi def link mvPkg_tensor	mvPkgFunc
589  hi def link mvPkg_totorder	mvPkgFunc
590  hi def link mvRange		mvOper
591  hi def link mvSemiError	mvError
592  hi def link mvDelim		Delimiter
593
594  " Maple->Standard Links {{{2
595  hi def link mvAssign		Delimiter
596  hi def link mvBool		Boolean
597  hi def link mvComma		Delimiter
598  hi def link mvComment		Comment
599  hi def link mvCond		Conditional
600  hi def link mvConstant		Number
601  hi def link mvDelayEval	Label
602  hi def link mvDcolon		Delimiter
603  hi def link mvError		Error
604  hi def link mvLibrary		Statement
605  hi def link mvNumber		Number
606  hi def link mvOper		Operator
607  hi def link mvAssign		Delimiter
608  hi def link mvPackage		Type
609  hi def link mvPkgFunc		Function
610  hi def link mvPktOption	Special
611  hi def link mvRepeat		Repeat
612  hi def link mvSpecial		Special
613  hi def link mvStatement	Statement
614  hi def link mvName		String
615  hi def link mvString		String
616  hi def link mvTodo		Todo
617
618endif
619
620" Current Syntax: {{{1
621let b:current_syntax = "maple"
622" vim: ts=20 fdm=marker
623