199 lines
		
	
	
		
			9.4 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
			
		
		
	
	
			199 lines
		
	
	
		
			9.4 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
| " Vim syntax file
 | |
| " Language:	gnuplot 3.8i.0
 | |
| " Maintainer:	John Hoelzel johnh51@users.sourceforge.net
 | |
| " Last Change:	Mon May 26 02:33:33 UTC 2003
 | |
| " Filenames:	*.gpi  *.gih   scripts: #!*gnuplot
 | |
| " URL:		http://johnh51.get.to/vim/syntax/gnuplot.vim
 | |
| "
 | |
| 
 | |
| " thanks to "David Necas (Yeti)" <yeti@physics.muni.cz> for heads up - working on more changes .
 | |
| " *.gpi      = GnuPlot Input - what I use because there is no other guideline. jeh 11/2000
 | |
| " *.gih      = makes using cut/pasting from gnuplot.gih easier ...
 | |
| " #!*gnuplot = for Linux bash shell scripts of gnuplot commands.
 | |
| "	       emacs used a suffix of '<gp?>'
 | |
| " gnuplot demo files show no preference.
 | |
| " I will post mail and newsgroup comments on a standard suffix in 'URL' directory.
 | |
| 
 | |
| " For version 5.x: Clear all syntax items
 | |
| " For version 6.x: Quit when a syntax file was already loaded
 | |
| if version < 600
 | |
|   syntax clear
 | |
| elseif exists("b:current_syntax")
 | |
|   finish
 | |
| endif
 | |
| 
 | |
| " some shortened names to make demo files look clean... jeh. 11/2000
 | |
| " demos -> 3.8i ... jeh. 5/2003 - a work in progress...
 | |
| 
 | |
| " commands
 | |
| 
 | |
| syn keyword gnuplotStatement	cd call clear exit set unset plot splot help
 | |
| syn keyword gnuplotStatement	load pause quit fit rep[lot] if
 | |
| syn keyword gnuplotStatement	FIT_LIMIT FIT_MAXITER FIT_START_LAMBDA
 | |
| syn keyword gnuplotStatement	FIT_LAMBDA_FACTOR FIT_LOG FIT_SCRIPT
 | |
| syn keyword gnuplotStatement	print pwd reread reset save show test ! functions var
 | |
| syn keyword gnuplotConditional	if
 | |
| " if is cond + stmt - ok?
 | |
| 
 | |
| " numbers fm c.vim
 | |
| 
 | |
| "	integer number, or floating point number without a dot and with "f".
 | |
| syn case    ignore
 | |
| syn match   gnuplotNumber	"\<[0-9]\+\(u\=l\=\|lu\|f\)\>"
 | |
| "	floating point number, with dot, optional exponent
 | |
| syn match   gnuplotFloat	"\<[0-9]\+\.[0-9]*\(e[-+]\=[0-9]\+\)\=[fl]\=\>"
 | |
| "	floating point number, starting with a dot, optional exponent
 | |
| syn match   gnuplotFloat	"\.[0-9]\+\(e[-+]\=[0-9]\+\)\=[fl]\=\>"
 | |
| "	floating point number, without dot, with exponent
 | |
| syn match   gnuplotFloat	"\<[0-9]\+e[-+]\=[0-9]\+[fl]\=\>"
 | |
| "	hex number
 | |
| syn match   gnuplotNumber	"\<0x[0-9a-f]\+\(u\=l\=\|lu\)\>"
 | |
| syn case    match
 | |
| "	flag an octal number with wrong digits by not hilighting
 | |
| syn match   gnuplotOctalError	"\<0[0-7]*[89]"
 | |
| 
 | |
| " plot args
 | |
| 
 | |
| syn keyword gnuplotType		u[sing] tit[le] notit[le] wi[th] steps fs[teps]
 | |
| syn keyword gnuplotType		title notitle t
 | |
| syn keyword gnuplotType		with w
 | |
| syn keyword gnuplotType		li[nes] l
 | |
| " t - too much?  w - too much?  l - too much?
 | |
| syn keyword gnuplotType		linespoints via
 | |
| 
 | |
| " funcs
 | |
| 
 | |
| syn keyword gnuplotFunc		abs acos acosh arg asin asinh atan atanh atan2
 | |
| syn keyword gnuplotFunc		besj0 besj1 besy0 besy1
 | |
| syn keyword gnuplotFunc		ceil column cos cosh erf erfc exp floor gamma
 | |
| syn keyword gnuplotFunc		ibeta inverf igamma imag invnorm int lgamma
 | |
| syn keyword gnuplotFunc		log log10 norm rand real sgn sin sinh sqrt tan
 | |
| syn keyword gnuplotFunc		lambertw
 | |
| syn keyword gnuplotFunc		tanh valid
 | |
