<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!DOCTYPE language SYSTEM "language.dtd">
<language name="GNU Octave" version="1.0" _section="Scripts" mimetypes="text/plain">
  <escape-char>\</escape-char>
  <string _name="Double Quote String" style="String" end-at-line-end="TRUE">
    <start-regex>&quot;</start-regex>
    <end-regex>&quot;</end-regex>
  </string>
  <string _name="Single Quote String" style="String" end-at-line-end="TRUE">
    <start-regex>&apos;</start-regex>
    <end-regex>&apos;</end-regex>
  </string>
  <line-comment _name="Line Comment" style="Comment">
    <start-regex>#|%</start-regex>
  </line-comment>

  <keyword-list _name="Reserved Constant" style="String" case-sensitive="TRUE">
    <keyword>false</keyword>
    <keyword>true</keyword>
    <keyword>Inf</keyword>
    <keyword>inf</keyword>
    <keyword>NaN</keyword>
    <keyword>NA</keyword>
  </keyword-list>

  <keyword-list _name="Keyword" style="Keyword" case-sensitive="TRUE">
    <keyword>break</keyword>
    <keyword>return</keyword>
    <keyword>error</keyword>
    <keyword>warning</keyword>
    <keyword>end</keyword>
    <keyword>for</keyword>
    <keyword>endfor</keyword>
    <keyword>continue</keyword>
    <keyword>while</keyword>
    <keyword>endwhile</keyword>
    <keyword>do</keyword>
    <keyword>if</keyword>
    <keyword>else</keyword>
    <keyword>elseif</keyword>
    <keyword>endif</keyword>
    <keyword>try</keyword>
    <keyword>catch</keyword>
    <keyword>end_try_catch</keyword>
    <keyword>switch</keyword>
    <keyword>case</keyword>
    <keyword>otherwise</keyword>
    <keyword>function</keyword>
    <keyword>endfunction</keyword>
  </keyword-list>

  <keyword-list _name="Functions" style="Function" case-sensitive="TRUE">
    <keyword>nargin</keyword>
	<keyword>nargout</keyword>
    <keyword>zeros</keyword>
    <keyword>ones</keyword>
    <keyword>eval</keyword>
    <keyword>ceil</keyword>
    <keyword>floor</keyword>
    <keyword>round</keyword>
    <keyword>max</keyword>
    <keyword>min</keyword>
    <keyword>mean</keyword>
    <keyword>var</keyword>
    <keyword>std</keyword>
    <keyword>cov</keyword>
    <keyword>prod</keyword>
    <keyword>sum</keyword>
    <keyword>abs</keyword>
    <keyword>sign</keyword>
    <keyword>reshape</keyword>
    <keyword>cos</keyword>
    <keyword>acos</keyword>
    <keyword>sin</keyword>
    <keyword>asin</keyword>
    <keyword>tan</keyword>
    <keyword>atan</keyword>
    <keyword>log</keyword>
	<keyword>log10</keyword>
	<keyword>log2</keyword>
    <keyword>exp</keyword>
    <keyword>eye</keyword>
  </keyword-list>
  
  <pattern-item _name="Integer Number" style="Decimal">
    <regex>\b([1-9][0-9]*|0)[i]?\b</regex>
  </pattern-item>
  <pattern-item _name="Floating Point Number" style="Floating Point">
    <regex>\b([0-9]+[Ee][-+]?[0-9]+|([0-9]*\.[0-9]+|[0-9]+\.)([Ee][-+]?[0-9]+)?)[i]?\b</regex>
  </pattern-item>
  <pattern-item _name="Delimiter" style="Others 3">
      <regex>[\)\(]+|[\{\}]+|[][]+</regex>
  </pattern-item>
</language>
