home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 5 Edit / 05-Edit.zip / con2v766.zip / colore01.zip / includes / rarelng / cobol.hrc < prev    next >
Text File  |  2000-02-26  |  12KB  |  416 lines

  1. <!--
  2.    COBOL Syntax description
  3.    Written by Alexey Matiushkin <matiushkin@hotmail.com>
  4.    Thanks to Cail Lomecb!
  5.  
  6.    Known bugs:
  7.    1. I was forced to make a choice between identifiers (LOOP-VAR) and directives (PROGRAM-ID). I'll solve this!
  8. -->
  9.  
  10. <Define Name="CobIdent"    Value="dStrings">
  11. <Define Name="CobDirect"   Value="dDirectives">
  12. <Define Name="CobString"   Value="dStrings">
  13. <Define Name="CobComment"  Value="dComments">
  14. <Define Name="CobWord"     Value="dResWords">
  15. <Define Name="CobSymb"     Value="dResWords">
  16. <Define Name="CobNumb"     Value="dNumbers">
  17.  
  18. <Scheme Name="Cobol">
  19.    <!-- Comments-->
  20.    <RegExp Start="/^(.{6}?[^\s\x2D].*$)/" Color0="CobComment">
  21.    <RegExp Start="/^.{72}?[\s]*\m(\b.+\B).*\M$/" Color0="CobComment">
  22.    <!-- Standard COBOL Identifiers -->
  23.    <RegExp Start="/^.{6}?[\s\x2D]+\m(\b[\w\d]+)(\x2D)([\s]+)\M\x2D/" Color0="CobDirect" Color1="CobDirect" Color2="CobDirect">
  24.    <RegExp Start="/(\b\w+)(\x2D)([^\s\r\n\x2E\x2C]+)/" Color0="CobIdent" Color1="CobIdent" Color2="CobIdent">
  25.    <!-- Numbers -->
  26.    <RegExp Start="/\b (0x|X[\da-fA-F]+)  ([UuLl]+|(i64)|(i128))? \B/x"
  27.            Color0="CobNumb" Color1="CobNumb">
  28.    <RegExp Start="/\c(\d*\.?\d+(e|E[\-+]?\d+)?)([lLfF]?)\B/"
  29.            Color0="CobNumb" Color2="CobNumb">
  30.    <RegExp Start="/\b(\d+)(([UuLl]+)|(i64)|(i128))?\B/"
  31.            Color0="CobNumb" Color1="CobNumb">
  32.    <!-- Strings -->
  33.    <RegExp Start='/("((\\.)|[^\\"])*")/' Color0="CobString">
  34.    <RegExp Start="/('..??.??.??')/" Color0="CobString">
  35.    <!-- Multyline Strings ... -->
  36.    <Block  Start='/\"/' End="/^.{6}\x2D/" Scheme="Comment" Color0="CobString">
  37.    <!-- Standard COBOL Symbols -->
  38.    <KeyWords Color="CobSymb">
  39.       <Symb Name=";"><Symb Name="="><Symb Name="+"><Symb Name="-">
  40.       <Symb Name="/"><Symb Name="*"><Symb Name="&"><Symb Name="|">
  41.       <Symb Name="^"><Symb Name="("><Symb Name=")"><Symb Name="[">
  42.       <Symb Name="]"><Symb Name=","><Symb Name="."><Symb Name=":">
  43.       <Symb Name="!"><Symb Name="~"><Symb Name="<"><Symb Name=">">
  44.       <Symb Name="%"><Symb Name="{"><Symb Name="}"><Symb Name="?">
  45.    </KeyWords>
  46.    <!-- COBOL Directives -->
  47.    <KeyWords MatchCase="False" Color="CobDirect">
  48.       <Word Name="AUTHOR">
  49.       <Word Name="CONFIGURATION">
  50.       <Word Name="DATA">
  51.       <Word Name="DATE-COMPILED">
  52.       <Word Name="DATE-WRITTEN">
  53.       <Word Name="DIVISION">
  54.       <Word Name="ENVIRONMENT">
  55.       <Word Name="FILE">
  56.       <Word Name="FILE-CONTROL">
  57.       <Word Name="IDENTIFICATION">
  58.       <Word Name="INPUT-OUTPUT">
  59.       <Word Name="LINKAGE">
  60.       <Word Name="OBJECT-COMPUTER">
  61.       <Word Name="PROCEDURE">
  62.       <Word Name="PROGRAM-ID">
  63.       <Word Name="SECTION">
  64.       <Word Name="SOURCE-COMPUTER">
  65.       <Word Name="WORKING-STORAGE">
  66.    </KeyWords>
  67.    <!-- COBOL KeyWords -->
  68.    <KeyWords MatchCase="False" Color="CobWord">
  69.     <Word Name="ACCEPT">
  70.     <Word Name="ACCESS">
  71.     <Word Name="ADD">
  72.     <Word Name="ADVANCING">
  73.     <Word Name="AFTER">
  74.     <Word Name="ALL">
  75.     <Word Name="ALPHABET">
  76.     <Word Name="ALPHABETIC">
  77.     <Word Name="ALPHABETIC-LOWER">
  78.     <Word Name="ALPHABETIC-UPPER">
  79.     <Word Name="ALPHANUMERIC">
  80.     <Word Name="ALPHANUMERIC-EDITED">
  81.     <Word Name="ALPHBET">
  82.     <Word Name="ALSO">
  83.     <Word Name="ALTER">
  84.     <Word Name="ALTERNATE">
  85.     <Word Name="AND">
  86.     <Word Name="ANY">
  87.     <Word Name="ARE">
  88.     <Word Name="AREA">
  89.     <Word Name="AREAS">
  90.     <Word Name="ASCENDING">
  91.     <Word Name="ASSIGN">
  92.     <Word Name="AT">
  93.     <Word Name="BEFORE">
  94.     <Word Name="BINARY">
  95.     <Word Name="BLANK">
  96.     <Word Name="BLOCK">
  97.     <Word Name="BOTTOM">
  98.     <Word Name="BY">
  99.     <Word Name="CALL">
  100.     <Word Name="CANCEL">
  101.     <Word Name="CD">
  102.     <Word Name="CF">
  103.     <Word Name="CH">
  104.     <Word Name="CHARACTER">
  105.     <Word Name="CHARACTERS">
  106.     <Word Name="CLASS">
  107.     <Word Name="CLOCK-UNITS">
  108.     <Word Name="CLOSE">
  109.     <Word Name="COBOL">
  110.     <Word Name="CODE">
  111.     <Word Name="CODE-SET">
  112.     <Word Name="COLLATING">
  113.     <Word Name="COLUMN">
  114.     <Word Name="COMMA">
  115.     <Word Name="COMMON">
  116.     <Word Name="COMMUNICATION">
  117.     <Word Name="COMP">
  118.     <Word Name="COMPUTATIONAL">
  119.     <Word Name="COMPUTE">
  120.     <Word Name="CONSOLE">
  121.     <Word Name="CONTAINS">
  122.     <Word Name="CONTENT">
  123.     <Word Name="CONTINUE">
  124.     <Word Name="CONTROL">
  125.     <Word Name="CONTROLS">
  126.     <Word Name="CONVERTING">
  127.     <Word Name="COPY">
  128.     <Word Name="CORR">
  129.     <Word Name="CORRESPONDING">
  130.     <Word Name="COUNT">
  131.     <Word Name="CRT">
  132.     <Word Name="CURRENCY">
  133.     <Word Name="CURSOR">
  134.     <Word Name="DATE">
  135.     <Word Name="DATE-COMPILED">
  136.     <Word Name="DATE-WRITTEN">
  137.     <Word Name="DAY">
  138.     <Word Name="DAY-OF-WEEK">
  139.     <Word Name="DE">
  140.     <Word Name="DEBUB-SUB1">
  141.     <Word Name="DEBUG-CONTENTS">
  142.     <Word Name="DEBUG-ITEM">
  143.     <Word Name="DEBUG-LINE">
  144.     <Word Name="DEBUG-NAME">
  145.     <Word Name="DEBUG-SUB2">
  146.     <Word Name="DEBUG-SUB3">
  147.     <Word Name="DEBUGGING">
  148.     <Word Name="DECIMAL">
  149.     <Word Name="DECIMAL-POINT">
  150.     <Word Name="DECLARATIVES">
  151.     <Word Name="DELETE">
  152.     <Word Name="DELIMITED">
  153.     <Word Name="DELIMITER">
  154.     <Word Name="DEPENDING">
  155.     <Word Name="DESCENDING">
  156.     <Word Name="DESTINATION">
  157.     <Word Name="DETAIL">
  158.     <Word Name="DISABLE">
  159.     <Word Name="DISPLAY">
  160.     <Word Name="DIVIDE">
  161.     <Word Name="DOWN">
  162.     <Word Name="DUPLICATE">
  163.     <Word Name="DYNAMIC">
  164.     <Word Name="EGI">
  165.     <Word Name="ELSE">
  166.     <Word Name="EMI">
  167.     <Word Name="ENABLE">
  168.     <Word Name="END">
  169.     <Word Name="END-ADD">
  170.     <Word Name="END-CALL">
  171.     <Word Name="END-COMPUTE">
  172.     <Word Name="END-DELETE">
  173.     <Word Name="END-DIVIDE">
  174.     <Word Name="END-EVALUATE">
  175.     <Word Name="END-IF">
  176.     <Word Name="END-MULTIPLY">
  177.     <Word Name="END-OF-PAGE">
  178.     <Word Name="END-PERFORM">
  179.     <Word Name="END-READ">
  180.     <Word Name="END-RECIEVE">
  181.     <Word Name="END-RETURN">
  182.     <Word Name="END-REWRITE">
  183.     <Word Name="END-SEARCH">
  184.     <Word Name="END-START">
  185.     <Word Name="END-STRING">
  186.     <Word Name="END-SUBSTRACT">
  187.     <Word Name="END-UNSTRING">
  188.     <Word Name="END-WRITE">
  189.     <Word Name="ENTER">
  190.     <Word Name="EOF">
  191.     <Word Name="EOP">
  192.     <Word Name="EQUAL">
  193.     <Word Name="ERROR">
  194.     <Word Name="ESI">
  195.     <Word Name="EVALUATE">
  196.     <Word Name="EVERY">
  197.     <Word Name="EXCEPTION">
  198.     <Word Name="EXIT">
  199.     <Word Name="EXTEND">
  200.     <Word Name="EXTERNAL">
  201.     <Word Name="FALSE">
  202.     <Word Name="FD">
  203.     <Word Name="FILLER">
  204.     <Word Name="FINAL">
  205.     <Word Name="FIRST">
  206.     <Word Name="FOOTING">
  207.     <Word Name="FOR">
  208.     <Word Name="FROM">
  209.     <Word Name="FROM">
  210.     <Word Name="FUNCTION">
  211.     <Word Name="GENERATE">
  212.     <Word Name="GIVING">
  213.     <Word Name="GLOVAL">
  214.     <Word Name="GO">
  215.     <Word Name="GREATER">
  216.     <Word Name="GROUP">
  217.     <Word Name="HEADING">
  218.     <Word Name="HIGH-VALUE">
  219.     <Word Name="HIGH-VALUES">
  220.     <Word Name="I-O">
  221.     <Word Name="I-O-CONTROL">
  222.     <Word Name="IF">
  223.     <Word Name="IN">
  224.     <Word Name="INDEX">
  225.     <Word Name="INDEXED">
  226.     <Word Name="INDICATE">
  227.     <Word Name="INITIAL">
  228.     <Word Name="INITIALIZE">
  229.     <Word Name="INITIATE">
  230.     <Word Name="INPUT">
  231.     <Word Name="INSPECT">
  232.     <Word Name="INSTALLATION">
  233.     <Word Name="INTO">
  234.     <Word Name="INVALID">
  235.     <Word Name="IS">
  236.     <Word Name="JUST">
  237.     <Word Name="JUSTIFIED">
  238.     <Word Name="KEY">
  239.     <Word Name="LABEL">
  240.     <Word Name="LAST">
  241.     <Word Name="LEADING">
  242.     <Word Name="LEFT">
  243.     <Word Name="LENGTH">
  244.     <Word Name="LESS">
  245.     <Word Name="LICK">
  246.     <Word Name="LIMIT">
  247.     <Word Name="LIMITS">
  248.     <Word Name="LINAGE">
  249.     <Word Name="LINAGE-COUNTER">
  250.     <Word Name="LINE">
  251.     <Word Name="LINE-COUNTER">
  252.     <Word Name="LINES">
  253.     <Word Name="LOCK">
  254.     <Word Name="LOW-VALUE">
  255.     <Word Name="LOW-VALUES">
  256.     <Word Name="MEMORY">
  257.     <Word Name="MERGE">
  258.     <Word Name="MESSAGE">
  259.     <Word Name="MODE">
  260.     <Word Name="MODULES">
  261.     <Word Name="MORE">
  262.     <Word Name="MOVE">
  263.     <Word Name="MULTIPLE">
  264.     <Word Name="MULTIPLY">
  265.     <Word Name="NATIVE">
  266.     <Word Name="NEGATIVE">
  267.     <Word Name="NEXT">
  268.     <Word Name="NO">
  269.     <Word Name="NOT">
  270.     <Word Name="NUMBER">
  271.     <Word Name="NUMERIC">
  272.     <Word Name="NUMERIC-EDITED">
  273.     <Word Name="OCCURS">
  274.     <Word Name="OF">
  275.     <Word Name="OFF">
  276.     <Word Name="OMITTED">
  277.     <Word Name="ON">
  278.     <Word Name="OPEN">
  279.     <Word Name="OPTIONAL">
  280.     <Word Name="OR">
  281.     <Word Name="ORDER">
  282.     <Word Name="ORGANIZATION">
  283.     <Word Name="OTHER">
  284.     <Word Name="OUTPUT">
  285.     <Word Name="OVERFLOW">
  286.     <Word Name="PACKED-DECIMAL">
  287.     <Word Name="PADDING">
  288.     <Word Name="PAGE">
  289.     <Word Name="PAGE-COUNTER">
  290.     <Word Name="PAGES">
  291.     <Word Name="PERFORM">
  292.     <Word Name="PF">
  293.     <Word Name="PH">
  294.     <Word Name="PIC">
  295.     <Word Name="PICTURE">
  296.     <Word Name="PLUS">
  297.     <Word Name="POINT">
  298.     <Word Name="POINTER">
  299.     <Word Name="POSITION">
  300.     <Word Name="POSITIVE">
  301.     <Word Name="PRINTING">
  302.     <Word Name="PROCEDURES">
  303.     <Word Name="PROCEED">
  304.     <Word Name="PROGRAM">
  305.     <Word Name="PURGE">
  306.     <Word Name="QUEUE">
  307.     <Word Name="QUOTE">
  308.     <Word Name="QUOTES">
  309.     <Word Name="RANDOM">
  310.     <Word Name="RD">
  311.     <Word Name="READ">
  312.     <Word Name="RECIEVE">
  313.     <Word Name="RECORD">
  314.     <Word Name="RECORDS">
  315.     <Word Name="REDEFINES">
  316.     <Word Name="REEL">
  317.     <Word Name="REFERENCE">
  318.     <Word Name="REFERENCES">
  319.     <Word Name="RELATIVE">
  320.     <Word Name="RELEASE">
  321.     <Word Name="REMAINDER">
  322.     <Word Name="REMOVAL">
  323.     <Word Name="RENAMES">
  324.     <Word Name="REPLACE">
  325.     <Word Name="REPLACING">
  326.     <Word Name="REPORT">
  327.     <Word Name="REPORTING">
  328.     <Word Name="REPORTS">
  329.     <Word Name="RERUN">
  330.     <Word Name="RESERVE">
  331.     <Word Name="RETURN">
  332.     <Word Name="REVERSED">
  333.     <Word Name="REWIND">
  334.     <Word Name="REWRITE">
  335.     <Word Name="RF">
  336.     <Word Name="RH">
  337.     <Word Name="RIGHT">
  338.     <Word Name="ROUNDED">
  339.     <Word Name="RUN">
  340.     <Word Name="SAME">
  341.     <Word Name="SCREEN">
  342.     <Word Name="SD">
  343.     <Word Name="SEARCH">
  344.     <Word Name="SECURITY">
  345.     <Word Name="SEGMENT">
  346.     <Word Name="SEGMENT-LIMIT">
  347.     <Word Name="SELECT">
  348.     <Word Name="SEND">
  349.     <Word Name="SENTENCE">
  350.     <Word Name="SEPARATE">
  351.     <Word Name="SEQUENCE">
  352.     <Word Name="SEQUENTIAL">
  353.     <Word Name="SET">
  354.     <Word Name="SIGN">
  355.     <Word Name="SIZE">
  356.     <Word Name="SORT">
  357.     <Word Name="SORT-MERGE">
  358.     <Word Name="SOURCE">
  359.     <Word Name="SPACE">
  360.     <Word Name="SPACES">
  361.     <Word Name="SPECIAL-NAMES">
  362.     <Word Name="STANDARD">
  363.     <Word Name="STANDARD-1">
  364.     <Word Name="STANDARD-2">
  365.     <Word Name="START">
  366.     <Word Name="STATUS">
  367.     <Word Name="STOP">
  368.     <Word Name="STRING">
  369.     <Word Name="SUB-QUEUE-1">
  370.     <Word Name="SUB-QUEUE-2">
  371.     <Word Name="SUB-QUEUE-3">
  372.     <Word Name="SUBTRACT">
  373.     <Word Name="SUM">
  374.     <Word Name="SUPPRESS">
  375.     <Word Name="SYMBOLIC">
  376.     <Word Name="SYNC">
  377.     <Word Name="SYNCHRONIZED">
  378.     <Word Name="TALLYING">
  379.     <Word Name="TAPE">
  380.     <Word Name="TERMINAL">
  381.     <Word Name="TERMINATE">
  382.     <Word Name="TEST">
  383.     <Word Name="TEXT">
  384.     <Word Name="THAN">
  385.     <Word Name="THEN">
  386.     <Word Name="THROUGH">
  387.     <Word Name="THRU">
  388.     <Word Name="TIME">
  389.     <Word Name="TIMES">
  390.     <Word Name="TO">
  391.     <Word Name="TOP">
  392.     <Word Name="TRAILING">
  393.     <Word Name="TRUE">
  394.     <Word Name="TYPE">
  395.     <Word Name="UNIT">
  396.     <Word Name="UNSTRING">
  397.     <Word Name="UNTIL">
  398.     <Word Name="UP">
  399.     <Word Name="UPON">
  400.     <Word Name="USAGE">
  401.     <Word Name="USE">
  402.     <Word Name="USING">
  403.     <Word Name="VALUE">
  404.     <Word Name="VALUES">
  405.     <Word Name="VARYING">
  406.     <Word Name="WHEN">
  407.     <Word Name="WITH">
  408.     <Word Name="WORDS">
  409.     <Word Name="WRITE">
  410.     <Word Name="WRTIE">
  411.     <Word Name="ZERO">
  412.     <Word Name="ZEROES">
  413.     <Word Name="ZEROS">
  414.    </KeyWords>
  415. </Scheme>
  416.