<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">
<!--
  *************************************************************************

  ANS Forth 94 syntax highlighting for Kate.

  Copyright (C) 2011, Mark Corbin (mark@dibsco.co.uk)

  *************************************************************************

  This library is free software; you can redistribute it and/or modify it
  under the terms of the GNU Lesser General Public License as published by
  the Free Software Foundation; either version 2.1 of the License, or
  (at your option) any later version.

  This library is distributed in the hope that it will be useful, but
  WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser
  General Public License for more details.

  You should have received a copy of the GNU Lesser General Public License
  along with this library; if not, write to the Free Software
  Foundation, Inc., 51 Franklin Street, Fifth Floor,
  Boston, MA  02110-1301  USA

  *************************************************************************

  Version 1.0 (23-11-11)
    - Added additional file extensions.

  Version 0.1 (08-11-11)
    - Initial release for comment.

  *************************************************************************
-->
<language name="ANS-Forth94" version="1.1" kateversion="3.7" section="Sources" extensions="*.4th;*.4TH;*.f;*.F;*.frt;*.FRT;*.fs;*.FS;*.fth;*.FTH;*.seq;*.SEQ" mimetype="" author="Mark Corbin (mark@dibsco.co.uk)" license="LGPL" priority="5">
  <highlighting>
    <list name="core-keywords">
      <item> ! </item>
      <item> # </item>
      <item> #&gt; </item> <!-- #> -->
      <item> #S </item>
      <item> &apos; </item> <!-- ' -->
      <item> ( </item>
      <item> * </item>
      <item> */ </item>
      <item> */MOD </item>
      <item> + </item>
      <item> +! </item>
      <item> +LOOP </item>
      <item> , </item>
      <item> - </item>
      <item> . </item>
      <item> .&quot; </item> <!-- ." -->
      <item> / </item>
      <item> /MOD </item>
      <item> 0&lt; </item> <!-- 0< -->
      <item> 0= </item>
      <item> 1+ </item>
      <item> 1- </item>
      <item> 2! </item>
      <item> 2* </item>
      <item> 2/ </item>
      <item> 2@ </item>
      <item> 2DROP </item>
      <item> 2DUP </item>
      <item> 2OVER </item>
      <item> 2SWAP </item>
      <item> : </item>
      <item> ; </item>
      <item> &lt; </item> <!-- < -->
      <item> &lt;# </item> <!-- <# -->
      <item> = </item>
      <item> &gt; </item> <!-- > -->
      <item> &gt;BODY </item> <!-- >BODY -->
      <item> &gt;IN </item> <!-- >IN -->
      <item> &gt;NUMBER </item> <!-- >NUMBER -->
      <item> &gt;R </item> <!-- >R -->
      <item> ?DUP </item>
      <item> @ </item>
      <item> ABORT </item>
      <item> ABORT&quot; </item> <!-- ABORT" -->
      <item> ABS </item>
      <item> ACCEPT </item>
      <item> ALIGN </item>
      <item> ALIGNED </item>
      <item> ALLOT </item>
      <item> AND </item>
      <item> BASE </item>
      <item> BEGIN </item>
      <item> BL </item>
      <item> C! </item>
      <item> C, </item>
      <item> C@ </item>
      <item> CELL+ </item>
      <item> CELLS </item>
      <item> CHAR </item>
      <item> CHAR+ </item>
      <item> CHARS </item>
      <item> CONSTANT </item>
      <item> COUNT </item>
      <item> CR </item>
      <item> CREATE </item>
      <item> DECIMAL </item>
      <item> DEPTH </item>
      <item> DO </item>
      <item> DOES&gt; </item> <!-- DOES> -->
      <item> DROP </item>
      <item> DUP </item>
      <item> ELSE </item>
      <item> EMIT </item>
      <item> ENVIRONMENT? </item>
      <item> EVALUATE </item>
      <item> EXECUTE </item>
      <item> EXIT </item>
      <item> FILL </item>
      <item> FIND </item>
      <item> FM/MOD </item>
      <item> HERE </item>
      <item> HOLD </item>
      <item> I </item>
      <item> IF </item>
      <item> IMMEDIATE </item>
      <item> INVERT </item>
      <item> J </item>
      <item> KEY </item>
      <item> LEAVE </item>
      <item> LITERAL </item>
      <item> LOOP </item>
      <item> LSHIFT </item>
      <item> M* </item>
      <item> MAX </item>
      <item> MIN </item>
      <item> MOD </item>
      <item> MOVE </item>
      <item> NEGATE </item>
      <item> OR </item>
      <item> OVER </item>
      <item> POSTPONE </item>
      <item> QUIT </item>
      <item> R&gt; </item> <!-- R> -->
      <item> R@ </item>
      <item> RECURSE </item>
      <item> REPEAT </item>
      <item> ROT </item>
      <item> RSHIFT </item>
      <item> S&quot; </item> <!-- S" -->
      <item> S&gt;D </item> <!-- S>D -->
      <item> SIGN </item>
      <item> SM/REM </item>
      <item> SOURCE </item>
      <item> SPACE </item>
      <item> SPACES </item>
      <item> STATE </item>
      <item> SWAP </item>
      <item> THEN </item>
      <item> TYPE </item>
      <item> U. </item>
      <item> U&lt; </item> <!-- U< -->
      <item> UM* </item>
      <item> UM/MOD </item>
      <item> UNLOOP </item>
      <item> UNTIL </item>
      <item> VARIABLE </item>
      <item> WHILE </item>
      <item> WORD </item>
      <item> XOR </item>
      <item> [ </item>
      <item> [&apos;] </item> <!-- ['] -->
      <item> [CHAR] </item>
      <item> ] </item>
    </list>
    <list name="core-ext-keywords">
      <item> .( </item>
      <item> .R </item>
      <item> 0&lt;&gt; </item> <!-- 0<> -->
      <item> 0&gt; </item> <!-- 0> -->
      <item> 2&gt;R </item> <!-- 2>R -->
      <item> 2R&gt; </item> <!-- 2R> -->
      <item> 2R@ </item>
      <item> :NONAME </item>
      <item> &lt;&gt; </item> <!-- <> -->
      <item> ?DO </item>
      <item> AGAIN </item>
      <item> C&quot; </item> <!-- C" -->
      <item> CASE </item>
      <item> COMPILE, </item>
      <item> ENDCASE </item>
      <item> ENDOF </item>
      <item> ERASE </item>
      <item> FALSE </item>
      <item> HEX </item>
      <item> MARKER </item>
      <item> NIP </item>
      <item> OF </item>
      <item> PAD </item>
      <item> PARSE </item>
      <item> PICK </item>
      <item> REFILL </item>
      <item> RESTORE-INPUT </item>
      <item> ROLL </item>
      <item> SAVE-INPUT </item>
      <item> SOURCE-ID </item>
      <item> TO </item>
      <item> TRUE </item>
      <item> TUCK </item>
      <item> U.R </item>
      <item> U&gt; </item> <!-- U> -->
      <item> UNUSED </item>
      <item> VALUE </item>
      <item> WITHIN </item>
      <item> [COMPILE] </item>
      <item> \ </item>
    </list>
    <list name="obsolete-core-ext-keywords">
      <item> #TIB </item>
      <item> CONVERT </item>
      <item> EXPECT </item>
      <item> QUERY </item>
      <item> SPAN </item>
      <item> TIB </item>
    </list>
    <list name="block-keywords">
      <item> BLK </item>
      <item> BLOCK </item>
      <item> BUFFER </item>
      <item> EVALUATE </item>
      <item> FLUSH </item>
      <item> LOAD </item>
      <item> SAVE-BUFFERS </item>
      <item> UPDATE </item>
    </list>
    <list name="block-ext-keywords">
      <item> EMPTY-BUFFERS </item>
      <item> LIST </item>
      <item> REFILL </item>
      <item> SCR </item>
      <item> THRU </item>
      <item> \ </item>
    </list>
    <list name="double-keywords">
      <item> 2CONSTANT </item>
      <item> 2LITERAL </item>
      <item> 2VARIABLE </item>
      <item> D+ </item>
      <item> D- </item>
      <item> D. </item>
      <item> D.R </item>
      <item> D0&lt; </item> <!-- D0< -->
      <item> D0= </item>
      <item> D2* </item>
      <item> D2/ </item>
      <item> D&lt; </item> <!-- D< -->
      <item> D= </item>
      <item> D&gt;S </item> <!-- D>S -->
      <item> DABS </item>
      <item> DMAX </item>
      <item> DMIN </item>
      <item> DNEGATE </item>
      <item> M*/ </item>
      <item> M+ </item>
    </list>
    <list name="double-ext-keywords">
      <item> 2ROT </item>
      <item> DU&lt; </item> <!-- DU< -->
    </list>
    <list name="exception-keywords">
      <item> CATCH </item>
      <item> THROW </item>
    </list>
    <list name="exception-ext-keywords">
      <item> ABORT </item>
      <item> ABORT&quot; </item> <!-- ABORT" -->
    </list>
    <list name="facility-keywords">
      <item> AT-XY </item>
      <item> KEY? </item>
      <item> PAGE </item>
    </list>
    <list name="facility-ext-keywords">
      <item> EKEY </item>
      <item> EKEY&gt;CHAR </item> <!-- EKEY>CHAR -->
      <item> EKEY? </item>
      <item> EMIT? </item>
      <item> MS </item>
      <item> TIME&amp;DATE </item> <!-- TIME&DATE -->
    </list>
    <list name="file-keywords">
      <item> ( </item>
      <item> BIN </item>
      <item> CLOSE-FILE </item>
      <item> CREATE-FILE </item>
      <item> DELETE-FILE </item>
      <item> FILE-POSITION </item>
      <item> FILE-SIZE </item>
      <item> INCLUDE-FILE </item>
      <item> INCLUDED </item>
      <item> OPEN-FILE </item>
      <item> R/O </item>
      <item> R/W </item>
      <item> READ-FILE </item>
      <item> READ-LINE </item>
      <item> REPOSITION-FILE </item>
      <item> RESIZE-FILE </item>
      <item> S&quot; </item> <!-- S" -->
      <item> SOURCE-ID </item>
      <item> W/O </item>
      <item> WRITE-FILE </item>
      <item> WRITE-LINE </item>
    </list>
    <list name="file-ext-keywords">
      <item> FILE-STATUS </item>
      <item> FLUSH-FILE </item>
      <item> REFILL </item>
      <item> RENAME-FILE </item>
    </list>
    <list name="floating-keywords">
      <item> &gt;FLOAT </item> <!-- >FLOAT -->
      <item> D&gt;F </item> <!-- D>F -->
      <item> F! </item>
      <item> F* </item>
      <item> F+ </item>
      <item> F- </item>
      <item> F/ </item>
      <item> F0&lt; </item> <!-- F0< -->
      <item> F0= </item>
      <item> F&lt; </item> <!-- F< -->
      <item> F&gt;D </item> <!-- F>D -->
      <item> F@ </item>
      <item> FALIGN </item>
      <item> FALIGNED </item>
      <item> FCONSTANT </item>
      <item> FDEPTH </item>
      <item> FDROP </item>
      <item> FDUP </item>
      <item> FLITERAL </item>
      <item> FLOAT+ </item>
      <item> FLOATS </item>
      <item> FLOOR </item>
      <item> FMAX </item>
      <item> FMIN </item>
      <item> FNEGATE </item>
      <item> FOVER </item>
      <item> FROT </item>
      <item> FROUND </item>
      <item> FSWAP </item>
      <item> FVARIABLE </item>
      <item> REPRESENT </item>
    </list>
    <list name="floating-ext-keywords">
      <item> DF! </item>
      <item> DF@ </item>
      <item> DFALIGN </item>
      <item> DFALIGNED </item>
      <item> DFLOAT+ </item>
      <item> DFLOATS </item>
      <item> F** </item>
      <item> F. </item>
      <item> FABS </item>
      <item> FACOS </item>
      <item> FACOSH </item>
      <item> FALOG </item>
      <item> FASIN </item>
      <item> FASINH </item>
      <item> FATAN </item>
      <item> FATAN2 </item>
      <item> FATANH </item>
      <item> FCOS </item>
      <item> FCOSH </item>
      <item> FE. </item>
      <item> FEXP </item>
      <item> FEXPM1 </item>
      <item> FLN </item>
      <item> FLNP1 </item>
      <item> FLOG </item>
      <item> FS. </item>
      <item> FSIN </item>
      <item> FSINCOS </item>
      <item> FSINH </item>
      <item> FSQRT </item>
      <item> FTAN </item>
      <item> FTANH </item>
      <item> F~ </item>
      <item> PRECISION </item>
      <item> SET-PRECISION </item>
      <item> SF! </item>
      <item> SF@ </item>
      <item> SFALIGN </item>
      <item> SFALIGNED </item>
      <item> SFLOAT+ </item>
      <item> SFLOATS </item>
    </list>
    <list name="local-keywords">
      <item> (LOCAL) </item>
      <item> TO </item>
    </list>
    <list name="local-ext-keywords">
      <item> LOCALS| </item>
    </list>
    <list name="memory-keywords">
      <item> ALLOCATE </item>
      <item> FREE </item>
      <item> RESIZE </item>
    </list>
    <list name="tools-keywords">
      <item> .S </item>
      <item> ? </item>
      <item> DUMP </item>
      <item> SEE </item>
      <item> WORDS </item>
    </list>
    <list name="tools-ext-keywords">
      <item> ;CODE </item>
      <item> AHEAD </item>
      <item> ASSEMBLER </item>
      <item> BYE </item>
      <item> CODE </item>
      <item> CS-PICK </item>
      <item> CS-ROLL </item>
      <item> EDITOR </item>
      <item> STATE </item>
      <item> [ELSE] </item>
      <item> [IF] </item>
      <item> [THEN] </item>
    </list>
    <list name="obsolete-tools-ext-keywords">
      <item> FORGET </item>
    </list>
    <list name="search-keywords">
      <item> DEFINITIONS </item>
      <item> FIND </item>
      <item> FORTH-WORDLIST </item>
      <item> GET-CURRENT </item>
      <item> GET-ORDER </item>
      <item> SEARCH-WORDLIST </item>
      <item> SET-CURRENT </item>
      <item> SET-ORDER </item>
      <item> WORDLIST </item>
    </list>
    <list name="search-ext-keywords">
      <item> ALSO </item>
      <item> FORTH </item>
      <item> ONLY </item>
      <item> ORDER </item>
      <item> PREVIOUS </item>
    </list>
    <list name="string-keywords">
      <item> -TRAILING </item>
      <item> /STRING </item>
      <item> BLANK </item>
      <item> CMOVE </item>
      <item> CMOVE&gt; </item> <!-- CMOVE> -->
      <item> COMPARE </item>
      <item> SEARCH </item>
      <item> SLITERAL </item>
    </list>
    <list name="attention">
      <item> TODO </item>
      <item> FIXME </item>
      <item> NOTE </item>
    </list>
    <contexts>
      <context attribute="Normal Text" lineEndContext="#stay" name="Normal">
	<DetectSpaces/>
        <RegExpr attribute="Core Keyword" context="Comment" String="(^|\s+)[\(]($|\s+)" beginRegion="comment"/>
        <RegExpr attribute="Core Keyword" context="Char" insensitive="true" String="(^|\s+)(CHAR|[[]CHAR[]])($|\s+)"/>
        <RegExpr attribute="Core Keyword" context="#stay" insensitive="true" String="(^|\s+)(BEGIN|DO|IF)($|\s+)" beginRegion="block"/>
        <RegExpr attribute="Core Keyword" context="#stay" insensitive="true" String="(^|\s+)([;]|LOOP|[+]LOOP|THEN|REPEAT|UNTIL)($|\s+)" endRegion="block"/>
        <RegExpr attribute="Core Keyword" context="Word" insensitive="true" String="(^|\s+)([:])($|\s+)" beginRegion="block"/>
        <RegExpr attribute="Core Keyword" context="Word" insensitive="true" String="(^|\s+)([']|CREATE|POSTPONE)($|\s+)"/>
        <RegExpr attribute="Core Keyword" context="#stay" insensitive="true" String="(^|\s+)ELSE($|\s+)" endRegion="block" beginRegion="block"/>
        <RegExpr attribute="Core Keyword" context="String" insensitive="true" String="(^|\s+)([.]&quot;|ABORT&quot;|S&quot;)($|\s+)"/>
        <RegExpr attribute="Core Keyword" context="Parse String" insensitive="true" String="(^|\s+)(WORD)($|\s+)"/>
        <RegExpr attribute="Core Keyword" context="Constant" insensitive="true" String="(^|\s+)(CONSTANT)($|\s+)"/>
        <RegExpr attribute="Core Keyword" context="Variable" insensitive="true" String="(^|\s+)(VARIABLE)($|\s+)"/>
        <RegExpr attribute="Core Ext Keyword" context="Single Comment" String="(^|\s+)[\\]($|\s+)"/>
        <RegExpr attribute="Core Ext Keyword" context="#stay" insensitive="true" String="(^|\s+)([?]DO|CASE|OF)($|\s+)" beginRegion="block"/>
        <RegExpr attribute="Core Ext Keyword" context="#stay" insensitive="true" String="(^|\s+)(AGAIN|ENDCASE|ENDOF)($|\s+)" endRegion="block"/>
        <RegExpr attribute="Core Ext Keyword" context="Word" insensitive="true" String="(^|\s+)(MARKER|[[]COMPILE[]])($|\s+)"/>
        <RegExpr attribute="Core Ext Keyword" context="String" insensitive="true" String="(^|\s+)(C&quot;)($|\s+)"/>
        <RegExpr attribute="Core Ext Keyword" context="Parse String" insensitive="true" String="(^|\s+)(PARSE)($|\s+)"/>
        <RegExpr attribute="Core Ext Keyword" context="Display String" String="(^|\s+)([\.][\(])($|\s+)"/>
        <RegExpr attribute="Core Ext Keyword" context="Variable" insensitive="true" String="(^|\s+)(TO)($|\s+)"/>
        <RegExpr attribute="Core Ext Keyword" context="Variable" insensitive="true" String="(^|\s+)(VALUE)($|\s+)"/>
        <RegExpr attribute="Double Keyword" context="Constant" insensitive="true" String="(^|\s+)(2CONSTANT)($|\s+)"/>
        <RegExpr attribute="Double Keyword" context="Variable" insensitive="true" String="(^|\s+)(2VARIABLE)($|\s+)"/>
        <RegExpr attribute="Floating Keyword" context="Constant" insensitive="true" String="(^|\s+)(FCONSTANT)($|\s+)"/>
        <RegExpr attribute="Floating Keyword" context="Variable" insensitive="true" String="(^|\s+)(FVARIABLE)($|\s+)"/>
        <RegExpr attribute="Local Ext Keyword" context="Local" insensitive="true" String="(^|\s+)(LOCALS\|)($|\s+)"/>
        <RegExpr attribute="Tools Keyword" context="Word" insensitive="true" String="(^|\s+)(SEE)($|\s+)"/>
        <RegExpr attribute="Tools Ext Keyword" context="Word" insensitive="true" String="(^|\s+)(CODE)($|\s+)"/>
        <RegExpr attribute="Obs Tools Ext Keyword" context="Word" insensitive="true" String="(^|\s+)(FORGET)($|\s+)"/>

        <keyword attribute="Core Keyword" context="#stay" String="core-keywords"/>
        <keyword attribute="Core Ext Keyword" context="#stay" String="core-ext-keywords"/>
        <keyword attribute="Obs Core Ext Keyword" context="#stay" String="obsolete-core-ext-keywords"/>
        <keyword attribute="Block Keyword" context="#stay" String="block-keywords"/>
        <keyword attribute="Block Ext Keyword" context="#stay" String="block-ext-keywords"/>
        <keyword attribute="Double Keyword" context="#stay" String="double-keywords"/>
        <keyword attribute="Double Ext Keyword" context="#stay" String="double-ext-keywords"/>
        <keyword attribute="Exception Keyword" context="#stay" String="exception-keywords"/>
        <keyword attribute="Exception Ext Keyword" context="#stay" String="exception-ext-keywords"/>
        <keyword attribute="Facility Keyword" context="#stay" String="facility-keywords"/>
        <keyword attribute="Facility Ext Keyword" context="#stay" String="facility-ext-keywords"/>
        <keyword attribute="File Keyword" context="#stay" String="file-keywords"/>
        <keyword attribute="File Ext Keyword" context="#stay" String="file-ext-keywords"/>
        <keyword attribute="Floating Keyword" context="#stay" String="floating-keywords"/>
        <keyword attribute="Floating Ext Keyword" context="#stay" String="floating-ext-keywords"/>
        <keyword attribute="Local Keyword" context="#stay" String="local-keywords"/>
        <keyword attribute="Local Ext Keyword" context="#stay" String="local-ext-keywords"/>
        <keyword attribute="Memory Keyword" context="#stay" String="memory-keywords"/>
        <keyword attribute="Tools Keyword" context="#stay" String="tools-keywords"/>
        <keyword attribute="Tools Ext Keyword" context="#stay" String="tools-ext-keywords"/>
        <keyword attribute="Obs Tools Ext Keyword" context="#stay" String="obsolete-tools-ext-keywords"/>
        <keyword attribute="Search Keyword" context="#stay" String="search-keywords"/>
        <keyword attribute="Search Ext Keyword" context="#stay" String="search-ext-keywords"/>
        <keyword attribute="String Keyword" context="#stay" String="string-keywords"/>

        <RegExpr attribute="Single Number" context="#stay" String="(^|\s+)([-]?[0-9]+)($|\s+)"/>
        <RegExpr attribute="Double Number" context="#stay" String="(^|\s+)([-]?[0-9]+[.][0-9]*)($|\s+)"/>
        <RegExpr attribute="Float" context="#stay" String="(^|\s+)([+]|[-])?([0-9]+[.]?[0-9]*)(E|e)([+]|[-])?([0-9]*)($|\s+)"/>
      </context>
      <context attribute="Comment" lineEndContext="#stay" name="Comment">
        <DetectChar attribute="Core Keyword" context="#pop" char=")" endRegion="comment"/>
        <RegExpr attribute="Alert" context="#stay" String="(^|\s+)(FIXME|TODO|NOTE)($|\s+)"/>
      </context>
      <context attribute="Comment" lineEndContext="#pop" name="Single Comment">
        <RegExpr attribute="Alert" context="#stay" String="(^|\s+)(FIXME|TODO|NOTE)($|\s+)"/>
      </context>
      <context attribute="String" lineEndContext="#stay" name="Display String">
        <DetectChar attribute="Core Keyword" context="#pop" char=")"/>
      </context>
      <context attribute="String" lineEndContext="#stay" name="String">
        <DetectChar attribute="Core Keyword" context="#pop" char="&quot;"/>
      </context>
      <context attribute="String" lineEndContext="#pop" name="Parse String">
        <DetectChar attribute="Core Keyword" context="#pop" char=" "/>
      </context>
      <context attribute="Word" lineEndContext="#pop" name="Word">
        <DetectChar attribute="Word" context="#pop" char=" "/>
      </context>
      <context attribute="Char" lineEndContext="#pop" name="Char">
        <DetectChar attribute="Char" context="#pop" char=" "/>
      </context>
      <context attribute="Constant" lineEndContext="#pop" name="Constant">
        <DetectChar attribute="Constant" context="#pop" char=" "/>
      </context>
      <context attribute="Variable" lineEndContext="#pop" name="Variable">
        <DetectChar attribute="Variable" context="#pop" char=" "/>
      </context>
      <context attribute="Local Variable" lineEndContext="#pop" name="Local">
        <DetectChar attribute="Local Ext Keyword" context="#pop" char="|"/>
      </context>
    </contexts>
    <itemDatas>
      <itemData name="Normal Text" defStyleNum="dsNormal" spellChecking="false"/>
      <itemData name="Core Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
      <itemData name="Core Ext Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
      <itemData name="Obs Core Ext Keyword" defStyleNum="dsKeyword" color="#ff0000" spellChecking="false"/>
      <itemData name="Block Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
      <itemData name="Block Ext Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
      <itemData name="Double Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
      <itemData name="Double Ext Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
      <itemData name="Exception Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
      <itemData name="Exception Ext Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
      <itemData name="Facility Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
      <itemData name="Facility Ext Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
      <itemData name="File Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
      <itemData name="File Ext Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
      <itemData name="Floating Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
      <itemData name="Floating Ext Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
      <itemData name="Local Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
      <itemData name="Local Ext Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
      <itemData name="Memory Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
      <itemData name="Tools Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
      <itemData name="Tools Ext Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
      <itemData name="Obs Tools Ext Keyword" defStyleNum="dsKeyword" color="#ff0000" spellChecking="false"/>
      <itemData name="Search Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
      <itemData name="Search Ext Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
      <itemData name="String Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
      <itemData name="Single Number" defStyleNum="dsBaseN" spellChecking="false"/>
      <itemData name="Double Number" defStyleNum="dsBaseN" spellChecking="false"/>
      <itemData name="Float" defStyleNum="dsFloat" spellChecking="false"/>
      <itemData name="Comment" defStyleNum="dsComment"/>
      <itemData name="Alert" defStyleNum="dsAlert" spellChecking="false"/>
      <itemData name="String" defStyleNum="dsString"/>
      <itemData name="Word" defStyleNum="dsFunction" spellChecking="false"/>
      <itemData name="Char" defStyleNum="dsChar" spellChecking="false"/>
      <itemData name="Constant" defStyleNum="dsDataType" spellChecking="false"/>
      <itemData name="Variable" defStyleNum="dsDataType" spellChecking="false"/>
      <itemData name="Local Variable" defStyleNum="dsDataType" spellChecking="false"/>
    </itemDatas>
  </highlighting>
  <general>
    <keywords casesensitive="0" weakDeliminator="!£$%^&amp;#&apos;~|\(){}*+,-./=@:;&lt;&gt;&quot;?[]"/>
    <comments>
      <comment name="multiLine" start="( " end=")" region="comment"/>
    </comments>
  </general>
</language>
