<?xml version="1.0" encoding="windows-1251"?>
<!--
    VBScript Files
With help of:
    Vladimir M.Fonarev <vol@quorum.ru>  (Quorum)
-->
<!DOCTYPE hrc PUBLIC "-//Cail Lomecb//DTD Colorer HRC take5//EN" "../hrc.dtd">
<hrc version="take5" xmlns="http://colorer.sf.net/2003/hrc">
   <type name="vbScript" access="public">

      <import type="def"/>

      <region name="ClassOutline" parent="Outlined"/>

      <scheme name="vbMETA"/>

      <scheme name="vbScript">
<!-- just ignore html comments -->
         <regexp match="/^\s* &lt;!--/x" region="Comment"/>
         <regexp match="/^\s* --&gt;/x" region="Comment"/>
<!-- Linear Comments-->
         <regexp match="/('|\brem\b).*$/i" region="Comment"/>
<!-- Numbers -->
         <regexp match="/\b(&amp;\H|h)([\da-fA-F]+)\b/" region="Number"/>
         <regexp match="/\b(&amp;\O|o)([0-7]+)\b/" region="Number"/>
         <regexp match="/\b[0-9.]+(e|E[\-+]?\d+)?\b/" region="Number"/>
<!-- Strings -->
         <regexp match="/&#34;.*?&#34;/" region0="String"/>
         <block start="/(\()/" end="/(\))/" scheme="vbScript" region00="Symbol" region01="PairStart" region10="Symbol" region11="PairEnd"/>
         <block start="/(\[)/" end="/(\])/" scheme="vbScript" region00="Symbol" region01="PairStart" region10="Symbol" region11="PairEnd"/>
<!--regexp match="/\bend\s+if\b/i" region0="Error" lowpriority="lowpriority"/-->
         <regexp match="/\bend\s+if\b/i" region0="Keyword" priority="low"/>
         <block start="/\b(if)\b/i" end="/\b((then\s+exit\s+(function|sub|property|for|do))|((then)(\s+[^'\s]+.*$)?=)|(end([\s])+\Y1))\b/i" scheme="vbScript" region00="Keyword" region10="Keyword" region01="PairStart" region11="PairEnd"/>
         <regexp match="/(\bExit\s+(function|sub|property|for|do)\b)/i" region0="Keyword"/>

         <regexp match="/\b\M Class\s+(\w+)/ix" region1="ClassOutline"/>
         <inherit scheme="vbasic:Outlines"/>

         <regexp match="/(\bproperty\b)?#8(\s+\b(let|set|get)\b)/i" region2="Keyword"/>
         <regexp match="/\.(class|property)\b/i"/>
         <block start="/\b(with|function|sub|class|property)\b/i" end="/\b(end([\s])+\Y1)\b/i" scheme="vbScript" region00="Keyword" region10="Keyword" region01="PairStart" region11="PairEnd"/>
         <block start="/((\bselect\b)\s+\bcase\b)/i" end="/\b(end([\s])+\Y2)\b/i" scheme="vbScript" region00="Keyword" region10="Keyword" region01="PairStart" region11="PairEnd"/>
         <block start="/\b(for(\s+each)?)\b/i" end="/([^\S]+|^)\m(\bnext)\b/i" scheme="vbScript" region00="Keyword" region10="Keyword" region01="PairStart" region12="PairEnd"/>
         <block start="/\b(do(\s+(while|until))?)\b/i" end="/\b(loop(\s+(while|until))?)\b/i" scheme="vbScript" region00="Keyword" region10="Keyword" region01="PairStart" region11="PairEnd"/>
         <block start="/\b(while)\b/i" end="/\b(wend)\b/i" scheme="vbScript" region00="Keyword" region10="Keyword" region01="PairStart" region11="PairEnd"/>
         <regexp match="/(\bOn\s+Error\s+(Resume\s+Next)|(Goto\s+0)\b)/i" region0="Keyword"/>
         <keywords ignorecase="yes" region="Keyword">
            <word name="Call"/>
            <word name="Case"/>
            <word name="ByVal"/>
            <word name="ByRef"/>
            <word name="Dim"/>
            <word name="Error"/>
            <word name="else"/>
            <word name="elseIf"/>
            <word name="End"/>
            <word name="Erase"/>
            <word name="Exit"/>
            <word name="In"/>
            <word name="Nothing"/>
            <word name="on"/>
            <word name="Preserve"/>
            <word name="Private"/>
            <word name="Public"/>
            <word name="ReDim"/>
            <word name="raise"/>
            <word name="resume"/>
            <word name="Set"/>
            <word name="Step"/>
            <word name="Sub"/>
            <word name="then"/>
            <word name="To"/>
            <word name="Until"/>
            <word name="With"/>
            <word name="Wend"/>
            <word name="While"/>
            <word name="New"/>
         </keywords>
         <keywords ignorecase="yes" region="Symbol">
