eiolib|stringlib|tclscilib|soundlib|m2scilib|cacsdlib|atomslib|matiolib|timelib|SCIHOME|xcoslib|corelib|TMPDIR|jvoid|iolib|evoid|enull|%fftw|jnull|%nan|home|%eps|%gui|%inf|%io|%tk|SCI|PWD|%pi|fd|%z|%i|%s|%f|%t|%e|%T|%F|\$)\b">
        <token type="NameConstant"/>
      </rule>
      <rule pattern="-|==|~=|&lt;|&gt;|&lt;=|&gt;=|&amp;&amp;|&amp;|~|\|\|?">
        <token type="Operator"/>
      </rule>
      <rule pattern="\.\*|\*|\+|\.\^|\.\\|\.\/|\/|\\">
        <token type="Operator"/>
      </rule>
      <rule pattern="[\[\](){}@.,=:;]">
        <token type="Punctuation"/>
      </rule>
      <rule pattern="&#34;[^&#34;]*&#34;">
        <token type="LiteralString"/>
      </rule>
      <rule pattern="(?&lt;=[\w)\].])\&#39;+">
        <token type="Operator"/>
      </rule>
      <rule pattern="(?&lt;![\w)\].])\&#39;">
        <token type="LiteralString"/>
        <push state="string"/>
      </rule>
      <rule pattern="(\d+\.\d*|\d*\.\d+)([eEf][+-]?[0-9]+)?">
        <token type="LiteralNumberFloat"/>
      </rule>
      <rule pattern="\d+[eEf][+-]?[0-9]+">
        <token type="LiteralNumberFloat"/>
      </rule>
      <rule pattern="\d+">
        <token type="LiteralNumberInteger"/>
      </rule>
      <rule pattern="[a-zA-Z_]\w*">
        <token type="Name"/>
      </rule>
      <rule pattern=".">
        <token type="Text"/>
      </rule>
    </state>
    <state name="string">
      <rule pattern="[^&#39;]*&#39;">
        <token type="LiteralString"/>
        <pop depth="1"/>
      </rule>
      <rule pattern=".">
        <token type="LiteralString"/>
        <pop depth="1"/>
      </rule>
    </state>
    <state name="deffunc">
      <rule pattern="(\s*)(?:(.+)(\s*)(=)(\s*))?(.+)(\()(.*)(\))(\s*)">
        <bygroups>
          <token type="TextWhitespace"/>
          <token type="Text"/>
          <token type="TextWhitespace"/>
          <token type="Punctuation"/>
          <token type="TextWhitespace"/>
          <token type="NameFunction"/>
          <token type="Punctuation"/>
          <token type="Text"/>
          <token type="Punctuation"/>
          <token type="TextWhitespace"/>
        </bygroups>
        <pop depth="1"/>
      </rule>
      <rule pattern="(\s*)([a-zA-Z_]\w*)">
        <bygroups>
          <token type="Text"/>
          <token type="NameFunction"/>
        </bygroups>
        <pop depth="1"/>
      </rule>
    </state>
  </rules>
</lexer>