| syn keyword gnuplotFunc		tm_hour tm_mday tm_min tm_mon tm_sec
 | |
| syn keyword gnuplotFunc		tm_wday tm_yday tm_year
 | |
| 
 | |
| " set vars
 | |
| 
 | |
| syn keyword gnuplotType		xdata timefmt grid noytics ytics fs
 | |
| syn keyword gnuplotType		logscale time notime mxtics nomxtics style mcbtics
 | |
| syn keyword gnuplotType		nologscale
 | |
| syn keyword gnuplotType		axes x1y2 unique acs[plines]
 | |
| syn keyword gnuplotType		size origin multiplot xtics xr[ange] yr[ange] square nosquare ratio noratio
 | |
| syn keyword gnuplotType		binary matrix index every thru sm[ooth]
 | |
| syn keyword gnuplotType		all angles degrees radians
 | |
| syn keyword gnuplotType		arrow noarrow autoscale noautoscale arrowstyle
 | |
| " autoscale args = x y xy z t ymin ... - too much?
 | |
| " needs code to: using title vs autoscale t
 | |
| syn keyword gnuplotType		x y z zcb
 | |
| syn keyword gnuplotType		linear  cubicspline  bspline order level[s]
 | |
| syn keyword gnuplotType		auto disc[rete] incr[emental] from to head nohead
 | |
| syn keyword gnuplotType		graph base both nosurface table out[put] data
 | |
| syn keyword gnuplotType		bar border noborder boxwidth
 | |
| syn keyword gnuplotType		clabel noclabel clip noclip cntrp[aram]
 | |
| syn keyword gnuplotType		contour nocontour
 | |
| syn keyword gnuplotType		dgrid3d nodgrid3d dummy encoding format
 | |
| " set encoding args not included - yet.
 | |
| syn keyword gnuplotType		function grid nogrid hidden[3d] nohidden[3d] isosample[s] key nokey
 | |
| syn keyword gnuplotType		historysize nohistorysize
 | |
| syn keyword gnuplotType		defaults offset nooffset trianglepattern undefined noundefined altdiagonal bentover noaltdiagonal nobentover
 | |
| syn keyword gnuplotType		left right top bottom outside below samplen spacing width height box nobox linestyle ls linetype lt linewidth lw
 | |
| syn keyword gnuplotType		Left Right autotitles noautotitles enhanced noenhanced
 | |
| syn keyword gnuplotType		isosamples
 | |
| syn keyword gnuplotType		label nolabel logscale nolog[scale] missing center font locale
 | |
| syn keyword gnuplotType		mapping margin bmargin lmargin rmargin tmargin spherical cylindrical cartesian
 | |
| syn keyword gnuplotType		linestyle nolinestyle linetype lt linewidth lw pointtype pt pointsize ps
 | |
| syn keyword gnuplotType		mouse nomouse
 | |
| syn keyword gnuplotType		nooffsets data candlesticks financebars linespoints lp vector nosurface
 | |
| syn keyword gnuplotType		term[inal] linux aed767 aed512 gpic
 | |
| syn keyword gnuplotType		regis tek410x tek40 vttek kc-tek40xx
 | |
| syn keyword gnuplotType		km-tek40xx selanar bitgraph xlib x11 X11
 | |
| " x11 args
 | |
| syn keyword gnuplotType		aifm cgm dumb fig gif small large size nofontlist winword6 corel dxf emf
 | |
| syn keyword gnuplotType		hpgl
 | |
| " syn keyword gnuplotType	transparent hp2623a hp2648 hp500c pcl5				      why jeh
 | |
| syn keyword gnuplotType		hp2623a hp2648 hp500c pcl5
 | |
| syn match gnuplotType		"\<transparent\>"
 | |
| syn keyword gnuplotType		hpljii hpdj hppj imagen mif pbm png svg
 | |
| syn keyword gnuplotType		postscript enhanced_postscript qms table
 | |
| " postscript editing values?
 | |
| syn keyword gnuplotType		tgif tkcanvas epson-180dpi epson-60dpi
 | |
| syn keyword gnuplotType		epson-lx800 nec-cp6 okidata starc
 | |
| syn keyword gnuplotType		tandy-60dpi latex emtex pslatex pstex epslatex
 | |
| syn keyword gnuplotType		eepic tpic pstricks texdraw mf metafont mpost mp
 | |
| syn keyword gnuplotType		timestamp notimestamp
 | |
| syn keyword gnuplotType		variables version
 | |
| syn keyword gnuplotType		x2data y2data ydata zdata
 | |
| syn keyword gnuplotType		reverse writeback noreverse nowriteback
 | |
| syn keyword gnuplotType		axis mirror autofreq nomirror rotate autofreq norotate
 | |
| syn keyword gnuplotType		update
 | |
| syn keyword gnuplotType		multiplot nomultiplot mytics
 | |