<!-- Operators Arithmetic -->
            <symb name="^"/>
            <symb name="*"/>
            <symb name="/"/>
            <symb name="\"/>
            <symb name="+"/>
            <symb name="-"/>
            <symb name="&amp;"/>
<!-- Operators Comparison -->
            <symb name="="/>
            <symb name="&lt;&gt;"/>
            <symb name="&lt;"/>
            <symb name="&lt;="/>
            <symb name="&gt;"/>
            <symb name="&gt;="/>
            <word name="Is"/>
            <word name="Mod"/>
            <word name="Like"/>
<!-- Operators Logical -->
            <word name="Not"/>
            <word name="And"/>
            <word name="Or"/>
            <word name="Xor"/>
            <word name="Eqv"/>
            <word name="Imp"/>
            <symb name="~"/>
         </keywords>
         <keywords ignorecase="yes" region="Constant">
<!-- Color Constants -->
            <word name="vbBlack"/>
            <word name="vbRed"/>
            <word name="vbGreen"/>
            <word name="vbYellow"/>
            <word name="vbBlue"/>
            <word name="vbMagenta"/>
            <word name="vbCyan"/>
            <word name="vbWhite"/>
<!-- Comparison Constants -->
            <word name="vbBinaryCompare"/>
            <word name="vbTextCompare"/>
            <word name="vbDatabaseCompare"/>
<!-- Date and Time Constants -->
            <word name="vbSunday"/>
            <word name="vbMonday"/>
            <word name="vbTuesday"/>
            <word name="vbWednesday"/>
            <word name="vbThursday"/>
            <word name="vbFriday"/>
            <word name="vbSaturday"/>
            <word name="vbFirstJan1"/>
            <word name="vbFirstFourDays"/>
            <word name="vbFirstFullWeek"/>
            <word name="vbUseSystem"/>
            <word name="vbUseSystemDayOfWeek"/>
<!-- Date Format Constants -->
            <word name="vbGeneralDate"/>
            <word name="vbLongDate"/>
            <word name="vbShortDate"/>
            <word name="vbLongTime"/>
            <word name="vbShortTime"/>
<!-- File Input/Output Constants  -->
            <word name="ForReading"/>
            <word name="ForWriting"/>
            <word name="ForAppending"/>
<!-- Miscellaneous Constants -->
            <word name="vbObjectError"/>
<!-- MsgBox Constants -->
            <word name="vbOKOnly"/>
            <word name="vbOKCancel"/>
            <word name="vbAbortRetryIgnore"/>
            <word name="vbYesNoCancel"/>
            <word name="vbYesNo"/>
            <word name="vbRetryCancel"/>
            <word name="vbCritical"/>
            <word name="vbQuestion"/>
            <word name="vbExclamation"/>
            <word name="vbInformation "/>
            <word name="vbDefaultButton1"/>
            <word name="vbDefaultButton2 "/>
            <word name="vbDefaultButton3"/>
            <word name="vbDefaultButton4 "/>
            <word name="vbApplicationModal"/>
            <word name="vbSystemModal"/>
            <word name="vbOK"/>
            <word name="vbCancel"/>
            <word name="vbAbort"/>
            <word name="vbRetry"/>
            <word name="vbIgnore"/>
            <word name="vbYes"/>
            <word name="vbNo"/>
