<?xml version="1.0" encoding="windows-1251"?>
<!--
    REXX Syntax 4ever
    3dcraze version was made by Vladimir Komarov <doublew@iname.com>

    Upgrade for Colorer4u and 4ever Igor Paikin <exemok@mail.ru>
                with help of Vladimir Komarov <doublew@iname.com>:
    1) adding some more keywords
    2) do .. end works as brackets
    3) also added (modified?) odinary brackets - [..] and (..)
    4) Nested comments support (is it really works?)
    5) Unneeded end's are in error color
    6) Inserted functions - thanks to Vladimir Komarov

    Thanks to:
    IBM - for that stupid language REXX
    Eugene Roshal and Far group - for FAR
    cail lomecb - for colorer and some help in writing of this file
    Vladimir Komarov <doublew@iname.com> - author of 3dcraze version of REXX syntax
                                           and soauthor of 4u and 4ever version
    You - that are use (or read, modify and send me notes) this hrc file
-->
<!DOCTYPE hrc PUBLIC "-//Cail Lomecb//DTD Colorer HRC take5//EN" "../hrc.dtd">
<hrc version="take5" xmlns="http://colorer.sf.net/2003/hrc">
   <type name="rexx" access="public">

      <import type="def"/>

      <region name="rString" parent="String"/>
      <region name="rComment" parent="Comment"/>
      <region name="rSymb" parent="Symbol"/>
      <region name="rWord" parent="Keyword"/>
      <region name="rWord2" parent="Keyword"/>
      <region name="rFunc" parent="Keyword"/>


      <scheme name="rexx">
<!-- Comments -->
         <inherit scheme="cNestedComment"/>
<!-- Strings -->
         <regexp match="/('(.*?[^\'])??'x*)/" region0="rString"/>
         <regexp match="/(\&#34;(.*?[^\&#34;])??\&#34;)/" region0="rString"/>
<!-- Numbers  -->
         <inherit scheme="FloatNumber"/>
         <inherit scheme="DecNumber"/>
<!-- begins and ends -->
         <block start="/\b(do|select)\b/i" end="/\b(end)\b/i" scheme="rexx" region00="rWord2" region10="rWord2" region01="PairStart" region11="PairEnd"/>
<!-- Brackets -->
         <block start="/(\()/" end="/(\))/" scheme="rexx" region00="rSymb" region01="PairStart" region10="rSymb" region11="PairEnd"/>
         <block start="/(\[)/" end="/(\])/" scheme="rexx" region00="rSymb" region01="PairStart" region10="rSymb" region11="PairEnd"/>
         <keywords ignorecase="yes" region="Error">
            <word name="end"/>
<!--no begin for this end -->
            <word name="*/"/>
<!-- no open comment for this close comment -->
         </keywords>
<!-- Symbols -->
         <keywords region="rSymb">
            <symb name="("/>
            <symb name=")"/>
            <symb name="["/>
            <symb name="]"/>
            <symb name="+"/>
            <symb name="-"/>
            <symb name="*"/>
            <symb name="/"/>
            <symb name=","/>
            <symb name="."/>
            <symb name=";"/>
            <symb name="="/>
            <symb name="!"/>
            <symb name="|"/>
         </keywords>
<!-- Words -->
         <keywords ignorecase="yes" region="rWord">
            <word name="address"/>
            <word name="arg"/>
            <word name="call"/>
            <word name="drop"/>
            <word name="else"/>
            <word name="error"/>
            <word name="exit"/>
            <word name="expose"/>
            <word name="forever"/>
            <word name="if"/>
            <word name="interpret"/>
            <word name="iterate"/>
            <word name="leave"/>
            <word name="otherwise"/>
            <word name="parse"/>
            <word name="procedure"/>
            <word name="pull"/>
            <word name="push"/>
            <word name="queue"/>
            <word name="return"/>
            <word name="say"/>
            <word name="signal"/>
            <word name="source"/>
            <word name="syntax"/>
            <word name="then"/>
            <word name="to"/>
            <word name="until"/>
            <word name="upper"/>
            <word name="value"/>
            <word name="var"/>
            <word name="when"/>
            <word name="while"/>
         </keywords>
         <keywords ignorecase="yes" region="rFunc">
            <word name="abbrev"/>
            <word name="abs"/>
            <word name="bitand"/>
            <word name="bitor"/>
            <word name="bitxor"/>
            <word name="center"/>
            <word name="centre"/>
            <word name="changestr"/>
            <word name="charin"/>
            <word name="charout"/>
            <word name="chars"/>
            <word name="compare"/>
            <word name="condition"/>
            <word name="copies"/>
            <word name="countstr"/>
            <word name="datatype"/>
            <word name="date"/>
            <word name="delstr"/>
            <word name="delword"/>
            <word name="digits"/>
            <word name="errortext"/>
            <word name="form"/>
            <word name="format"/>
            <word name="fuzz"/>
            <word name="insert"/>
            <word name="lastpos"/>
            <word name="left"/>
            <word name="length"/>
            <word name="linein"/>
            <word name="lineout"/>
            <word name="lines"/>
            <word name="max"/>
            <word name="min"/>
            <word name="max"/>
            <word name="overlay"/>
            <word name="pos"/>
            <word name="queued"/>
            <word name="random"/>
            <word name="reverse"/>
            <word name="right"/>
            <word name="sign"/>
            <word name="sourceline"/>
            <word name="space"/>
            <word name="stream"/>
            <word name="strip"/>
            <word name="substr"/>
            <word name="subword"/>
            <word name="symbol"/>
            <word name="time"/>
            <word name="translate"/>
            <word name="trunc"/>
            <word name="verify"/>
            <word name="word"/>
            <word name="wordindex"/>
            <word name="wordlength"/>
            <word name="wordpos"/>
            <word name="words"/>
            <word name="xrange"/>
         </keywords>
         <regexp match="/\b \M (\w+ \:)/x" region1="Function"/>
      </scheme>

   </type>
</hrc>
