ABAP在Sublime Text编辑器里语法高亮所必需的两个文件

{

 "scope": "source.abp",

 "completions":

 [

   "ABS",

   "ACOS",

   "ADD",

   "ADD-CORRESPONDING",

   "ADJACENT",

   "AFTER",

   "ALIASES",

   "ALL",

   "ANALYZER",

   "AND",

   "ANY",

   "APPEND",

   "APPENDING",

   "AS",

   "ASCENDING",

   "ASIN",

   "ASSERT",

   "ASSIGN",

   "ASSIGNED",

   "ASSIGNING",

   "AT",

   "ATAN",

   "AUTHORITY-CHECK",

   "AVG",

   "BACK",

   "BASE",

   "BEFORE",

   "BEGIN",

   "BINARY",

   "BIT",

   "BIT-AND",

   "BIT-NOT",

   "BIT-OR",

   "BIT-XOR",

   "BLANK",

   "BLOCK",

   "BOUND",

   "BREAK-POINT",

   "BUFFER",

   "BY",

   "CALL",

   "CASE",

   "CAST",

   "CATCH",

   "CEIL",

   "CENTERED",

   "CLASS",

   "CLASS-DATA",

   "CLASS-EVENTS",

   "CLASS-METHODS",

   "CLASS-POOL",

   "CLEAR",

   "CLIENT",

   "CLOSE",

   "CNT",

   "CODE",

   "COLLECT",

   "COLOR",

   "COMMENT",

   "COMMIT",

   "COMMUNICATION",

   "COMPUTE",

   "CONCATENATE",

   "COND",

   "CONV",  

   "CONDENSE",

   "CONSTANTS",

   "CONTEXT",

   "CONTEXTS",

   "CONTINUE",

   "CONTROL",

   "CONTROLS",

   "CONVERSION",

   "CONVERT",

   "COPY",

   "CORRESPONDING",

   "COS",

   "COSH",

   "COUNT",

   "COUNTRY",

   "CREATE",

   "CURRENCY",

   "CURSOR",

   "CUSTOMER-FUNCTION",

   "DATA",

   "DATABASE",

   "DATASET",

   "DECIMALS",

   "DEFAULT",

   "DEFINE",

   "DEFINITION",

   "DELETE",

   "DELETING",

   "DEMAND",

   "DESCENDING",

   "DESCRIBE",

   "DIALOG",

   "DISTINCT",

   "DIV",

   "DIVIDE",

   "DIVIDE-CORRESPONDING",

   "DO",

   "DUPLICATES",

   "DYNPRO",

   "EDIT",

   "EDITOR-CALL",

   "ELSE",

   "ELSEIF",

   "ENCODING",

   "END",

   "ENDAT",

   "ENDCASE",

   "ENDCATCH",

   "ENDCLASS",

   "ENDDO",

   "ENDEXEC",

   "ENDFORM",

   "ENDFUNCTION",

   "ENDCHAIN",

   "ENDIF",

   "ENDINTERFACE",

   "ENDLOOP",

   "ENDMETHOD",

   "ENDMODULE",

   "END-OF-DEFINITION",

   "END-OF-PAGE",

   "END-OF-SELECTION",

   "ENDON",

   "ENDPROVIDE",

   "ENDSELECT",

   "ENDTRY",

   "ENDWHILE",

   "ENTRIES",

   "ERRORS",

   "EVENTS",

   "EXCEPTIONS",

   "EXCLUDING",

   "EXEC",

   "EXIT",

   "EXIT-COMMAND",

   "EXP",

   "EXPONENT",

   "EXPORT",

   "EXPORTING",

   "EXTENDED",

   "EXTRACT",

   "FETCH",

   "FIELD",

   "FIELD-GROUPS",

   "FIELDS",

   "FIELD-SYMBOLS",

   "FIRST",

   "FIND",

   "FLOOR",

   "FOR",

   "FORM",

   "FORMAT",

   "FRAC",

   "FRAME",

   "FREE",

   "FROM",

   "FUNCTION",

   "FUNCTION-POOL",

   "GENERATE",

   "GET",

   "GROUP",

   "HANDLER",

   "HASHED",

   "HEADER",

   "HELP-ID",

   "HELP-REQUEST",

   "HIDE",

   "HOTSPOT",

   "CHAIN",

   "CHANGE",

   "CHANGING",

   "CHECK",

   "CHECKBOX",

   "ICON",

   "ID",

   "IF",

   "IGNORING",

   "IMPLEMENTATION",

   "IMPORT",

   "IMPORTING",

   "INCLUDE",

   "INDEX",

   "INFOTYPES",

   "INITIALIZATION",

   "INNER",

   "INPUT",

   "INSERT",

   "INTENSIFIED",

   "INTERFACE",

   "INTERFACE-POOL",

   "INTERFACES",

   "INTO",

   "INVERSE",

   "JOIN",

   "KEY",

   "LANGUAGE",

   "LAST",

   "LEAVE",

   "LEFT",

   "LEFT-JUSTIFIED",

   "LENGTH",

   "LET",

   "LIKE",

   "LINE",

   "LINE-COUNT",

   "LINES",

   "LINE-SELECTION",

   "LINE-SIZE",

   "LISTBOX",

   "LIST-PROCESSING",

   "LOAD",

   "LOAD-OF-PROGRAM",

   "LOCAL",

   "LOCALE",

   "LOG",

   "LOG10",

   "LOOP",

   "LOWER",

   "MARGIN",

   "MASK",

   "MATCHCODE",

   "MAX",

   "MEMORY",

   "MESSAGE",

   "MESSAGE-ID",

   "MESSAGES",

   "METHOD",

   "METHODS",

   "MIN",

   "MOD",

   "MODE",

   "MODIF",

   "MODIFY",

   "MODULE",

   "MOVE",

   "MOVE-CORRESPONDING",

   "MULTIPLY",

   "MULTIPLY-CORRESPONDING",

   "NEW",

   "NEW-LINE",

   "NEW-PAGE",

   "NEXT",

   "NO",

   "NODES",

   "NO-GAP",

   "NO-GAPS",

   "NO-HEADING",

   "NON-UNIQUE",

   "NO-SCROLLING",

   "NO-SIGN",

   "NO-TITLE",

   "NO-ZERO",

   "OBJECT",

   "OBLIGATORY",

   "OCCURS",

   "OF",

   "OFF",

   "ON",

   "OPEN",

   "OR",

   "ORDER",

   "OTHERS",

   "OUTER",

   "OUTPUT",

   "OVERLAY",

   "PACK",

   "PAGE",

   "PARAMETER",

   "PARAMETERS",

   "PERFORM",

   "PF-STATUS",

   "POSITION",

   "PRINT",

   "PRINT-CONTROL",

   "PRIVATE",

   "PROCESS",

   "PROGRAM",

   "PROPERTY",

   "PROTECTED",

   "PROVIDE",

   "PUBLIC",

   "PUT",

   "RADIOBUTTON",

   "RAISE",

   "RAISING",

   "RANGE",

   "RANGES",

   "READ",

   "RECEIVE",

   "RECEIVING",

   "REFRESH",

   "REQUEST",

   "REJECT",

   "REPLACE",

   "REPORT",

   "REQUESTED",

   "RESERVE",

   "RESET",

   "RESULT",

   "RETURN",

   "RIGHT",

   "RIGHT-JUSTIFIED",

   "ROLLBACK",

   "ROUND",

   "ROWS",

   "RTTI",

   "RUN",

   "SCAN",

   "SCREEN",

   "SCROLL",

   "SCROLL-BOUNDARY",

   "SEARCH",

   "SEARCH",

   "SELECT",

   "SELECTION-SCREEN",

   "SELECTION-TABLE",

   "SELECT-OPTIONS",

   "SEPARATED",

   "SET",

   "SHARED",

   "SHIFT",

   "SIGN",

   "SIN",

   "SINGLE",

   "SINH",

   "SIZE",

   "SKIP",

   "SORT",

   "SORTED",

   "SOURCE",

   "SPLIT",

   "SQL",

   "SQRT",

   "STAMP",

   "STANDARD",

   "START-OF-SELECTION",

   "STATICS",

   "STOP",

   "string",

   "STRLEN",

   "STRUCTURE",

   "SUBMIT",

   "SUBTRACT",

   "SUBTRACT-CORRESPONDING",

   "SUM",

   "SUPPLY",

   "SUPPRESS",

   "SYMBOL",

   "SYNTAX-CHECK",

   "SYNTAX-TRACE",

   "SYSTEM-CALL",

   "SYSTEM-EXCEPTIONS",

   "TAB",

   "TABBED",

   "TABLE",

   "TABLE_LINE",

   "TABLES",

   "TAN",

   "TANH",

   "TEXT",

   "TEXTPOOL",

   "THEN",

   "THROW",

   "TIME",

   "TIMES",

   "TITLE",

   "TITLEBAR",

   "TO",

   "TOP-OF-PAGE",

   "TRAILING",

   "TRANSACTION",

   "TRANSFER",

   "TRANSFORMATION",

   "TRANSLATE",

   "TRANSPORTING",

   "TRUNC",

   "TRY",

   "TYPE",

   "TYPE-POOL",

   "TYPE-POOLS",

   "TYPES",

   "ULINE",

   "UNASSIGN",

   "UNDER",

   "UNIQUE",

   "UNIT",

   "UNPACK",

   "UP",

   "UPDATE",

   "UPPER",

   "USER-COMMAND",

   "USING",

   "VALUE",

   "VALUE-REQUEST",

   "VALUES",

   "VARY",

   "WHEN",

   "WHERE",

   "WHILE",

   "WINDOW",

   "VISIBLE",

   "WITH",

   "WITH-TITLE",

   "WORK",

   "WRITE",

   "XML",

   "XSTRING",

   "ZONE",

   "screen-active",

   "screen-group1",

   "screen-group2",

   "screen-group3",

   "screen-group4",

   "screen-input",

   "screen-intensified",

   "screen-invisible",

   "screen-length",

   "screen-name",

   "screen-output",

   "screen-required",

   "sy-abcde",

   "sy-appli",

   "sy-batch",

   "sy-batzd",

   "sy-batzm",

   "sy-batzo",

   "sy-batzs",

   "sy-batzw",

   "sy-binpt",

   "sy-brep4",

   "sy-bspld",

   "sy-calld",

   "sy-callr",

   "sy-ccurs",

   "sy-ccurt",

   "sy-cdate",

   "sy-cfwae",

   "sy-colno",

   "sy-cpage",

   "sy-cprog",

   "sy-ctabl",

   "sy-ctype",

   "sy-cucol",

   "sy-curow",

   "sy-datar",

   "sy-datlo",

   "sy-datum",

   "sy-dayst",

   "sy-dbcnt",

   "sy-dbnam",

   "sy-dbsys",

   "sy-dcsys",

   "sy-debug",

   "sy-dsnam",

   "sy-dyngr",

   "sy-dynnr",

   "sy-entry",

   "sy-fdayw",

   "sy-fdpos",

   "sy-ffile",

   "sy-fleng",

   "sy-fmkey",

   "sy-fodec",

   "sy-folen",

   "sy-ftype",

   "sy-group",

   "sy-host",

   "sy-chwae",

   "sy-index",

   "sy-input",

   "sy-langu",

   "sy-ldbpg",

   "sy-lilli",

   "sy-linct",

   "sy-linno",

   "sy-linsz",

   "sy-lisel",

   "sy-listi",

   "sy-locdb",

   "sy-locop",

   "sy-loopc",

   "sy-lpass",

   "sy-lsind",

   "sy-lstat",

   "sy-macdb",

   "sy-macol",

   "sy-mandt",

   "sy-marky",

   "sy-marow",

   "sy-modno",

   "sy-msgid",

   "sy-msgli",

   "sy-msgno",

   "sy-msgty",

   "sy-msgv1",

   "sy-msgv2",

   "sy-msgv3",

   "sy-msgv4",

   "sy-newpa",

   "sy-nrpag",

   "sy-oncom",

   "sy-opsys",

   "sy-paart",

   "sy-pagct",

   "sy-pagno",

   "sy-pauth",

   "sy-pdest",

   "sy-pexpi",

   "sy-pfkey",

   "sy-playo",

   "sy-playp",

   "sy-plist",

   "sy-pnwpa",

   "sy-prabt",

   "sy-prbig",

   "sy-prcop",

   "sy-prdsn",

   "sy-prefx",

   "sy-pri40",

   "sy-primm",

   "sy-prini",

   "sy-prlog",

   "sy-prnew",

   "sy-prrec",

   "sy-prrel",

   "sy-prtxt",

   "sy-repi2",

   "sy-repid",

   "sy-rstrt",

   "sy-rtitl",

   "sy-saprl",

   "sy-scols",

   "sy-sfnam",

   "sy-sfoff",

   "sy-slset",

   "sy-spono",

   "sy-sponr",

   "sy-srows",

   "sy-staco",

   "sy-staro",

   "sy-stepl",

   "sy-subcs",

   "sy-subrc",

   "sy-subty",

   "sy-sysid",

   "sy-tabid",

   "sy-tabix",

   "sy-tcode",

   "sy-tfdsn",

   "sy-tfill",

   "sy-timlo",

   "sy-title",

   "sy-tleng",

   "sy-tlopc",

   "sy-tmaxl",

   "sy-tname",

   "sy-toccu",

   "sy-tpagi",

   "sy-tstis",

   "sy-ttabc",

   "sy-ttabi",

   "sy-tvar0",

   "sy-tvar1",

   "sy-tvar2",

   "sy-tvar3",

   "sy-tvar4",

   "sy-tvar5",

   "sy-tvar6",

   "sy-tvar7",

   "sy-tvar8",

   "sy-tvar9",

   "sy-tzone",

   "sy-ucomm",

   "sy-uline",

   "sy-uname",

   "sy-uzeit",

   "sy-vline",

   "sy-waers",

   "sy-willi",

   "sy-winco",

   "sy-windi",

   "sy-winro",

   "sy-winsl",

   "sy-winx1",

   "sy-winx2",

   "sy-winy1",

   "sy-winy2",

   "sy-wtitl",

   "sy-xcode",

   "sy-xform",

   "sy-xprog",

   "sy-zonlo",

   "null",

   "space",    

   "col_background",

   "col_group",

   "col_heading",

   "col_key",

   "col_negative",

   "col_normal",

   "col_positive",

   "col_total",

   "INITIAL",

   "BETWEEN",

   "CA",

   "CN",

   "CO",

   "CP",

   "CS",

   "EQ",

   "GE",

   "GT",

   "IN",

   "IS",

   "LE",

   "LT",

   "NA",

   "NE",

   "NOT",

   "NP",

   "NS",

   "association",

   "businessobject",

   "element",

   "node"

 ]

}