<!-- String Constants -->
            <word name="vbCr"/>
            <word name="vbCrLf"/>
            <word name="vbFormFeed"/>
            <word name="vbLf"/>
            <word name="vbNewLine"/>
            <word name="vbNullChar"/>
            <word name="vbNullString"/>
            <word name="vbTab"/>
            <word name="vbVerticalTab"/>
<!-- Tristate Constants -->
            <word name="TristateTrue"/>
            <word name="TristateFalse"/>
            <word name="TristateUseDefault"/>
<!-- VarType Constants -->
            <word name="vbEmpty"/>
            <word name="vbNull"/>
            <word name="vbInteger"/>
            <word name="vbLong"/>
            <word name="vbSingle"/>
            <word name="vbDouble"/>
            <word name="vbCurrency"/>
            <word name="vbDate"/>
            <word name="vbString"/>
            <word name="vbObject"/>
            <word name="vbError"/>
            <word name="vbBoolean"/>
            <word name="vbVariant"/>
            <word name="vbDataObject"/>
            <word name="vbDecimal"/>
            <word name="vbByte"/>
            <word name="vbArray"/>
         </keywords>
         <keywords ignorecase="yes" region="Var">
<!-- Properties -->
            <symb name=".AtEndOfLine"/>
            <symb name=".AtEndOfStream"/>
            <symb name=".Column"/>
            <symb name=".CompareMode"/>
            <symb name=".Count"/>
            <symb name=".Description"/>
            <symb name=".HelpContext"/>
            <symb name=".HelpFile"/>
            <symb name=".Item"/>
            <symb name=".Key"/>
            <symb name=".Line"/>
            <symb name=".Number"/>
            <symb name=".Source"/>
         </keywords>
         <keywords ignorecase="yes" region="Keyword">
<!-- Objects -->
            <word name="Scripting.Dictionary"/>
            <word name="Err"/>
            <word name="Scripting.FileSystemObject"/>
            <word name="TextStream"/>
            <word name="CreateTextFile"/>
            <word name="OpenTextFile"/>
         </keywords>
         <keywords ignorecase="yes" region="Keyword">
<!-- Methods -->
            <symb name=".Add"/>
            <symb name=".Clear"/>
            <symb name=".Close"/>
            <symb name=".Exists"/>
            <symb name=".Items"/>
            <symb name=".Keys"/>
            <symb name=".Raise"/>
            <symb name=".Read"/>
            <symb name=".ReadAll"/>
            <symb name=".ReadLine"/>
            <symb name=".Remove"/>
            <symb name=".RemoveAll"/>
            <symb name=".Skip"/>
            <symb name=".SkipLine"/>
            <symb name=".Write"/>
            <symb name=".WriteBlankLines"/>
            <symb name=".WriteLine"/>
         </keywords>
         <keywords ignorecase="yes" region="Keyword">
