Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 1 | " Vim syntax file |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 2 | " Language: gnuplot 4.7.0 |
Bram Moolenaar | 12969c0 | 2015-09-08 23:36:10 +0200 | [diff] [blame] | 3 | " Maintainer: Josh Wainwright <wainwright DOT ja AT gmail DOT com> |
| 4 | " Last Maintainer: Andrew Rasmussen andyras@users.sourceforge.net |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 5 | " Original Maintainer: John Hoelzel johnh51@users.sourceforge.net |
Bram Moolenaar | 12969c0 | 2015-09-08 23:36:10 +0200 | [diff] [blame] | 6 | " Last Change: 2015-08-25 |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 7 | " Filenames: *.gnu *.plt *.gpi *.gih *.gp *.gnuplot scripts: #!*gnuplot |
| 8 | " URL: http://www.vim.org/scripts/script.php?script_id=4873 |
| 9 | " Original URL: http://johnh51.get.to/vim/syntax/gnuplot.vim |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 10 | |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 11 | " thanks to "David Necas (Yeti)" <yeti@physics.muni.cz> |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 12 | |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 13 | " credit also to Jim Eberle <jim.eberle@fastnlight.com> |
| 14 | " for the script http://www.vim.org/scripts/script.php?script_id=1737 |
| 15 | |
| 16 | " some shortened names to make demo files look clean... jeh. 11/2000 |
| 17 | " demos -> 3.8i ... jeh. 5/2003 - a work in progress... |
| 18 | " added current commands, keywords, variables, todos, macros... amr 2014-02-24 |
| 19 | |
| 20 | " For vim version 5.x: Clear all syntax items |
| 21 | " For vim version 6.x: Quit when a syntax file was already loaded |
| 22 | |
Bram Moolenaar | 89bcfda | 2016-08-30 23:26:57 +0200 | [diff] [blame] | 23 | " quit when a syntax file was already loaded |
| 24 | if exists("b:current_syntax") |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 25 | finish |
| 26 | endif |
| 27 | |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 28 | " ---- Special characters ---- " |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 29 | |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 30 | " no harm in just matching any \[char] within double quotes, right? |
| 31 | syn match gnuplotSpecial "\\." contained |
| 32 | " syn match gnuplotSpecial "\\\o\o\o\|\\x\x\x\|\\c[^"]\|\\[a-z\\]" contained |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 33 | |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 34 | " measurements in the units in, cm and pt are special |
| 35 | syn match gnuplotUnit "[0-9]+in" |
| 36 | syn match gnuplotUnit "[0-9]+cm" |
| 37 | syn match gnuplotUnit "[0-9]+pt" |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 38 | |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 39 | " external (shell) commands are special |
| 40 | syn region gnuplotExternal start="!" end="$" |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 41 | |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 42 | " ---- Comments ---- " |
| 43 | |
| 44 | syn region gnuplotComment start="#" end="$" contains=gnuplotTodo |
| 45 | |
| 46 | " ---- Constants ---- " |
| 47 | |
| 48 | " strings |
| 49 | syn region gnuplotString start=+"+ skip=+\\"+ end=+"+ contains=gnuplotSpecial |
| 50 | syn region gnuplotString start="'" end="'" |
| 51 | |
| 52 | " built-in variables |
| 53 | syn keyword gnuplotNumber GNUTERM GPVAL_TERM GPVAL_TERMOPTIONS GPVAL_SPLOT |
| 54 | syn keyword gnuplotNumber GPVAL_OUTPUT GPVAL_ENCODING GPVAL_VERSION |
| 55 | syn keyword gnuplotNumber GPVAL_PATCHLEVEL GPVAL_COMPILE_OPTIONS |
| 56 | syn keyword gnuplotNumber GPVAL_MULTIPLOT GPVAL_PLOT GPVAL_VIEW_ZSCALE |
| 57 | syn keyword gnuplotNumber GPVAL_TERMINALS GPVAL_pi GPVAL_NaN |
| 58 | syn keyword gnuplotNumber GPVAL_ERRNO GPVAL_ERRMSG GPVAL_PWD |
| 59 | syn keyword gnuplotNumber pi NaN GPVAL_LAST_PLOT GPVAL_TERM_WINDOWID |
| 60 | syn keyword gnuplotNumber GPVAL_X_MIN GPVAL_X_MAX GPVAL_X_LOG |
| 61 | syn keyword gnuplotNumber GPVAL_DATA_X_MIN GPVAL_DATA_X_MAX GPVAL_Y_MIN |
| 62 | syn keyword gnuplotNumber GPVAL_Y_MAX GPVAL_Y_LOG GPVAL_DATA_Y_MIN |
| 63 | syn keyword gnuplotNumber GPVAL_DATA_Y_MAX GPVAL_X2_MIN GPVAL_X2_MAX |
| 64 | syn keyword gnuplotNumber GPVAL_X2_LOG GPVAL_DATA_X2_MIN GPVAL_DATA_X2_MAX |
| 65 | syn keyword gnuplotNumber GPVAL_Y2_MIN GPVAL_Y2_MAX GPVAL_Y2_LOG |
| 66 | syn keyword gnuplotNumber GPVAL_DATA_Y2_MIN GPVAL_DATA_Y2_MAX GPVAL_Z_MIN |
| 67 | syn keyword gnuplotNumber GPVAL_Z_MAX GPVAL_Z_LOG GPVAL_DATA_Z_MIN |
| 68 | syn keyword gnuplotNumber GPVAL_DATA_Z_MAX GPVAL_CB_MIN GPVAL_CB_MAX |
| 69 | syn keyword gnuplotNumber GPVAL_CB_LOG GPVAL_DATA_CB_MIN GPVAL_DATA_CB_MAX |
| 70 | syn keyword gnuplotNumber GPVAL_T_MIN GPVAL_T_MAX GPVAL_T_LOG GPVAL_U_MIN |
| 71 | syn keyword gnuplotNumber GPVAL_U_MAX GPVAL_U_LOG GPVAL_V_MIN GPVAL_V_MAX |
| 72 | syn keyword gnuplotNumber GPVAL_V_LOG GPVAL_R_MIN GPVAL_R_LOG |
| 73 | syn keyword gnuplotNumber GPVAL_TERM_XMIN GPVAL_TERM_XMAX GPVAL_TERM_YMIN |
| 74 | syn keyword gnuplotNumber GPVAL_TERM_YMAX GPVAL_TERM_XSIZE |
| 75 | syn keyword gnuplotNumber GPVAL_TERM_YSIZE GPVAL_VIEW_MAP GPVAL_VIEW_ROT_X |
| 76 | syn keyword gnuplotNumber GPVAL_VIEW_ROT_Z GPVAL_VIEW_SCALE |
| 77 | |
| 78 | " function name variables |
| 79 | syn match gnuplotNumber "GPFUN_[a-zA-Z_]*" |
| 80 | |
| 81 | " stats variables |
| 82 | syn keyword gnuplotNumber STATS_records STATS_outofrange STATS_invalid |
| 83 | syn keyword gnuplotNumber STATS_blank STATS_blocks STATS_columns STATS_min |
| 84 | syn keyword gnuplotNumber STATS_max STATS_index_min STATS_index_max |
| 85 | syn keyword gnuplotNumber STATS_lo_quartile STATS_median STATS_up_quartile |
| 86 | syn keyword gnuplotNumber STATS_mean STATS_stddev STATS_sum STATS_sumsq |
| 87 | syn keyword gnuplotNumber STATS_correlation STATS_slope STATS_intercept |
| 88 | syn keyword gnuplotNumber STATS_sumxy STATS_pos_min_y STATS_pos_max_y |
| 89 | syn keyword gnuplotNumber STATS_mean STATS_stddev STATS_mean_x STATS_sum_x |
| 90 | syn keyword gnuplotNumber STATS_stddev_x STATS_sumsq_x STATS_min_x |
| 91 | syn keyword gnuplotNumber STATS_max_x STATS_median_x STATS_lo_quartile_x |
| 92 | syn keyword gnuplotNumber STATS_up_quartile_x STATS_index_min_x |
| 93 | syn keyword gnuplotNumber STATS_index_max_x STATS_mean_y STATS_stddev_y |
| 94 | syn keyword gnuplotNumber STATS_sum_y STATS_sumsq_y STATS_min_y |
| 95 | syn keyword gnuplotNumber STATS_max_y STATS_median_y STATS_lo_quartile_y |
| 96 | syn keyword gnuplotNumber STATS_up_quartile_y STATS_index_min_y |
| 97 | syn keyword gnuplotNumber STATS_index_max_y STATS_correlation STATS_sumxy |
| 98 | |
| 99 | " deprecated fit variables |
| 100 | syn keyword gnuplotError FIT_LIMIT FIT_MAXITER FIT_START_LAMBDA |
| 101 | syn keyword gnuplotError FIT_LAMBDA_FACTOR FIT_LOG FIT_SCRIPT |
| 102 | |
| 103 | " numbers, from c.vim |
| 104 | |
| 105 | " integer number, or floating point number without a dot and with "f". |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 106 | syn case ignore |
| 107 | syn match gnuplotNumber "\<[0-9]\+\(u\=l\=\|lu\|f\)\>" |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 108 | |
| 109 | " floating point number, with dot, optional exponent |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 110 | syn match gnuplotFloat "\<[0-9]\+\.[0-9]*\(e[-+]\=[0-9]\+\)\=[fl]\=\>" |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 111 | |
| 112 | " floating point number, starting with a dot, optional exponent |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 113 | syn match gnuplotFloat "\.[0-9]\+\(e[-+]\=[0-9]\+\)\=[fl]\=\>" |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 114 | |
| 115 | " floating point number, without dot, with exponent |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 116 | syn match gnuplotFloat "\<[0-9]\+e[-+]\=[0-9]\+[fl]\=\>" |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 117 | |
| 118 | " hex number |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 119 | syn match gnuplotNumber "\<0x[0-9a-f]\+\(u\=l\=\|lu\)\>" |
| 120 | syn case match |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 121 | |
| 122 | " flag an octal number with wrong digits by not highlighting |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 123 | syn match gnuplotOctalError "\<0[0-7]*[89]" |
| 124 | |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 125 | " ---- Identifiers: Functions ---- " |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 126 | |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 127 | " numerical functions |
| 128 | syn keyword gnuplotFunc abs acos acosh airy arg asin asinh atan atan2 |
| 129 | syn keyword gnuplotFunc atanh EllipticK EllipticE EllipticPi besj0 besj1 |
| 130 | syn keyword gnuplotFunc besy0 besy1 ceil cos cosh erf erfc exp expint |
| 131 | syn keyword gnuplotFunc floor gamma ibeta inverf igamma imag invnorm int |
| 132 | syn keyword gnuplotFunc lambertw lgamma log log10 norm rand real sgn sin |
| 133 | syn keyword gnuplotFunc sin sinh sqrt tan tanh voigt |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 134 | |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 135 | " string functions |
| 136 | syn keyword gnuplotFunc gprintf sprintf strlen strstrt substr strftime |
| 137 | syn keyword gnuplotFunc strptime system word words |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 138 | |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 139 | " other functions |
| 140 | syn keyword gnuplotFunc column columnhead columnheader defined exists |
| 141 | syn keyword gnuplotFunc hsv2rgb stringcolumn timecolumn tm_hour tm_mday |
| 142 | syn keyword gnuplotFunc tm_min tm_mon tm_sec tm_wday tm_yday tm_year |
| 143 | syn keyword gnuplotFunc time valid value |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 144 | |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 145 | " ---- Statements ---- " |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 146 | |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 147 | " common (builtin) variable names |
| 148 | syn keyword gnuplotKeyword x y t u v z s |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 149 | |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 150 | " conditionals |
| 151 | syn keyword gnuplotConditional if else |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 152 | |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 153 | " repeats |
| 154 | syn keyword gnuplotRepeat do for while |
| 155 | |
| 156 | " operators |
| 157 | syn match gnuplotOperator "[-+*/^|&?:]" |
| 158 | syn match gnuplotOperator "\*\*" |
| 159 | syn match gnuplotOperator "&&" |
| 160 | syn match gnuplotOperator "||" |
| 161 | |
| 162 | " Keywords |
| 163 | |
| 164 | " keywords for 'fit' command |
| 165 | syn keyword gnuplotKeyword via z x:z x:z:s x:y:z:s |
| 166 | syn keyword gnuplotKeyword x:y:t:z:s x:y:t:u:z:s x:y:t:u:v:z:s |
| 167 | |
| 168 | " keywords for 'plot' command |
| 169 | " 'axes' keyword |
| 170 | syn keyword gnuplotKeyword axes x1y1 x1y2 x2y1 x2y2 |
| 171 | " 'binary' keyword |
| 172 | syn keyword gnuplotKeyword binary matrix general array record format endian |
| 173 | syn keyword gnuplotKeyword filetype avs edf png scan transpose dx dy dz |
| 174 | syn keyword gnuplotKeyword flipx flipy flipz origin center rotate using |
| 175 | syn keyword gnuplotKeyword perpendicular skip every |
| 176 | " datafile keywords |
| 177 | syn keyword gnuplotKeyword binary nonuniform matrix index every using |
| 178 | syn keyword gnuplotKeyword smooth volatile noautoscale every index |
| 179 | " 'smooth' keywords |
| 180 | syn keyword gnuplotKeyword unique frequency cumulative cnormal kdensity |
| 181 | syn keyword gnuplotKeyword csplines acsplines bezer sbezier |
| 182 | " deprecated 'thru' keyword |
| 183 | syn keyword gnuplotError thru |
| 184 | " 'using' keyword |
| 185 | syn keyword gnuplotKeyword using u xticlabels yticlabels zticlabels |
| 186 | syn keyword gnuplotKeyword x2ticlabels y2ticlabels xtic ytic ztic |
| 187 | " 'errorbars' keywords |
| 188 | syn keyword gnuplotKeyword errorbars xerrorbars yerrorbars xyerrorbars |
| 189 | " 'errorlines' keywords |
| 190 | syn keyword gnuplotKeyword errorlines xerrorlines yerrorlines xyerrorlines |
| 191 | " 'title' keywords |
| 192 | syn keyword gnuplotKeyword title t tit notitle columnheader at beginning |
| 193 | syn keyword gnuplotKeyword end |
| 194 | " 'with' keywords |
| 195 | syn keyword gnuplotKeyword with w linestyle ls linetype lt linewidth |
| 196 | syn keyword gnuplotKeyword lw linecolor lc pointtype pt pointsize ps |
| 197 | syn keyword gnuplotKeyword fill fs nohidden3d nocontours nosurface palette |
| 198 | " styles for 'with' |
| 199 | syn keyword gnuplotKeyword lines l points p linespoints lp surface dots |
| 200 | syn keyword gnuplotKeyword impulses labels vectors steps fsteps histeps |
| 201 | syn keyword gnuplotKeyword errorbars errorlines financebars xerrorbars |
| 202 | syn keyword gnuplotKeyword xerrorlines xyerrorbars yerrorbars yerrorlines |
| 203 | syn keyword gnuplotKeyword boxes boxerrorbars boxxyerrorbars boxplot |
| 204 | syn keyword gnuplotKeyword candlesticks circles ellipses filledcurves |
| 205 | syn keyword gnuplotKeyword histogram image rgbimage rgbalpha pm3d variable |
| 206 | |
| 207 | " keywords for 'save' command |
| 208 | syn keyword gnuplotKeyword save functions func variables all var terminal |
| 209 | syn keyword gnuplotKeyword term set |
| 210 | |
| 211 | " keywords for 'set/show' command |
| 212 | " set angles |
| 213 | syn keyword gnuplotKeyword angles degrees deg radians rad |
| 214 | " set arrow |
| 215 | syn keyword gnuplotKeyword arrow from to rto length angle arrowstyle as |
| 216 | syn keyword gnuplotKeyword nohead head backhead heads size filled empty |
| 217 | syn keyword gnuplotKeyword nofilled front back linestyle linetype linewidth |
| 218 | " set autoscale |
| 219 | " TODO regexp here |
| 220 | syn keyword gnuplotKeyword autoscale x y z cb x2 y2 zy min max fixmin |
| 221 | syn keyword gnuplotKeyword fixmax fix keepfix noextend |
| 222 | " set bars |
| 223 | syn keyword gnuplotKeyword bars small large fullwidth front back |
| 224 | " set bind |
| 225 | syn keyword gnuplotKeyword bind |
| 226 | " set margins |
| 227 | " TODO regexp |
| 228 | syn keyword gnuplotKeyword margin bmargin lmargin rmargin tmargin |
| 229 | " set border |
| 230 | syn keyword gnuplotKeyword border front back |
| 231 | " set boxwidth |
| 232 | syn keyword gnuplotKeyword boxwidth absolute relative |
| 233 | " deprecated set clabel |
| 234 | syn keyword gnuplotError clabel |
| 235 | " set clip |
| 236 | syn keyword gnuplotKeyword clip points one two |
| 237 | " set cntrlabel |
| 238 | syn keyword gnuplotKeyword cntrlabel format font start interval onecolor |
| 239 | " set cntrparam |
| 240 | syn keyword gnuplotKeyword cntrparam linear cubicspline bspline points |
| 241 | syn keyword gnuplotKeyword order levels auto discrete incremental |
| 242 | " set colorbox |
| 243 | syn keyword gnuplotKeyword colorbox vertical horizontal default user origin |
| 244 | syn keyword gnuplotKeyword size front back noborder bdefault border |
| 245 | " show colornames |
| 246 | syn keyword gnuplotKeyword colornames |
| 247 | " set contour |
| 248 | syn keyword gnuplotKeyword contour base surface both |
| 249 | " set datafile |
| 250 | syn keyword gnuplotKeyword datafile fortran nofpe_trap missing separator |
| 251 | syn keyword gnuplotKeyword whitespace tab comma commentschars binary |
| 252 | " set decimalsign |
| 253 | syn keyword gnuplotKeyword decimalsign locale |
| 254 | " set dgrid3d |
| 255 | syn keyword gnuplotKeyword dgrid3d splines qnorm gauss cauchy exp box hann |
| 256 | syn keyword gnuplotKeyword kdensity |
| 257 | " set dummy |
| 258 | syn keyword gnuplotKeyword dummy |
| 259 | " set encoding |
| 260 | syn keyword gnuplotKeyword encoding default iso_8859_1 iso_8859_15 |
| 261 | syn keyword gnuplotKeyword iso_8859_2 iso_8859_9 koi8r koi8u cp437 cp850 |
| 262 | syn keyword gnuplotKeyword cp852 cp950 cp1250 cp1251 cp1254 sjis utf8 |
| 263 | " set fit |
| 264 | syn keyword gnuplotKeyword fit logfile default quiet noquiet results brief |
| 265 | syn keyword gnuplotKeyword verbose errorvariables noerrorvariables |
| 266 | syn keyword gnuplotKeyword errorscaling noerrorscaling prescale noprescale |
| 267 | syn keyword gnuplotKeyword maxiter none limit limit_abs start-lambda script |
| 268 | syn keyword gnuplotKeyword lambda-factor |
| 269 | " set fontpath |
| 270 | syn keyword gnuplotKeyword fontpath |
| 271 | " set format |
| 272 | syn keyword gnuplotKeyword format |
| 273 | " show functions |
| 274 | syn keyword gnuplotKeyword functions |
| 275 | " set grid |
| 276 | syn keyword gnuplotKeyword grid polar layerdefault xtics ytics ztics x2tics |
| 277 | syn keyword gnuplotKeyword y2tics cbtics mxtics mytics mztics mx2tics |
| 278 | syn keyword gnuplotKeyword my2tics mcbtics xmtics ymtics zmtics x2mtics |
| 279 | syn keyword gnuplotKeyword y2mtics cbmtics noxtics noytics noztics nox2tics |
| 280 | syn keyword gnuplotKeyword noy2tics nocbtics nomxtics nomytics nomztics |
| 281 | syn keyword gnuplotKeyword nomx2tics nomy2tics nomcbtics |
| 282 | " set hidden3d |
| 283 | syn keyword gnuplotKeyword hidden3d offset trianglepattern undefined |
| 284 | syn keyword gnuplotKeyword altdiagonal noaltdiagonal bentover nobentover |
| 285 | syn keyword gnuplotKeyword noundefined |
| 286 | " set historysize |
| 287 | syn keyword gnuplotKeyword historysize |
| 288 | " set isosamples |
| 289 | syn keyword gnuplotKeyword isosamples |
| 290 | " set key |
| 291 | syn keyword gnuplotKeyword key on off inside outside at left right center |
| 292 | syn keyword gnuplotKeyword top bottom vertical horizontal Left Right |
| 293 | syn keyword gnuplotKeyword opaque noopaque reverse noreverse invert maxrows |
| 294 | syn keyword gnuplotKeyword noinvert samplen spacing width height autotitle |
| 295 | syn keyword gnuplotKeyword noautotitle title enhanced noenhanced font |
| 296 | syn keyword gnuplotKeyword textcolor box nobox linetype linewidth maxcols |
| 297 | " set label |
| 298 | syn keyword gnuplotKeyword label left center right rotate norotate by font |
| 299 | syn keyword gnuplotKeyword front back textcolor point nopoint offset boxed |
| 300 | syn keyword gnuplotKeyword hypertext |
| 301 | " set linetype |
| 302 | syn keyword gnuplotKeyword linetype |
| 303 | " set link |
| 304 | syn keyword gnuplotKeyword link via inverse |
| 305 | " set loadpath |
| 306 | syn keyword gnuplotKeyword loadpath |
| 307 | " set locale |
| 308 | syn keyword gnuplotKeyword locale |
| 309 | " set logscale |
| 310 | syn keyword gnuplotKeyword logscale log |
| 311 | " set macros |
| 312 | syn keyword gnuplotKeyword macros |
| 313 | " set mapping |
| 314 | syn keyword gnuplotKeyword mapping cartesian spherical cylindrical |
| 315 | " set mouse |
| 316 | syn keyword gnuplotKeyword mouse doubleclick nodoubleclick zoomcoordinates |
| 317 | syn keyword gnuplotKeyword nozoomcoordinates ruler noruler at polardistance |
| 318 | syn keyword gnuplotKeyword nopolardistance deg tan format clipboardformat |
| 319 | syn keyword gnuplotKeyword mouseformat labels nolabels zoomjump nozoomjump |
| 320 | syn keyword gnuplotKeyword verbose noverbose |
| 321 | " set multiplot |
| 322 | syn keyword gnuplotKeyword multiplot title font layout rowsfirst downwards |
| 323 | syn keyword gnuplotKeyword downwards upwards scale offset |
| 324 | " set object |
| 325 | syn keyword gnuplotKeyword object behind fillcolor fc fs rectangle ellipse |
| 326 | syn keyword gnuplotKeyword circle polygon at center size units xy xx yy to |
| 327 | syn keyword gnuplotKeyword from |
| 328 | " set offsets |
| 329 | syn keyword gnuplotKeyword offsets |
| 330 | " set origin |
| 331 | syn keyword gnuplotKeyword origin |
| 332 | " set output |
| 333 | syn keyword gnuplotKeyword output |
| 334 | " set parametric |
| 335 | syn keyword gnuplotKeyword parametric |
| 336 | " show plot |
| 337 | syn keyword gnuplotKeyword plot add2history |
| 338 | " set pm3d |
| 339 | syn keyword gnuplotKeyword hidden3d interpolate scansautomatic scansforward |
| 340 | syn keyword gnuplotKeyword scansbackward depthorder flush begin center end |
| 341 | syn keyword gnuplotKeyword ftriangles noftriangles clip1in clip4in mean map |
| 342 | syn keyword gnuplotKeyword corners2color geomean harmean rms median min max |
| 343 | syn keyword gnuplotKeyword c1 c2 c3 c4 pm3d at nohidden3d implicit explicit |
| 344 | " set palette |
| 345 | syn keyword gnuplotKeyword palette gray color gamma rgbformulae defined |
| 346 | syn keyword gnuplotKeyword file functions cubehelix start cycles saturation |
| 347 | syn keyword gnuplotKeyword model RGB HSV CMY YIQ XYZ positive negative |
| 348 | syn keyword gnuplotKeyword nops_allcF ps_allcF maxcolors float int gradient |
| 349 | syn keyword gnuplotKeyword fit2rgbformulae rgbformulae |
| 350 | " set pointintervalbox |
| 351 | syn keyword gnuplotKeyword pointintervalbox |
| 352 | " set pointsize |
| 353 | syn keyword gnuplotKeyword pointsize |
| 354 | " set polar |
| 355 | syn keyword gnuplotKeyword polar |
| 356 | " set print |
| 357 | syn keyword gnuplotKeyword print append |
| 358 | " set psdir |
| 359 | syn keyword gnuplotKeyword psdir |
| 360 | " set raxis |
| 361 | syn keyword gnuplotKeyword raxis rrange rtics |
| 362 | " set samples |
| 363 | syn keyword gnuplotKeyword samples |
| 364 | " set size |
| 365 | syn keyword gnuplotKeyword size square nosquare ratio noratio |
| 366 | " set style |
Bram Moolenaar | 12969c0 | 2015-09-08 23:36:10 +0200 | [diff] [blame] | 367 | syn keyword gnuplotKeyword style arrow auto back border boxplot |
| 368 | syn keyword gnuplotKeyword candlesticks circle clustered columnstacked data |
| 369 | syn keyword gnuplotKeyword default ellipse empty fill[ed] financebars |
| 370 | syn keyword gnuplotKeyword fraction front function gap graph head[s] |
| 371 | syn keyword gnuplotKeyword histogram increment labels lc line linecolor |
| 372 | syn keyword gnuplotKeyword linetype linewidth lt lw noborder nofilled |
| 373 | syn keyword gnuplotKeyword nohead nooutliers nowedge off opaque outliers |
| 374 | syn keyword gnuplotKeyword palette pattern pi pointinterval pointsize |
| 375 | syn keyword gnuplotKeyword pointtype ps pt radius range rectangle |
| 376 | syn keyword gnuplotKeyword rowstacked screen separation size solid sorted |
| 377 | syn keyword gnuplotKeyword textbox transparent units unsorted userstyles |
| 378 | syn keyword gnuplotKeyword wedge x x2 xx xy yy |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 379 | " set surface |
| 380 | syn keyword gnuplotKeyword surface implicit explicit |
| 381 | " set table |
| 382 | syn keyword gnuplotKeyword table |
| 383 | " set terminal (list of terminals) |
| 384 | syn keyword gnuplotKeyword terminal term push pop aed512 aed767 aifm aqua |
| 385 | syn keyword gnuplotKeyword be cairo cairolatex canvas cgm context corel |
| 386 | syn keyword gnuplotKeyword debug dumb dxf dxy800a eepic emf emxvga epscairo |
| 387 | syn keyword gnuplotKeyword epslatex epson_180dpi excl fig ggi gif gpic hpgl |
| 388 | syn keyword gnuplotKeyword grass hp2623a hp2648 hp500c hpljii hppj imagen |
| 389 | syn keyword gnuplotKeyword jpeg kyo latex linux lua mf mif mp next openstep |
| 390 | syn keyword gnuplotKeyword pbm pdf pdfcairo pm png pngcairo postscript |
| 391 | syn keyword gnuplotKeyword pslatex pstex pstricks qms qt regis sun svg svga |
| 392 | syn keyword gnuplotKeyword tek40 tek410x texdraw tgif tikz tkcanvas tpic |
| 393 | syn keyword gnuplotKeyword vgagl vws vx384 windows wx wxt x11 xlib |
| 394 | " keywords for 'set terminal' |
| 395 | syn keyword gnuplotKeyword color monochrome dashlength dl eps pdf fontscale |
| 396 | syn keyword gnuplotKeyword standalone blacktext colortext colourtext header |
| 397 | syn keyword gnuplotKeyword noheader mono color solid dashed notransparent |
| 398 | syn keyword gnuplotKeyword crop crop background input rounded butt square |
| 399 | syn keyword gnuplotKeyword size fsize standalone name jsdir defaultsize |
| 400 | syn keyword gnuplotKeyword timestamp notimestamp colour mitered beveled |
| 401 | syn keyword gnuplotKeyword round squared palfuncparam blacktext nec_cp6 |
| 402 | syn keyword gnuplotKeyword mppoints inlineimages externalimages defaultfont |
| 403 | syn keyword gnuplotKeyword aspect feed nofeed rotate small tiny standalone |
| 404 | syn keyword gnuplotKeyword oldstyle newstyle level1 leveldefault level3 |
| 405 | syn keyword gnuplotKeyword background nobackground solid clip noclip |
| 406 | syn keyword gnuplotKeyword colortext colourtext epson_60dpi epson_lx800 |
| 407 | syn keyword gnuplotKeyword okidata starc tandy_60dpi dpu414 nec_cp6 draft |
| 408 | syn keyword gnuplotKeyword medium large normal landscape portrait big |
| 409 | syn keyword gnuplotKeyword inches pointsmax textspecial texthidden |
| 410 | syn keyword gnuplotKeyword thickness depth version acceleration giant |
| 411 | syn keyword gnuplotKeyword delay loop optimize nooptimize pspoints |
| 412 | syn keyword gnuplotKeyword FNT9X17 FNT13X25 interlace nointerlace courier |
| 413 | syn keyword gnuplotKeyword originreset nooriginreset gparrows nogparrows |
| 414 | syn keyword gnuplotKeyword picenvironment nopicenvironment tightboundingbox |
| 415 | syn keyword gnuplotKeyword notightboundingbox charsize gppoints nogppoints |
| 416 | syn keyword gnuplotKeyword fontscale textscale fulldoc nofulldoc standalone |
| 417 | syn keyword gnuplotKeyword preamble header tikzplot tikzarrows notikzarrows |
| 418 | syn keyword gnuplotKeyword cmykimages externalimages noexternalimages |
| 419 | syn keyword gnuplotKeyword polyline vectors magnification psnfss nopsnfss |
| 420 | syn keyword gnuplotKeyword psnfss-version7 prologues a4paper amstex fname |
| 421 | syn keyword gnuplotKeyword fsize server persist widelines interlace |
| 422 | syn keyword gnuplotKeyword truecolor notruecolor defaultplex simplex duplex |
| 423 | syn keyword gnuplotKeyword nofontfiles adobeglyphnames noadobeglyphnames |
| 424 | syn keyword gnuplotKeyword nostandalone metric textrigid animate nopspoints |
| 425 | syn keyword gnuplotKeyword hpdj FNT5X9 roman emtex rgbimages bitmap |
| 426 | syn keyword gnuplotKeyword nobitmap providevars nointerlace add delete |
| 427 | syn keyword gnuplotKeyword auxfile hacktext unit raise palfuncparam |
| 428 | syn keyword gnuplotKeyword noauxfile nohacktext nounit noraise ctrl noctrl |
| 429 | syn keyword gnuplotKeyword close widget fixed dynamic tek40xx vttek |
| 430 | syn keyword gnuplotKeyword kc-tek40xx km-tek40xx bitgraph perltk |
| 431 | syn keyword gnuplotKeyword interactive red green blue interpolate mode |
| 432 | syn keyword gnuplotKeyword position ctrlq replotonresize position noctrlq |
| 433 | syn keyword gnuplotKeyword noreplotonresize |
| 434 | " set termoption |
| 435 | syn keyword gnuplotKeyword termoption font fontscale solid dashed |
| 436 | " set tics |
| 437 | syn keyword gnuplotKeyword tics add axis border mirror nomirror in out |
| 438 | syn keyword gnuplotKeyword scale rotate norotate by offset nooffset left |
| 439 | syn keyword gnuplotKeyword autojustify format font textcolor right center |
| 440 | " deprecated set ticslevel |
| 441 | syn keyword gnuplotError ticslevel ticscale |
| 442 | " set timestamp |
| 443 | syn keyword gnuplotKeyword timestamp top bottom offset font |
| 444 | " set timefmt |
| 445 | syn keyword gnuplotKeyword timefmt |
| 446 | " set title |
| 447 | syn keyword gnuplotKeyword title offset font textcolor tc |
| 448 | " set ranges |
| 449 | syn keyword gnuplotKeyword trange urange vrange |
| 450 | " show variables |
| 451 | syn keyword gnuplotKeyword variables |
| 452 | " show version |
| 453 | syn keyword gnuplotKeyword version |
| 454 | " set view |
| 455 | syn keyword gnuplotKeyword view map equal noequal xy xyz |
| 456 | " set x2data |
| 457 | syn keyword gnuplotKeyword xdata ydata zdata x2data y2data cbdata xdtics |
| 458 | syn keyword gnuplotKeyword ydtics zdtics x2dtics y2dtics cbdtics xzeroaxis |
| 459 | syn keyword gnuplotKeyword yzeroaxis zzeroaxis x2zeroaxis y2zeroaxis |
| 460 | syn keyword gnuplotKeyword cbzeroaxis time geographic |
| 461 | " set label |
| 462 | syn keyword gnuplotKeyword xlabel ylabel zlabel x2label y2label cblabel |
| 463 | syn keyword gnuplotKeyword offset font textcolor by parallel |
| 464 | " set range |
| 465 | syn keyword gnuplotKeyword xrange yrange zrange x2range y2range cbrange |
| 466 | " set xyplane |
| 467 | syn keyword gnuplotKeyword xyplane |
| 468 | " set zeroaxis |
| 469 | " set zero |
| 470 | syn keyword gnuplotKeyword zero |
| 471 | " set zeroaxis |
| 472 | syn keyword gnuplotKeyword zeroaxis |
| 473 | |
| 474 | " keywords for 'stats' command |
| 475 | syn keyword gnuplotKeyword nooutput |
| 476 | |
| 477 | " keywords for 'test' command |
| 478 | syn keyword gnuplotKeyword terminal palette rgb rbg grb gbr brg bgr |
| 479 | |
| 480 | " ---- Macros ---- " |
| 481 | |
| 482 | syn region gnuplotMacro start="@" end=" " |
| 483 | |
| 484 | " ---- Todos ---- " |
| 485 | |
| 486 | syn keyword gnuplotTodo contained TODO FIXME XXX |
| 487 | |
| 488 | " ---- Types: gnuplot commands ---- " |
| 489 | |
| 490 | " I set the commands as Types to distinguish them visually from keywords for the |
| 491 | " commands. This comes at the end of the syntax file because some commands |
| 492 | " are redundant with keywords. It's probably too much trouble to go and |
| 493 | " create special regions for each redundant keyword/command pair, which means |
| 494 | " that some keywords (e.g. 'p') will be highlighted as commands. |
| 495 | |
| 496 | syn keyword gnuplotStatement cd call clear evaluate exit fit help history |
| 497 | syn keyword gnuplotStatement load lower pause plot p print pwd quit raise |
| 498 | syn keyword gnuplotStatement refresh replot rep reread reset save set show |
Bram Moolenaar | 12969c0 | 2015-09-08 23:36:10 +0200 | [diff] [blame] | 499 | syn keyword gnuplotStatement shell splot spstats stats system test undefine |
| 500 | syn keyword gnuplotStatement unset update |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 501 | |
| 502 | " ---- Define the default highlighting ---- " |
Bram Moolenaar | 89bcfda | 2016-08-30 23:26:57 +0200 | [diff] [blame] | 503 | " Only when an item doesn't have highlighting yet |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 504 | |
Bram Moolenaar | 89bcfda | 2016-08-30 23:26:57 +0200 | [diff] [blame] | 505 | " ---- Comments ---- " |
Bram Moolenaar | f37506f | 2016-08-31 22:22:10 +0200 | [diff] [blame] | 506 | hi def link gnuplotComment Comment |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 507 | |
Bram Moolenaar | 89bcfda | 2016-08-30 23:26:57 +0200 | [diff] [blame] | 508 | " ---- Constants ---- " |
Bram Moolenaar | f37506f | 2016-08-31 22:22:10 +0200 | [diff] [blame] | 509 | hi def link gnuplotString String |
| 510 | hi def link gnuplotNumber Number |
| 511 | hi def link gnuplotFloat Float |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 512 | |
Bram Moolenaar | 89bcfda | 2016-08-30 23:26:57 +0200 | [diff] [blame] | 513 | " ---- Identifiers ---- " |
Bram Moolenaar | f37506f | 2016-08-31 22:22:10 +0200 | [diff] [blame] | 514 | hi def link gnuplotIdentifier Identifier |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 515 | |
Bram Moolenaar | 89bcfda | 2016-08-30 23:26:57 +0200 | [diff] [blame] | 516 | " ---- Statements ---- " |
Bram Moolenaar | f37506f | 2016-08-31 22:22:10 +0200 | [diff] [blame] | 517 | hi def link gnuplotConditional Conditional |
| 518 | hi def link gnuplotRepeat Repeat |
| 519 | hi def link gnuplotKeyword Keyword |
| 520 | hi def link gnuplotOperator Operator |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 521 | |
Bram Moolenaar | 89bcfda | 2016-08-30 23:26:57 +0200 | [diff] [blame] | 522 | " ---- PreProcs ---- " |
Bram Moolenaar | f37506f | 2016-08-31 22:22:10 +0200 | [diff] [blame] | 523 | hi def link gnuplotMacro Macro |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 524 | |
Bram Moolenaar | 89bcfda | 2016-08-30 23:26:57 +0200 | [diff] [blame] | 525 | " ---- Types ---- " |
Bram Moolenaar | f37506f | 2016-08-31 22:22:10 +0200 | [diff] [blame] | 526 | hi def link gnuplotStatement Type |
| 527 | hi def link gnuplotFunc Identifier |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 528 | |
Bram Moolenaar | 89bcfda | 2016-08-30 23:26:57 +0200 | [diff] [blame] | 529 | " ---- Specials ---- " |
Bram Moolenaar | f37506f | 2016-08-31 22:22:10 +0200 | [diff] [blame] | 530 | hi def link gnuplotSpecial Special |
| 531 | hi def link gnuplotUnit Special |
| 532 | hi def link gnuplotExternal Special |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 533 | |
Bram Moolenaar | 89bcfda | 2016-08-30 23:26:57 +0200 | [diff] [blame] | 534 | " ---- Errors ---- " |
Bram Moolenaar | f37506f | 2016-08-31 22:22:10 +0200 | [diff] [blame] | 535 | hi def link gnuplotError Error |
| 536 | hi def link gnuplotOctalError Error |
Bram Moolenaar | fb53927 | 2014-08-22 19:21:47 +0200 | [diff] [blame] | 537 | |
Bram Moolenaar | 89bcfda | 2016-08-30 23:26:57 +0200 | [diff] [blame] | 538 | " ---- Todos ---- " |
Bram Moolenaar | f37506f | 2016-08-31 22:22:10 +0200 | [diff] [blame] | 539 | hi def link gnuplotTodo Todo |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 540 | |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 541 | |
| 542 | let b:current_syntax = "gnuplot" |
| 543 | |
| 544 | " vim: ts=8 |