...

Text file src/github.com/alecthomas/chroma/v2/lexers/embedded/gnuplot.xml

Documentation: github.com/alecthomas/chroma/v2/lexers/embedded

     1<lexer>
     2  <config>
     3    <name>Gnuplot</name>
     4    <alias>gnuplot</alias>
     5    <filename>*.plot</filename>
     6    <filename>*.plt</filename>
     7    <mime_type>text/x-gnuplot</mime_type>
     8  </config>
     9  <rules>
    10    <state name="whitespace">
    11      <rule pattern="#">
    12        <token type="Comment"/>
    13        <push state="comment"/>
    14      </rule>
    15      <rule pattern="[ \t\v\f]+">
    16        <token type="Text"/>
    17      </rule>
    18    </state>
    19    <state name="save">
    20      <rule pattern="functions\b|function\b|functio\b|functi\b|funct\b|func\b|fun\b|fu\b|f\b|set\b|se\b|s\b|terminal\b|termina\b|termin\b|termi\b|term\b|ter\b|te\b|t\b|variables\b|variable\b|variabl\b|variab\b|varia\b|vari\b|var\b|va\b|v\b">
    21        <token type="NameBuiltin"/>
    22      </rule>
    23      <rule>
    24        <include state="genericargs"/>
    25      </rule>
    26    </state>
    27    <state name="pause">
    28      <rule pattern="(mouse|any|button1|button2|button3)\b">
    29        <token type="NameBuiltin"/>
    30      </rule>
    31      <rule pattern="keypress\b|keypres\b|keypre\b|keypr\b|keyp\b|key\b">
    32        <token type="NameBuiltin"/>
    33      </rule>
    34      <rule>
    35        <include state="genericargs"/>
    36      </rule>
    37    </state>
    38    <state name="plot">
    39      <rule pattern="axes\b|axe\b|ax\b|axis\b|axi\b|binary\b|binar\b|bina\b|bin\b|every\b|ever\b|eve\b|ev\b|index\b|inde\b|ind\b|in\b|i\b|matrix\b|matri\b|matr\b|mat\b|smooth\b|smoot\b|smoo\b|smo\b|sm\b|s\b|thru\b|title\b|titl\b|tit\b|ti\b|t\b|notitle\b|notitl\b|notit\b|noti\b|not\b|using\b|usin\b|usi\b|us\b|u\b|with\b|wit\b|wi\b|w\b">
    40        <token type="NameBuiltin"/>
    41      </rule>
    42      <rule>
    43        <include state="genericargs"/>
    44      </rule>
    45    </state>
    46    <state name="if">
    47      <rule pattern="\)">
    48        <token type="Punctuation"/>
    49        <pop depth="1"/>
    50      </rule>
    51      <rule>
    52        <include state="genericargs"/>
    53      </rule>
    54    </state>
    55    <state name="genericargs">
    56      <rule>
    57        <include state="noargs"/>
    58      </rule>
    59      <rule pattern="&#34;">
    60        <token type="LiteralString"/>
    61        <push state="dqstring"/>
    62      </rule>
    63      <rule pattern="&#39;">
    64        <token type="LiteralString"/>
    65        <push state="sqstring"/>
    66      </rule>
    67      <rule pattern="(\d+\.\d*|\.\d+|\d+)[eE][+-]?\d+">
    68        <token type="LiteralNumberFloat"/>
    69      </rule>
    70      <rule pattern="(\d+\.\d*|\.\d+)">
    71        <token type="LiteralNumberFloat"/>
    72      </rule>
    73      <rule pattern="-?\d+">
    74        <token type="LiteralNumberInteger"/>
    75      </rule>
    76      <rule pattern="[,.~!%^&amp;*+=|?:&lt;&gt;/-]">
    77        <token type="Operator"/>
    78      </rule>
    79      <rule pattern="[{}()\[\]]">
    80        <token type="Punctuation"/>
    81      </rule>
    82      <rule pattern="(eq|ne)\b">
    83        <token type="OperatorWord"/>
    84      </rule>
    85      <rule pattern="([a-zA-Z_]\w*)(\s*)(\()">
    86        <bygroups>
    87          <token type="NameFunction"/>
    88          <token type="Text"/>
    89          <token type="Punctuation"/>
    90        </bygroups>
    91      </rule>
    92      <rule pattern="[a-zA-Z_]\w*">
    93        <token type="Name"/>
    94      </rule>
    95      <rule pattern="@[a-zA-Z_]\w*">
    96        <token type="NameConstant"/>
    97      </rule>
    98      <rule pattern="\\\n">
    99        <token type="Text"/>
   100      </rule>
   101    </state>
   102    <state name="comment">
   103      <rule pattern="[^\\\n]">
   104        <token type="Comment"/>
   105      </rule>
   106      <rule pattern="\\\n">
   107        <token type="Comment"/>
   108      </rule>
   109      <rule pattern="\\">
   110        <token type="Comment"/>
   111      </rule>
   112      <rule>
   113        <pop depth="1"/>
   114      </rule>
   115    </state>
   116    <state name="root">
   117      <rule>
   118        <include state="whitespace"/>
   119      </rule>
   120      <rule pattern="bind\b|bin\b|bi\b">
   121        <token type="Keyword"/>
   122        <push state="bind"/>
   123      </rule>
   124      <rule pattern="exit\b|exi\b|ex\b|quit\b|qui\b|qu\b|q\b">
   125        <token type="Keyword"/>
   126        <push state="quit"/>
   127      </rule>
   128      <rule pattern="fit\b|fi\b|f\b">
   129        <token type="Keyword"/>
   130        <push state="fit"/>
   131      </rule>
   132      <rule pattern="(if)(\s*)(\()">
   133        <bygroups>
   134          <token type="Keyword"/>
   135          <token type="Text"/>
   136          <token type="Punctuation"/>
   137        </bygroups>
   138        <push state="if"/>
   139      </rule>
   140      <rule pattern="else\b">
   141        <token type="Keyword"/>
   142      </rule>
   143      <rule pattern="pause\b|paus\b|pau\b|pa\b">
   144        <token type="Keyword"/>
   145        <push state="pause"/>
   146      </rule>
   147      <rule pattern="plot\b|plo\b|pl\b|p\b|replot\b|replo\b|repl\b|rep\b|splot\b|splo\b|spl\b|sp\b">
   148        <token type="Keyword"/>
   149        <push state="plot"/>
   150      </rule>
   151      <rule pattern="save\b|sav\b|sa\b">
   152        <token type="Keyword"/>
   153        <push state="save"/>
   154      </rule>
   155      <rule pattern="set\b|se\b">
   156        <token type="Keyword"/>
   157        <push state="genericargs" state="optionarg"/>
   158      </rule>
   159      <rule pattern="show\b|sho\b|sh\b|unset\b|unse\b|uns\b">
   160        <token type="Keyword"/>
   161        <push state="noargs" state="optionarg"/>
   162      </rule>
   163      <rule pattern="lower\b|lowe\b|low\b|raise\b|rais\b|rai\b|ra\b|call\b|cal\b|ca\b|cd\b|clear\b|clea\b|cle\b|cl\b|help\b|hel\b|he\b|h\b|\?\b|history\b|histor\b|histo\b|hist\b|his\b|hi\b|load\b|loa\b|lo\b|l\b|print\b|prin\b|pri\b|pr\b|pwd\b|reread\b|rerea\b|rere\b|rer\b|re\b|reset\b|rese\b|res\b|screendump\b|screendum\b|screendu\b|screend\b|screen\b|scree\b|scre\b|scr\b|shell\b|shel\b|she\b|system\b|syste\b|syst\b|sys\b|sy\b|update\b|updat\b|upda\b|upd\b|up\b">
   164        <token type="Keyword"/>
   165        <push state="genericargs"/>
   166      </rule>
   167      <rule pattern="pwd\b|reread\b|rerea\b|rere\b|rer\b|re\b|reset\b|rese\b|res\b|screendump\b|screendum\b|screendu\b|screend\b|screen\b|scree\b|scre\b|scr\b|shell\b|shel\b|she\b|test\b">
   168        <token type="Keyword"/>
   169        <push state="noargs"/>
   170      </rule>
   171      <rule pattern="([a-zA-Z_]\w*)(\s*)(=)">
   172        <bygroups>
   173          <token type="NameVariable"/>
   174          <token type="Text"/>
   175          <token type="Operator"/>
   176        </bygroups>
   177        <push state="genericargs"/>
   178      </rule>
   179      <rule pattern="([a-zA-Z_]\w*)(\s*\(.*?\)\s*)(=)">
   180        <bygroups>
   181          <token type="NameFunction"/>
   182          <token type="Text"/>
   183          <token type="Operator"/>
   184        </bygroups>
   185        <push state="genericargs"/>
   186      </rule>
   187      <rule pattern="@[a-zA-Z_]\w*">
   188        <token type="NameConstant"/>
   189      </rule>
   190      <rule pattern=";">
   191        <token type="Keyword"/>
   192      </rule>
   193    </state>
   194    <state name="dqstring">
   195      <rule pattern="&#34;">
   196        <token type="LiteralString"/>
   197        <pop depth="1"/>
   198      </rule>
   199      <rule pattern="\\([\\abfnrtv&#34;\&#39;]|x[a-fA-F0-9]{2,4}|[0-7]{1,3})">
   200        <token type="LiteralStringEscape"/>
   201      </rule>
   202      <rule pattern="[^\\&#34;\n]+">
   203        <token type="LiteralString"/>
   204      </rule>
   205      <rule pattern="\\\n">
   206        <token type="LiteralString"/>
   207      </rule>
   208      <rule pattern="\\">
   209        <token type="LiteralString"/>
   210      </rule>
   211      <rule pattern="\n">
   212        <token type="LiteralString"/>
   213        <pop depth="1"/>
   214      </rule>
   215    </state>
   216    <state name="optionarg">
   217      <rule>
   218        <include state="whitespace"/>
   219      </rule>
   220      <rule pattern="all\b|al\b|a\b|angles\b|angle\b|angl\b|ang\b|an\b|arrow\b|arro\b|arr\b|ar\b|autoscale\b|autoscal\b|autosca\b|autosc\b|autos\b|auto\b|aut\b|au\b|bars\b|bar\b|ba\b|b\b|border\b|borde\b|bord\b|bor\b|boxwidth\b|boxwidt\b|boxwid\b|boxwi\b|boxw\b|box\b|clabel\b|clabe\b|clab\b|cla\b|cl\b|clip\b|cli\b|cl\b|c\b|cntrparam\b|cntrpara\b|cntrpar\b|cntrpa\b|cntrp\b|cntr\b|cnt\b|cn\b|contour\b|contou\b|conto\b|cont\b|con\b|co\b|data\b|dat\b|da\b|datafile\b|datafil\b|datafi\b|dataf\b|data\b|dgrid3d\b|dgrid3\b|dgrid\b|dgri\b|dgr\b|dg\b|dummy\b|dumm\b|dum\b|du\b|encoding\b|encodin\b|encodi\b|encod\b|enco\b|enc\b|decimalsign\b|decimalsig\b|decimalsi\b|decimals\b|decimal\b|decima\b|decim\b|deci\b|dec\b|fit\b|fontpath\b|fontpat\b|fontpa\b|fontp\b|font\b|format\b|forma\b|form\b|for\b|fo\b|function\b|functio\b|functi\b|funct\b|func\b|fun\b|fu\b|functions\b|function\b|functio\b|functi\b|funct\b|func\b|fun\b|fu\b|grid\b|gri\b|gr\b|g\b|hidden3d\b|hidden3\b|hidden\b|hidde\b|hidd\b|hid\b|historysize\b|historysiz\b|historysi\b|historys\b|history\b|histor\b|histo\b|hist\b|his\b|isosamples\b|isosample\b|isosampl\b|isosamp\b|isosam\b|isosa\b|isos\b|iso\b|is\b|key\b|ke\b|k\b|keytitle\b|keytitl\b|keytit\b|keyti\b|keyt\b|label\b|labe\b|lab\b|la\b|linestyle\b|linestyl\b|linesty\b|linest\b|lines\b|line\b|lin\b|li\b|ls\b|loadpath\b|loadpat\b|loadpa\b|loadp\b|load\b|loa\b|locale\b|local\b|loca\b|loc\b|logscale\b|logscal\b|logsca\b|logsc\b|logs\b|log\b|macros\b|macro\b|macr\b|mac\b|mapping\b|mappin\b|mappi\b|mapp\b|map\b|mapping3d\b|mapping3\b|mapping\b|mappin\b|mappi\b|mapp\b|map\b|margin\b|margi\b|marg\b|mar\b|lmargin\b|lmargi\b|lmarg\b|lmar\b|rmargin\b|rmargi\b|rmarg\b|rmar\b|tmargin\b|tmargi\b|tmarg\b|tmar\b|bmargin\b|bmargi\b|bmarg\b|bmar\b|mouse\b|mous\b|mou\b|mo\b|multiplot\b|multiplo\b|multipl\b|multip\b|multi\b|mxtics\b|mxtic\b|mxti\b|mxt\b|nomxtics\b|nomxtic\b|nomxti\b|nomxt\b|mx2tics\b|mx2tic\b|mx2ti\b|mx2t\b|nomx2tics\b|nomx2tic\b|nomx2ti\b|nomx2t\b|mytics\b|mytic\b|myti\b|myt\b|nomytics\b|nomytic\b|nomyti\b|nomyt\b|my2tics\b|my2tic\b|my2ti\b|my2t\b|nomy2tics\b|nomy2tic\b|nomy2ti\b|nomy2t\b|mztics\b|mztic\b|mzti\b|mzt\b|nomztics\b|nomztic\b|nomzti\b|nomzt\b|mcbtics\b|mcbtic\b|mcbti\b|mcbt\b|nomcbtics\b|nomcbtic\b|nomcbti\b|nomcbt\b|offsets\b|offset\b|offse\b|offs\b|off\b|of\b|origin\b|origi\b|orig\b|ori\b|or\b|output\b|outpu\b|outp\b|out\b|ou\b|o\b|parametric\b|parametri\b|parametr\b|paramet\b|parame\b|param\b|para\b|par\b|pa\b|pm3d\b|pm3\b|pm\b|palette\b|palett\b|palet\b|pale\b|pal\b|colorbox\b|colorbo\b|colorb\b|plot\b|plo\b|pl\b|p\b|pointsize\b|pointsiz\b|pointsi\b|points\b|point\b|poin\b|poi\b|polar\b|pola\b|pol\b|print\b|prin\b|pri\b|pr\b|object\b|objec\b|obje\b|obj\b|samples\b|sample\b|sampl\b|samp\b|sam\b|sa\b|size\b|siz\b|si\b|style\b|styl\b|sty\b|st\b|surface\b|surfac\b|surfa\b|surf\b|sur\b|su\b|table\b|terminal\b|termina\b|termin\b|termi\b|term\b|ter\b|te\b|t\b|termoptions\b|termoption\b|termoptio\b|termopti\b|termopt\b|termop\b|termo\b|tics\b|tic\b|ti\b|ticscale\b|ticscal\b|ticsca\b|ticsc\b|ticslevel\b|ticsleve\b|ticslev\b|ticsle\b|ticsl\b|timefmt\b|timefm\b|timef\b|timestamp\b|timestam\b|timesta\b|timest\b|times\b|time\b|tim\b|title\b|titl\b|tit\b|variables\b|variable\b|variabl\b|variab\b|varia\b|vari\b|var\b|va\b|v\b|version\b|versio\b|versi\b|vers\b|ver\b|ve\b|view\b|vie\b|vi\b|xyplane\b|xyplan\b|xypla\b|xypl\b|xyp\b|xdata\b|xdat\b|xda\b|x2data\b|x2dat\b|x2da\b|ydata\b|ydat\b|yda\b|y2data\b|y2dat\b|y2da\b|zdata\b|zdat\b|zda\b|cbdata\b|cbdat\b|cbda\b|xlabel\b|xlabe\b|xlab\b|xla\b|xl\b|x2label\b|x2labe\b|x2lab\b|x2la\b|x2l\b|ylabel\b|ylabe\b|ylab\b|yla\b|yl\b|y2label\b|y2labe\b|y2lab\b|y2la\b|y2l\b|zlabel\b|zlabe\b|zlab\b|zla\b|zl\b|cblabel\b|cblabe\b|cblab\b|cbla\b|cbl\b|xtics\b|xtic\b|xti\b|noxtics\b|noxtic\b|noxti\b|x2tics\b|x2tic\b|x2ti\b|nox2tics\b|nox2tic\b|nox2ti\b|ytics\b|ytic\b|yti\b|noytics\b|noytic\b|noyti\b|y2tics\b|y2tic\b|y2ti\b|noy2tics\b|noy2tic\b|noy2ti\b|ztics\b|ztic\b|zti\b|noztics\b|noztic\b|nozti\b|cbtics\b|cbtic\b|cbti\b|nocbtics\b|nocbtic\b|nocbti\b|xdtics\b|xdtic\b|xdti\b|noxdtics\b|noxdtic\b|noxdti\b|x2dtics\b|x2dtic\b|x2dti\b|nox2dtics\b|nox2dtic\b|nox2dti\b|ydtics\b|ydtic\b|ydti\b|noydtics\b|noydtic\b|noydti\b|y2dtics\b|y2dtic\b|y2dti\b|noy2dtics\b|noy2dtic\b|noy2dti\b|zdtics\b|zdtic\b|zdti\b|nozdtics\b|nozdtic\b|nozdti\b|cbdtics\b|cbdtic\b|cbdti\b|nocbdtics\b|nocbdtic\b|nocbdti\b|xmtics\b|xmtic\b|xmti\b|noxmtics\b|noxmtic\b|noxmti\b|x2mtics\b|x2mtic\b|x2mti\b|nox2mtics\b|nox2mtic\b|nox2mti\b|ymtics\b|ymtic\b|ymti\b|noymtics\b|noymtic\b|noymti\b|y2mtics\b|y2mtic\b|y2mti\b|noy2mtics\b|noy2mtic\b|noy2mti\b|zmtics\b|zmtic\b|zmti\b|nozmtics\b|nozmtic\b|nozmti\b|cbmtics\b|cbmtic\b|cbmti\b|nocbmtics\b|nocbmtic\b|nocbmti\b|xrange\b|xrang\b|xran\b|xra\b|xr\b|x2range\b|x2rang\b|x2ran\b|x2ra\b|x2r\b|yrange\b|yrang\b|yran\b|yra\b|yr\b|y2range\b|y2rang\b|y2ran\b|y2ra\b|y2r\b|zrange\b|zrang\b|zran\b|zra\b|zr\b|cbrange\b|cbrang\b|cbran\b|cbra\b|cbr\b|rrange\b|rrang\b|rran\b|rra\b|rr\b|trange\b|trang\b|tran\b|tra\b|tr\b|urange\b|urang\b|uran\b|ura\b|ur\b|vrange\b|vrang\b|vran\b|vra\b|vr\b|xzeroaxis\b|xzeroaxi\b|xzeroax\b|xzeroa\b|x2zeroaxis\b|x2zeroaxi\b|x2zeroax\b|x2zeroa\b|yzeroaxis\b|yzeroaxi\b|yzeroax\b|yzeroa\b|y2zeroaxis\b|y2zeroaxi\b|y2zeroax\b|y2zeroa\b|zzeroaxis\b|zzeroaxi\b|zzeroax\b|zzeroa\b|zeroaxis\b|zeroaxi\b|zeroax\b|zeroa\b|zero\b|zer\b|ze\b|z\b">
   221        <token type="NameBuiltin"/>
   222        <pop depth="1"/>
   223      </rule>
   224    </state>
   225    <state name="bind">
   226      <rule pattern="!">
   227        <token type="Keyword"/>
   228        <pop depth="1"/>
   229      </rule>
   230      <rule pattern="allwindows\b|allwindow\b|allwindo\b|allwind\b|allwin\b|allwi\b|allw\b|all\b">
   231        <token type="NameBuiltin"/>
   232      </rule>
   233      <rule>
   234        <include state="genericargs"/>
   235      </rule>
   236    </state>
   237    <state name="fit">
   238      <rule pattern="via\b">
   239        <token type="NameBuiltin"/>
   240      </rule>
   241      <rule>
   242        <include state="plot"/>
   243      </rule>
   244    </state>
   245    <state name="noargs">
   246      <rule>
   247        <include state="whitespace"/>
   248      </rule>
   249      <rule pattern=";">
   250        <token type="Punctuation"/>
   251        <pop depth="1"/>
   252      </rule>
   253      <rule pattern="\n">
   254        <token type="Text"/>
   255        <pop depth="1"/>
   256      </rule>
   257    </state>
   258    <state name="sqstring">
   259      <rule pattern="&#39;&#39;">
   260        <token type="LiteralString"/>
   261      </rule>
   262      <rule pattern="&#39;">
   263        <token type="LiteralString"/>
   264        <pop depth="1"/>
   265      </rule>
   266      <rule pattern="[^\\&#39;\n]+">
   267        <token type="LiteralString"/>
   268      </rule>
   269      <rule pattern="\\\n">
   270        <token type="LiteralString"/>
   271      </rule>
   272      <rule pattern="\\">
   273        <token type="LiteralString"/>
   274      </rule>
   275      <rule pattern="\n">
   276        <token type="LiteralString"/>
   277        <pop depth="1"/>
   278      </rule>
   279    </state>
   280    <state name="quit">
   281      <rule pattern="gnuplot\b">
   282        <token type="Keyword"/>
   283      </rule>
   284      <rule>
   285        <include state="noargs"/>
   286      </rule>
   287    </state>
   288  </rules>
   289</lexer>

View as plain text