<!-- Functions -->
            <word name="Abs"/>
            <word name="Array"/>
            <word name="Asc"/>
            <word name="Atn"/>
            <word name="CBool"/>
            <word name="CByte"/>
            <word name="CCur"/>
            <word name="CDate"/>
            <word name="CDbl"/>
            <word name="Chr"/>
            <word name="CInt"/>
            <word name="CLng"/>
            <word name="Const"/>
            <word name="Cos"/>
            <word name="CreateObject"/>
            <word name="CSng"/>
            <word name="CStr"/>
            <word name="Date"/>
            <word name="DateAdd"/>
            <word name="DateDiff"/>
            <word name="DatePart"/>
            <word name="DateSerial"/>
            <word name="DateValue"/>
            <word name="Day"/>
            <word name="Exp"/>
            <word name="Filter"/>
            <word name="Fix"/>
            <word name="FormatCurrency"/>
            <word name="FormatDateTime"/>
            <word name="FormatNumber"/>
            <word name="FormatPercent"/>
            <word name="GetObject"/>
            <word name="Hex"/>
            <word name="Hour"/>
            <word name="InputBox"/>
            <word name="InStr"/>
            <word name="InStrRev"/>
            <word name="Int"/>
            <word name="IsArray"/>
            <word name="IsDate"/>
            <word name="IsEmpty"/>
            <word name="IsNull"/>
            <word name="IsNumeric"/>
            <word name="IsObject"/>
            <word name="Join"/>
            <word name="LBound"/>
            <word name="LCase"/>
            <word name="Left"/>
            <word name="Len"/>
            <word name="LoadPicture"/>
            <word name="Log"/>
            <word name="LTrim"/>
            <word name="Mid"/>
            <word name="Minute"/>
            <word name="Month"/>
            <word name="MonthName"/>
            <word name="MsgBox"/>
            <word name="Now"/>
            <word name="Oct"/>
            <word name="Replace"/>
            <word name="Right"/>
            <word name="Rnd"/>
            <word name="Round"/>
            <word name="RTrim"/>
            <word name="ScriptEngine"/>
            <word name="ScriptEngineBuildVersion"/>
            <word name="ScriptEngineMajorVersion"/>
            <word name="ScriptEngineMinorVersion"/>
            <word name="Second"/>
            <word name="Sgn"/>
            <word name="Sin"/>
            <word name="Space"/>
            <word name="Split"/>
            <word name="Sqr"/>
            <word name="StrComp"/>
            <word name="StrReverse"/>
            <word name="String"/>
            <word name="Tan"/>
            <word name="Time"/>
            <word name="TimeSerial"/>
            <word name="TimeValue"/>
            <word name="Trim"/>
            <word name="TypeName"/>
            <word name="UBound"/>
            <word name="UCase"/>
            <word name="VarType"/>
            <word name="Weekday"/>
            <word name="WeekdayName"/>
            <word name="Year"/>
         </keywords>
         <keywords ignorecase="yes" region="BooleanConstant">
<!-- other -->
            <word name="empty"/>
            <word name="true"/>
            <word name="false"/>
            <word name="null"/>
         </keywords>
      </scheme>

   </type>
</hrc>
<!-- ***** BEGIN LICENSE BLOCK *****
   - Version: MPL 1.1/GPL 2.0/LGPL 2.1
   -
   - The contents of this file are subject to the Mozilla Public License Version
   - 1.1 (the "License"); you may not use this file except in compliance with
   - the License. You may obtain a copy of the License at
   - http://www.mozilla.org/MPL/
   -
   - Software distributed under the License is distributed on an "AS IS" basis,
   - WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
   - for the specific language governing rights and limitations under the
   - License.
   -
   - The Original Code is the Colorer Library.
   -
   - The Initial Developer of the Original Code is
   - Cail Lomecb <cail@nm.ru>.
   - Portions created by the Initial Developer are Copyright (C) 1999-2003
   - the Initial Developer. All Rights Reserved.
   -
   - Contributor(s):
   -
   - Alternatively, the contents of this file may be used under the terms of
   - either the GNU General Public License Version 2 or later (the "GPL"), or
   - the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
   - in which case the provisions of the GPL or the LGPL are applicable instead
   - of those above. If you wish to allow use of your version of this file only
   - under the terms of either the GPL or the LGPL, and not to allow others to
   - use your version of this file under the terms of the MPL, indicate your
   - decision by deleting the provisions above and replace them with the notice
   - and other provisions required by the LGPL or the GPL. If you do not delete
   - the provisions above, a recipient may use your version of this file under
   - the terms of any one of the MPL, the GPL or the LGPL.
   -
   - ***** END LICENSE BLOCK ***** -->