fileTypes

 abp

 abap

 cds

name

ABAP

patterns

 

  comment

  --==[[ comment line ]]==--

  match

  (").*$

  name

  comment.line.abp

     

 

  comment

  --==[[ comment block ]]==--

  match

  ^(\*).*$

  name

  comment.block.abp

   

 

  comment

  --==[[ text-xxx ]]==--    

  match

  (?i)(^|\s)\b(text)-([0-9a-zA-Z]{3})\b

  name

  constant.character.escape.abp

 

 

  comment

  --==[[ numbers ]]==--    

  match

  \b((0(x|X)[0-9a-fA-F]+)|([0-9]+(\.[0-9]+)?))\b

  name

  constant.numeric.abp

 

 

  comment

  --==[[ string constants ]]==--      

  begin

  '

  beginCaptures

 

   0

   

    name

    punctuation.definition.string.begin.abp

   

 

  end

  '

  endCaptures

 

   0

   

    name

    punctuation.definition.string.end.abp

   

 

  name

  string.quoted.single.abp

   

 

  comment

  --==[[ multi-word keywords ]]==--  

  match

  (?i)(^|\s)(ADD-CORRESPONDING|AUTHORITY-CHECK|BIT-AND|BIT-NOT|BIT-OR|BIT-XOR|BREAK-POINT|CLASS-DATA|CLASS-EVENTS|CLASS-METHODS|CLASS-POOL|DIVIDE-CORRESPONDING|EDITOR-CALL|END-OF-DEFINITION|END-OF-PAGE|END-OF-SELECTION|EXIT-COMMAND|FIELD-GROUPS|FIELD-SYMBOLS|FUNCTION-POOL|HELP-ID|HELP-REQUEST|INTERFACE-POOL|LEFT-JUSTIFIED|LINE-COUNT|LINE-SELECTION|LINE-SIZE|LIST-PROCESSING|LOAD-OF-PROGRAM|MESSAGE-ID|MOVE-CORRESPONDING|MULTIPLY-CORRESPONDING|NEW-LINE|NEW-PAGE|NO-GAPS|NO-GAP|NO-HEADING|NON-UNIQUE|NO-SCROLLING|NO-SIGN|NO-TITLE|NO-ZERO|OUTPUT-LENGTH|PF-STATUS|PRINT-CONTROL|RIGHT-JUSTIFIED|SCROLL-BOUNDARY|SELECTION-SCREEN|SELECTION-TABLE|SELECT-OPTIONS|START-OF-SELECTION|SUBTRACT-CORRESPONDING|SYNTAX-CHECK|SYNTAX-TRACE|SYSTEM-CALL|SYSTEM-EXCEPTIONS|TOP-OF-PAGE|TYPE-POOLS|TYPE-POOL|USER-COMMAND|VALUE-REQUEST|WITH-TITLE)

  name

  keyword.control.abp

     

 

  captures

 

   1

   

    name

    storage.type.abp

   

   2

   

    name

    entity.name.function.abp

   

   

  comment

  --==[[ name of FORM/FUNCTION ]]==--

  match

  (?i)\b(FORM|FUNCTION)\b\s+([a-zA-Z_$]\w*)

  name

  entity.name.function.abp

   

 

  captures

 

   1

   

    name

    storage.type.abp

   

   2

   

    name

    entity.name.function.abp

           

   

  comment

  --==[[ name of METHOD followed by dot (this excludes CALL METHOD) ]]==--

  match

  (?i)\b(METHOD)\b\s+([a-zA-Z_$]\w*(?=\s*.\s*$))

  name

  entity.name.function.abp

     

 

  captures

 

   1

   

    name

    storage.type.abp

   

   2

   

    name

    entity.name.type.instance.abp

   

   3

   

    name

    keyword.control.abp

         

   

  comment

  --==[[ name of CLASS followed by DEFINITION or IMPLEMENTATION suffix ]]==--

  match

  (?i)\b(CLASS)\b\s+([a-zA-Z_$]\w*)\s+\b(DEFINITION|IMPLEMENTATION)\b

  name

  entity.name.type.instance.abp

   

 

  captures

 

   1

   

    name

    storage.type.abp

   

   2

   

    name

    entity.name.type.instance.abp

   

   3

   

    name

    keyword.control.abp

         

   

  comment

  --==[[ name of MODULE followed by INPUT or OUTPUT suffix ]]==--

  match

  (?i)\b(MODULE)\b\s+([a-zA-Z_$]\w*)\s+\b(INPUT|OUTPUT)\b

  name

  entity.name.type.instance.abp

     

 

  comment

  --==[[ CALL command ]]==--    

  match

  (?i)(^|\s)\b(CALL)\b\s+\b(METHOD|FUNCTION|CUSTOMER-FUNCTION|SCREEN|TRANSACTION)\b

  name

  storage.type.abp

   

 

  comment

  --==[[ CREATE OBJECT command ]]==--    

  match

  (?i)(^|\s)(CREATE)\s+(OBJECT)

  name

  storage.type.abp

         

 

  comment

  --==[[ END of "subroutines" + PERFORM/SUBMIT ]]==--      

  match

  (?i)(^|\s)\b(ENDFORM|ENDFUNCTION|ENDCLASS|ENDMETHOD|ENDMODULE|PERFORM|SUBMIT)\b(?!(\s*=|\(|\s*LIKE|\s*TYPE))

  name

  storage.type.abp

 

 

  comment

  --==[[ basic data types ]]==--      

  match

  (?i)(^|\s)\b(TYPE)\b\s+\b(C|D|F|I|N|P|T|X)\b

  name

  keyword.control.abp

   

 

  comment

  --==[[ SCREEN variables ]]==--    

  match

  (?i)(^|\s)\b(SCREEN-ACTIVE|SCREEN-GROUP1|SCREEN-GROUP2|SCREEN-GROUP3|SCREEN-GROUP4|SCREEN-INPUT|SCREEN-INTENSIFIED|SCREEN-INVISIBLE|SCREEN-LENGTH|SCREEN-NAME|SCREEN-OUTPUT|SCREEN-REQUIRED)\b

  name

  constant.character.escape.abp

     

 

  comment

  --==[[ system variables ]]==--    

  match

  (?i)(^|\s)\b(SY-ABCDE|SY-APPLI|SY-BATCH|SY-BATZD|SY-BATZM|SY-BATZO|SY-BATZS|SY-BATZW|SY-BINPT|SY-BREP4|SY-BSPLD|SY-CALLD|SY-CALLR|SY-CCURS|SY-CCURT|SY-CDATE|SY-CFWAE|SY-COLNO|SY-CPAGE|SY-CPROG|SY-CTABL|SY-CTYPE|SY-CUCOL|SY-CUROW|SY-DATAR|SY-DATLO|SY-DATUM|SY-DAYST|SY-DBCNT|SY-DBNAM|SY-DBSYS|SY-DCSYS|SY-DEBUG|SY-DSNAM|SY-DYNGR|SY-DYNNR|SY-ENTRY|SY-FDAYW|SY-FDPOS|SY-FFILE|SY-FLENG|SY-FMKEY|SY-FODEC|SY-FOLEN|SY-FTYPE|SY-GROUP|SY-HOST|SY-CHWAE|SY-INDEX|SY-INPUT|SY-LANGU|SY-LDBPG|SY-LILLI|SY-LINCT|SY-LINNO|SY-LINSZ|SY-LISEL|SY-LISTI|SY-LOCDB|SY-LOCOP|SY-LOOPC|SY-LPASS|SY-LSIND|SY-LSTAT|SY-MACDB|SY-MACOL|SY-MANDT|SY-MARKY|SY-MAROW|SY-MODNO|SY-MSGID|SY-MSGLI|SY-MSGNO|SY-MSGTY|SY-MSGV1|SY-MSGV2|SY-MSGV3|SY-MSGV4|SY-NEWPA|SY-NRPAG|SY-ONCOM|SY-OPSYS|SY-PAART|SY-PAGCT|SY-PAGNO|SY-PAUTH|SY-PDEST|SY-PEXPI|SY-PFKEY|SY-PLAYO|SY-PLAYP|SY-PLIST|SY-PNWPA|SY-PRABT|SY-PRBIG|SY-PRCOP|SY-PRDSN|SY-PREFX|SY-PRI40|SY-PRIMM|SY-PRINI|SY-PRLOG|SY-PRNEW|SY-PRREC|SY-PRREL|SY-PRTXT|SY-REPI2|SY-REPID|SY-RSTRT|SY-RTITL|SY-SAPRL|SY-SCOLS|SY-SFNAM|SY-SFOFF|SY-SLSET|SY-SPONO|SY-SPONR|SY-SROWS|SYST-ABCDE|SY-STACO|SYST-APPLI|SY-STARO|SYST-BATCH|SYST-BATZD|SYST-BATZM|SYST-BATZO|SYST-BATZS|SYST-BATZW|SYST-BINPT|SYST-BREP4|SYST-BSPLD|SYST-CALLD|SYST-CALLR|SYST-CCURS|SYST-CCURT|SYST-CDATE|SYST-CFWAE|SYST-COLNO|SYST-CPAGE|SYST-CPROG|SYST-CTABL|SYST-CTYPE|SYST-CUCOL|SYST-CUROW|SYST-DATAR|SYST-DATLO|SYST-DATUM|SYST-DAYST|SYST-DBCNT|SYST-DBNAM|SYST-DBSYS|SYST-DCSYS|SYST-DEBUG|SYST-DSNAM|SYST-DYNGR|SYST-DYNNR|SYST-ENTRY|SY-STEPL|SYST-FDAYW|SYST-FDPOS|SYST-FFILE|SYST-FLENG|SYST-FMKEY|SYST-FODEC|SYST-FOLEN|SYST-FTYPE|SYST-GROUP|SYST-HOST|SYST-CHWAE|SYST-INDEX|SYST-INPUT|SYST-LANGU|SYST-LDBPG|SYST-LILLI|SYST-LINCT|SYST-LINNO|SYST-LINSZ|SYST-LISEL|SYST-LISTI|SYST-LOCDB|SYST-LOCOP|SYST-LOOPC|SYST-LPASS|SYST-LSIND|SYST-LSTAT|SYST-MACDB|SYST-MACOL|SYST-MANDT|SYST-MARKY|SYST-MAROW|SYST-MODNO|SYST-MSGID|SYST-MSGLI|SYST-MSGNO|SYST-MSGTY|SYST-MSGV1|SYST-MSGV2|SYST-MSGV3|SYST-MSGV4|SYST-NEWPA|SYST-NRPAG|SYST-ONCOM|SYST-OPSYS|SYST-PAART|SYST-PAGCT|SYST-PAGNO|SYST-PAUTH|SYST-PDEST|SYST-PEXPI|SYST-PFKEY|SYST-PLAYO|SYST-PLAYP|SYST-PLIST|SYST-PNWPA|SYST-PRABT|SYST-PRBIG|SYST-PRCOP|SYST-PRDSN|SYST-PREFX|SYST-PRI40|SYST-PRIMM|SYST-PRINI|SYST-PRLOG|SYST-PRNEW|SYST-PRREC|SYST-PRREL|SYST-PRTXT|SYST-REPI2|SYST-REPID|SYST-RSTRT|SYST-RTITL|SYST-SAPRL|SYST-SCOLS|SYST-SFNAM|SYST-SFOFF|SYST-SLSET|SYST-SPONO|SYST-SPONR|SYST-SROWS|SYST-STACO|SYST-STARO|SYST-STEPL|SYST-SUBCS|SYST-SUBRC|SYST-SUBTY|SYST-SYSID|SYST-TABID|SYST-TABIX|SYST-TCODE|SYST-TFDSN|SYST-TFILL|SYST-TIMLO|SYST-TITLE|SYST-TLENG|SYST-TLOPC|SYST-TMAXL|SYST-TNAME|SYST-TOCCU|SYST-TPAGI|SYST-TSTIS|SYST-TTABC|SYST-TTABI|SYST-TVAR0|SYST-TVAR1|SYST-TVAR2|SYST-TVAR3|SYST-TVAR4|SYST-TVAR5|SYST-TVAR6|SYST-TVAR7|SYST-TVAR8|SYST-TVAR9|SYST-TZONE|SYST-UCOMM|SYST-ULINE|SYST-UNAME|SYST-UZEIT|SYST-VLINE|SYST-WAERS|SYST-WILLI|SYST-WINCO|SYST-WINDI|SYST-WINRO|SYST-WINSL|SYST-WINX1|SYST-WINX2|SYST-WINY1|SYST-WINY2|SYST-WTITL|SYST-XCODE|SYST-XFORM|SYST-XPROG|SYST-ZONLO|SY-SUBCS|SY-SUBRC|SY-SUBTY|SY-SYSID|SY-TABID|SY-TABIX|SY-TCODE|SY-TFDSN|SY-TFILL|SY-TIMLO|SY-TITLE|SY-TLENG|SY-TLOPC|SY-TMAXL|SY-TNAME|SY-TOCCU|SY-TPAGI|SY-TSTIS|SY-TTABC|SY-TTABI|SY-TVAR0|SY-TVAR1|SY-TVAR2|SY-TVAR3|SY-TVAR4|SY-TVAR5|SY-TVAR6|SY-TVAR7|SY-TVAR8|SY-TVAR9|SY-TZONE|SY-UCOMM|SY-ULINE|SY-UNAME|SY-UZEIT|SY-VLINE|SY-WAERS|SY-WILLI|SY-WINCO|SY-WINDI|SY-WINRO|SY-WINSL|SY-WINX1|SY-WINX2|SY-WINY1|SY-WINY2|SY-WTITL|SY-XCODE|SY-XFORM|SY-XPROG|SY-ZONLO|sylangu|$projection)\b

  name

  constant.character.escape.abp

 

 

  comment

  --== functions/keywords followed by ( _argument_ ) ==--  

  match

  (?i)(^|\s)\b(ABS|ACOS|ASIN|ATAN|COS|COSH|COUNT|CEIL|EXP|FLOOR|FRAC|LINES|LOG10|LOG|MAX|MIN|NMAX|NMIN|RESCALE|ROUND|SIN|SINH|SIGN|SQRT|STRLEN|SUM|TAN|TANH|TRUNC)\b(?=\()

  name

  keyword.control.abp

     

 

  comment

  --== keyword OTHERS ==--  

  match

  (?i)(^|\s)\b(OTHERS)\b(?!(\(|\s*LIKE|\s*TYPE))

  name

  keyword.control.abp

     

 

  comment

  --==[[ simple keywords ]]==--      

  match

  (?i)(^|\s)\b(ADD|ADJACENT|ASSERT|AFTER|ALIASES|ALL|ANALYZER|AND|ANY|APPEND|APPENDING|AS|ASCENDING|ASSIGN|ASSIGNED|ASSIGNING|AT|AVG|BACK|BASE|BEFORE|BEGIN|BINARY|BIT|BLANK|BLOCK|BUFFER|BY|CALL|CASE|CAST|CATCH|CENTERED|CLEAR|CLIENT|CLOSE|CNT|CODE|COLLECT|COLOR|COMMENT|COMMIT|COMMUNICATION|COMPARING|COMPUTE|CONCATENATE|COND|CONV|CONDENSE|CONSTANTS|CONTEXT|CONTEXTS|CONTINUE|CONTROL|CONTROLS|CONVERSION|CONVERT|COPY|CORRESPONDING|COUNTRY|CREATE|CURRENCY|CURSOR|DATA|DATABASE|DATASET|DECIMALS|DEFAULT|DEFINE|DEFINITION|DELETE|DELETING|DEMAND|DESCENDING|DESCRIBE|DIALOG|DISTINCT|DIV|DIVIDE|DO|DUPLICATES|DYNPRO|EDIT|ELSE|ELSEIF|ENCODING|END|ENDAT|ENDCASE|ENDCATCH|ENDDO|ENDEXEC|ENDCHAIN|ENDIF|ENDING|ENDINTERFACE|ENDLOOP|ENDON|ENDPROVIDE|ENDSELECT|ENDTRY|ENDWHILE|ENTRIES|ERRORS|EVENT|EVENTS|EXCEPTIONS|EXEC|EXIT|EXCLUDING|EXPONENT|EXPORT|EXPORTING|EXTENDED|EXTRACT|FETCH|FIELD|FIELDS|FIND|FIRST|FOR|FORMAT|FRAME|FREE|FROM|FUNCTION|GENERATE|GET|GROUP|HANDLER|HASHED|HEADER|HEADING|HIDE|HOTSPOT|CHAIN|CHANGE|CHANGING|CHECK|CHECKBOX|ICON|ID|IF|IGNORING|IMPLEMENTATION|IMPORT|IMPORTING|INCLUDE|INDEX|INFOTYPES|INITIALIZATION|INNER|INPUT|INSERT|INTENSIFIED|INTERFACE|INTERFACES|INTERVALS|INTO|INVERSE|JOIN|KEY|LANGUAGE|LAST|LEAVE|LEFT|LENGTH|LET|LIKE|LINE|LINES|LISTBOX|LOAD|LOCAL|LOCALE|LOOP|LOWER|MARGIN|MASK|MATCHCODE|MEMORY|MESSAGE|MESSAGES|METHODS|MOD|MODE|MODIF|MODIFY|MOVE|MULTIPLY|NEW|NEXT|NO|NODES|NUMBER|OBJECT|OBLIGATORY|OCCURS|OCCURRENCES|OF|OFF|ON|OPEN|OR|ORDER|OUTER|OUTPUT|OVERLAY|PACK|PAGE|PARAMETER|PARAMETERS|POSITION|PRINT|PRIVATE|PROCESS|PROGRAM|PROPERTY|PROTECTED|PROVIDE|PUBLIC|PUT|RADIOBUTTON|RAISE|RAISING|RANGE|RANGES|READ|RECEIVE|RECEIVING|REDUCE|REF|REFRESH|REJECT|REPLACE|REPORT|REQUESTED|RESERVE|RESET|RESULT|RETURN|RIGHT|ROLLBACK|ROWS|RTTI|RUN|SCAN|SCREEN|SCROLL|SEARCH|SEARCH|SECONDS|SELECT|SECTION|SEPARATED|SET|SHARED|SHIFT|SINGLE|SIZE|SKIP|SORT|SORTED|SOURCE|SPLIT|SQL|STABLE|STAMP|STANDARD|STARTING|STATICS|STOP|STRING|STRUCTURE|SUBMIT|SUBTRACT|SUM|SUPPLIED|SUPPLY|SUPPRESS|SYMBOL|TAB|TABBED|TABLE|TABLE_LINE|TABLES|TEXT|TEXTPOOL|THEN|THROW|TIME|TIMES|TITLE|TITLEBAR|TO|TRANSACTION|TRANSFER|TRANSLATE|TRANSPORTING|TRANSFORMATION|TRAILING|TRY|TYPE|TYPES|ULINE|UNASSIGN|UNDER|UNIQUE|UNIT|UNPACK|UP|UPDATE|UPPER|USING|VALUE|VALUES|VARY|VIEW|WAIT|WHEN|WHERE|WHILE|WINDOW|VISIBLE|WITH|WORK|WRITE|XSTRING|ZONE|businessobject|element|node|association|message|raises|#CHECK|#SYSTEM_LANGUAGE)\b(?!(\s*=|\(|\s*LIKE|\s*TYPE))

  name

  keyword.control.abp

   

 

  comment

  --==[[ operators etc. ]]==--      

  match

  (?i)(^|\s)\b(BETWEEN|BOUND|CA|CN|CO|CP|CS|EQ|GE|GT|IN|IS|LE|LT|NA|NE|NOT|NP|NS|INITIAL|NULL|SPACE)\b(?!(\s*=|\(|\s*LIKE|\s*TYPE))

  name

  keyword.control.abp

         

 

  comment

  --==[[ color constants ]]==--    

  match

  (?i)(^|\s)\b(COL_BACKGROUND|COL_GROUP|COL_HEADING|COL_KEY|COL_NEGATIVE|COL_NORMAL|COL_POSITIVE|COL_TOTAL)\b(?!(\s*=|\(|\s*LIKE|\s*TYPE))

  name

  constant.character.escape.abp

   

 

  comment

  --==[[ Jerry's CDS view related ]]==--    

  match

  (#CHECK|#SYSTEM_LANGUAGE|#TO_COMPOSITION_CHILD|)

  name

  constant.character.escape.abp

             

scopeName

source.abp

uuid

ef285400-faf7-4f1a-9bf6-8dd000c9c9d1


上一篇:PostgreSQL 锁等待诊断详解


下一篇:意图搜索及其在安防领域的应用