cheat/vendor/github.com/alecthomas/chroma/v2/lexers/embedded/openedge_abl.xml

101 lines
33 KiB
XML
Raw Normal View History

<lexer>
<config>
<name>OpenEdge ABL</name>
<alias>openedge</alias>
<alias>abl</alias>
<alias>progress</alias>
<alias>openedgeabl</alias>
<filename>*.p</filename>
<filename>*.cls</filename>
<filename>*.w</filename>
<filename>*.i</filename>
<mime_type>text/x-openedge</mime_type>
<mime_type>application/x-openedge</mime_type>
</config>
<rules>
<state name="root">
<rule pattern="/\*">
<token type="CommentMultiline"/>
<push state="comment"/>
</rule>
<rule pattern="//.*?$">
<token type="CommentSingle"/>
</rule>
<rule pattern="\{">
<token type="CommentPreproc"/>
<push state="preprocessor"/>
</rule>
<rule pattern="\s*&amp;.*">
<token type="CommentPreproc"/>
</rule>
<rule pattern="0[xX][0-9a-fA-F]+[LlUu]*">
<token type="LiteralNumberHex"/>
</rule>
<rule pattern="(?i)(DEFINE|DEF|DEFI|DEFIN)\b">
<token type="KeywordDeclaration"/>
</rule>
<rule pattern="(?i)(^|(?&lt;=[^\w\-]))(CHARACTER|CHAR|CHARA|CHARAC|CHARACT|CHARACTE|COM-HANDLE|DATE|DATETIME|DATETIME-TZ|DECIMAL|DEC|DECI|DECIM|DECIMA|HANDLE|INT64|INTEGER|INT|INTE|INTEG|INTEGE|LOGICAL|LONGCHAR|MEMPTR|RAW|RECID|ROWID)\s*($|(?=[^\w\-]))">
<token type="KeywordType"/>
</rule>
<rule pattern="(?i)(^|(?&lt;=[^\w\-]))(XML-SUPPRESS-NAMESPACE-PROCESSING|SERVER-CONNECTION-BOUND-REQUEST|SYMMETRIC-ENCRYPTION-ALGORITHM|SUPPRESS-NAMESPACE-PROCESSING|WRITE-PROCESSING-INSTRUCTION|XML-STRICT-ENTITY-RESOLUTION|GET-INDEX-BY-NAMESPACE-NAME|GET-VALUE-BY-NAMESPACE-NAME|NONAMESPACE-SCHEMA-LOCATION|VIEW-FIRST-COLUMN-ON-REOPEN|XML-ENTITY-EXPANSION-LIMIT|GET-TYPE-BY-NAMESPACE-NAME|LOGIN-EXPIRATION-TIMESTAMP|DEFINE-USER-EVENT-MANAGER|PERSISTENT-CACHE-DISABLED|SERVER-CONNECTION-CONTEXT|GET-CALLBACK-PROC-CONTEXT|CREATE-RESULT-LIST-ENTRY|DELETE-RESULT-LIST-ENTRY|DATA-SOURCE-COMPLETE-MAP|INITIALIZE-DOCUMENT-TYPE|STRICT-ENTITY-RESOLUTION|SYMMETRIC-ENCRYPTION-KEY|SET-EVENT-MANAGER-OPTION|WORK-AREA-HEIGHT-PIXELS|BLOCK-ITERATION-DISPLAY|SYMMETRIC-ENCRYPTION-IV|SERVER-CONNECTION-BOUND|GRID-UNIT-HEIGHT-PIXELS|EVENT-PROCEDURE-CONTEXT|MIN-COLUMN-WIDTH-PIXELS|REMOVE-EVENTS-PROCEDURE|CREATE-LIKE-SEQUENTIAL|WORK-AREA-WIDTH-PIXELS|PRINTER-CONTROL-HANDLE|GET-CALLBACK-PROC-NAME|REMOVE-SUPER-PROCEDURE|ALLOW-COLUMN-SEARCHING|GRID-FACTOR-HORIZONTAL|GET-LOCALNAME-BY-INDEX|REPLACE-SELECTION-TEXT|RETURN-VALUE-DATA-TYPE|INCREMENT-EXCLUSIVE-ID|GRID-UNIT-HEIGHT-CHARS|LOAD-IMAGE-INSENSITIVE|SET-OUTPUT-DESTINATION|GRID-UNIT-WIDTH-PIXELS|MIN-COLUMN-WIDTH-CHARS|MIN-COLUMN-WIDTH-PIXEL|ENTITY-EXPANSION-LIMIT|GRID-UNIT-HEIGHT-PIXEL|NEEDS-APPSERVER-PROMPT|SCROLL-TO-SELECTED-ROW|NO-SEPARATE-CONNECTION|GET-TEXT-HEIGHT-PIXELS|GRID-UNIT-WIDTH-CHARS|MIN-COLUMN-WIDTH-PIXE|NO-SCROLLBAR-VERTICAL|SCROLLED-ROW-POSITION|GET-TEXT-HEIGHT-PIXEL|ENCRYPT-AUDIT-MAC-KEY|SCROLL-TO-CURRENT-ROW|MULTITASKING-INTERVAL|GET-TEXT-WIDTH-PIXELS|CAN-DO-DOMAIN-SUPPORT|GET-TEXT-HEIGHT-CHARS|GRID-UNIT-WIDTH-PIXEL|GRID-UNIT-HEIGHT-PIXE|SERVER-OPERATING-MODE|CREATE-NODE-NAMESPACE|MIN-COLUMN-WIDTH-CHAR|DISABLE-LOAD-TRIGGERS|LOCATOR-COLUMN-NUMBER|CURRENT-RESPONSE-INFO|DISABLE-DUMP-TRIGGERS|DESELECT-SELECTED-ROW|GRID-FACTOR-HORIZONTA|VIRTUAL-HEIGHT-PIXELS|AUTHENTICATION-FAILED|DEFAULT-BUFFER-HANDLE|BORDER-BOTTOM-PIXELS|FIND-PREV-OCCURRENCE|DELETE-SELECTED-ROWS|GET-TEXT-WIDTH-PIXEL|SET-REPOSITIONED-ROW|GRID-UNIT-WIDTH-PIXE|NUM-SELECTED-WIDGETS|VIRTUAL-HEIGHT-CHARS|VIRTUAL-HEIGHT-PIXEL|SERVER-CONNECTION-ID|GRID-UNIT-WIDTH-CHAR|NODE-VALUE-TO-MEMPTR|ASYNC-REQUEST-HANDLE|VIRTUAL-WIDTH-PIXELS|GET-TEXT-WIDTH-CHARS|GRID-FACTOR-HORIZONT|GRID-FACTOR-VERTICAL|NO-CONVERT-3D-COLORS|CLIENT-CONNECTION-ID|GET-TEXT-HEIGHT-PIXE|REFRESH-AUDIT-POLICY|MOVE-BEFORE-TAB-ITEM|SCROLLED-ROW-POSITIO|KEEP-CONNECTION-OPEN|DATA-SOURCE-MODIFIED|GET-REPOSITIONED-ROW|SCROLLBAR-HORIZONTAL|GET-TEXT-HEIGHT-CHAR|GRID-UNIT-HEIGHT-CHA|MIN-COLUMN-WIDTH-PIX|CURRENT-ROW-MODIFIED|CURRENT-REQUEST-INFO|MIN-COLUMN-WIDTH-CHA|DESELECT-FOCUSED-ROW|ADD-EVENTS-PROCEDURE|TRANS-INIT-PROCEDURE|MARGIN-HEIGHT-PIXELS|GRID-UNIT-HEIGHT-PIX|MEMPTR-TO-NODE-VALUE|FIND-NEXT-OCCURRENCE|FOCUSED-ROW-SELECTED|FIRST-ASYNCH-REQUEST|CURRENT-ENVIRONMENT|ADD-SUPER-PROCEDURE|FIND-CASE-SENSITIVE|GRID-UNIT-HEIGHT-PI|MARGIN-HEIGHT-PIXEL|MARGIN-HEIGHT-CHARS|MIN-COLUMN-WIDTH-CH|COPY-SAX-ATTRIBUTES|GET-SELECTED-WIDGET|VIRTUAL-WIDTH-CHARS|VALIDATE-EXPRESSION|MIN-COLUMN-WIDTH-PI|LOCATOR-LINE-NUMBER|BORDER-RIGHT-PIXELS|RETURN-TO-START-DIR|GET-TEXT-HEIGHT-CHA|SCROLLBAR-HORIZONTA|GRID-UNIT-HEIGHT-CH|SCROLLED-ROW-POSITI|REPOSITION-TO-ROWID|MOVE-AFTER-TAB-ITEM|REPOSITION-BACKWARD|ADD-SCHEMA-LOCATION|MOVE-BEFORE-TAB-ITE|LIST-PROPERTY-NAMES|MARGIN-WIDTH-PIXELS|WRITE-EMPTY-ELEMENT|GET-TEXT-HEIGHT-PIX|PROCEDURE-CALL-TYPE|GENERATE-RANDOM-KEY|SKIP-DELETED-RECORD|LAST-ASYNCH-REQUEST|GRID-FACTOR-VERTICA|SEPARATE-CONNECTION|GET-TEXT-WIDTH-CHAR|GRID-UNIT-WIDTH-CHA|VIRTUAL-WIDTH-PIXEL|ASYNC-REQUEST-COUNT|AUDIT-EVENT-CONTEXT|BUFFER-PARTITION-ID|BORDER-BOTTOM-PIXEL|VIRTUAL-HEIGHT-CHAR|GRID-FACTOR-HORIZON|GET-TEXT-WIDTH-PIXE|NUM-SELECTED-WIDGET|GRID-UNIT-WIDTH-PIX|VIRTUAL-HEIGHT-PIXE|DELETE-SELECTED-ROW|KEEP-SECURITY-CACHE|BORDER-BOTTOM-CHARS|NUM-VISIBLE-COLUMNS|DOMAIN-DESCRIPTION|GRID-FACTOR-HORIZO|PBE-HASH-ALGORITHM|GET-VALUE-BY-QNAME|GET-VALUE-BY-INDEX|GET-UNSIGNED-SHORT|NUM-SELECTED-WIDGE|BORDER-BOTTOM-PIXE|NUM-LOCKED-COLUMNS|GET-TEXT-WIDTH-PIX|DELETE-CURRENT-ROW|GET-TEXT-WI
<token type="KeywordReserved"/>
</rule>
<rule pattern="&#34;(~~|~[^~]|[^&#34;~])*&#34;">
<token type="LiteralStringDouble"/>
</rule>
<rule pattern="&#39;(~~|~[^~]|[^&#34;~])*&#39;">
<token type="LiteralStringSingle"/>
</rule>
<rule pattern="[0-9][0-9]*\.[0-9]+([eE][0-9]+)?[fd]?">
<token type="LiteralNumberFloat"/>
</rule>
<rule pattern="[0-9]+">
<token type="LiteralNumberInteger"/>
</rule>
<rule pattern="\s+">
<token type="Text"/>
</rule>
<rule pattern="[+*/=-]">
<token type="Operator"/>
</rule>
<rule pattern="[.:()]">
<token type="Punctuation"/>
</rule>
<rule pattern=".">
<token type="NameVariable"/>
</rule>
</state>
<state name="comment">
<rule pattern="[^*/]">
<token type="CommentMultiline"/>
</rule>
<rule pattern="/\*">
<token type="CommentMultiline"/>
<push/>
</rule>
<rule pattern="\*/">
<token type="CommentMultiline"/>
<pop depth="1"/>
</rule>
<rule pattern="[*/]">
<token type="CommentMultiline"/>
</rule>
<rule pattern="\/\/">
<token type="CommentSingle"/>
</rule>
</state>
<state name="preprocessor">
<rule pattern="[^{}]">
<token type="CommentPreproc"/>
</rule>
<rule pattern="\{">
<token type="CommentPreproc"/>
<push/>
</rule>
<rule pattern="\}">
<token type="CommentPreproc"/>
<pop depth="1"/>
</rule>
</state>
</rules>
</lexer>