| syn keyword gnuplotType		nomytics mztics nomztics mx2tics nomx2tics
 | |
| syn keyword gnuplotType		my2tics nomy2tics offsets origin output
 | |
| syn keyword gnuplotType		para[metric] nopara[metric] pointsize polar nopolar
 | |
| syn keyword gnuplotType		zrange x2range y2range rrange cbrange
 | |
| syn keyword gnuplotType		trange urange vrange sample[s] size
 | |
| syn keyword gnuplotType		bezier boxerrorbars boxes bargraph bar[s]
 | |
| syn keyword gnuplotType		boxxy[errorbars] csplines dots fsteps histeps impulses
 | |
| syn keyword gnuplotType		line[s] linesp[oints] points poiinttype sbezier splines steps
 | |
| " w lt lw ls	      = optional
 | |
| syn keyword gnuplotType		vectors xerr[orbars] xyerr[orbars] yerr[orbars] financebars candlesticks vector
 | |
| syn keyword gnuplotType		errorb[ars surface
 | |
| syn keyword gnuplotType		filledcurve[s] pm3d   x1 x2 y1 y2 xy closed
 | |
| syn keyword gnuplotType		at pi front
 | |
| syn keyword gnuplotType		errorlines xerrorlines yerrorlines xyerrorlines
 | |
| syn keyword gnuplotType		tics ticslevel ticscale time timefmt view
 | |
| syn keyword gnuplotType		xdata xdtics noxdtics ydtics noydtics
 | |
| syn keyword gnuplotType		zdtics nozdtics x2dtics nox2dtics y2dtics noy2dtics
 | |
| syn keyword gnuplotType		xlab[el] ylab[el] zlab[el] cblab[el] x2label y2label xmtics
 | |
| syn keyword gnuplotType		xmtics noxmtics ymtics noymtics zmtics nozmtics
 | |
| syn keyword gnuplotType		x2mtics nox2mtics y2mtics noy2mtics
 | |
| syn keyword gnuplotType		cbdtics nocbdtics cbmtics nocbmtics cbtics nocbtics
 | |
| syn keyword gnuplotType		xtics noxtics ytics noytics
 | |
| syn keyword gnuplotType		ztics noztics x2tics nox2tics
 | |
| syn keyword gnuplotType		y2tics noy2tics zero nozero zeroaxis nozeroaxis
 | |
| syn keyword gnuplotType		xzeroaxis noxzeroaxis yzeroaxis noyzeroaxis
 | |
| syn keyword gnuplotType		x2zeroaxis nox2zeroaxis y2zeroaxis noy2zeroaxis
 | |
| syn keyword gnuplotType		angles one two fill empty solid pattern
 | |
| syn keyword gnuplotType		default
 | |
| syn keyword gnuplotType		scansautomatic flush b[egin] noftriangles implicit
 | |
| " b too much? - used in demo
 | |
| syn keyword gnuplotType		palette positive negative ps_allcF nops_allcF maxcolors
 | |
| syn keyword gnuplotType		push fontfile pop
 | |
| syn keyword gnuplotType		rgbformulae defined file color model gradient colornames
 | |
| syn keyword gnuplotType		RGB HSV CMY YIQ XYZ
 | |
| syn keyword gnuplotType		colorbox vertical horizontal user bdefault
 | |
| syn keyword gnuplotType		loadpath fontpath decimalsign in out
 | |
| 
 | |
| " comments + strings
 | |
| syn region gnuplotComment	start="#" end="$"
 | |
| syn region gnuplotComment	start=+"+ skip=+\\"+ end=+"+
 | |
| syn region gnuplotComment	start=+'+	     end=+'+
 | |
| 
 | |
| " Define the default highlighting.
 | |
| " For version 5.7 and earlier: only when not done already
 | |
| " For version 5.8 and later: only when an item doesn't have highlighting yet
 | |
| if version >= 508 || !exists("did_gnuplot_syntax_inits")
 | |
|   if version < 508
 | |
|     let did_gnuplot_syntax_inits = 1
 | |
|     command -nargs=+ HiLink hi link <args>
 | |
|   else
 | |
|     command -nargs=+ HiLink hi def link <args>
 | |
|   endif
 | |
| 
 | |
|   HiLink gnuplotStatement	Statement
 | |
|   HiLink gnuplotConditional	Conditional
 | |
|   HiLink gnuplotNumber		Number
 | |
|   HiLink gnuplotFloat		Float
 | |
|   HiLink gnuplotOctalError	Error
 | |
|   HiLink gnuplotFunc		Type
 | |
|   HiLink gnuplotType		Type
 | |
|   HiLink gnuplotComment	Comment
 | |
| 
 | |
|   delcommand HiLink
 | |
| endif
 | |
| 
 | |
| let b:current_syntax = "gnuplot"
 | |
| 
 | |
| " vim: ts=8
 |