Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes14kdownloads
abap.vim197 linesDownload Raw Back to syntax
1" Vim ABAP syntax file2"    Language: SAP - ABAP/R43"  Maintainer: Marius Piedallu van Wyk <lailoken@gmail.com>4" Last Change: 2021 Jan 025"     Comment: Thanks to EPI-USE Labs for all your assistance. :)6 7" Quit when a syntax file was already loaded8if exists("b:current_syntax")9  finish10endif11 12" Always ignore case13syn case ignore14 15" Symbol Operators (space delimited)16syn match   abapSymbolOperator  "\W+\W"17syn match   abapSymbolOperator  "\W-\W"18syn match   abapSymbolOperator  "\W/\W"19syn match   abapSymbolOperator  "\W%\W"20syn match   abapSymbolOperator  "\W=\W"21syn match   abapSymbolOperator  "\W<\W"22syn match   abapSymbolOperator  "\W>\W"23syn match   abapSymbolOperator  "\W\*\W"24syn match   abapSymbolOperator  "\W[<>]=\W"25syn match   abapSymbolOperator  "\W<>\W"26syn match   abapSymbolOperator  "\W\*\*\W"27syn match   abapSymbolOperator  "\[\]"28syn match   abapSymbolOperator  "->\*\?"29syn match   abapSymbolOperator  "=>"30syn match   abapSymbolOperator  "[()~:,\.&$]"31 32" Literals33syn region  abapCharString matchgroup=abapCharString start="'" end="'" contains=abapCharStringEscape34syn match   abapCharStringEscape contained "''"35 36syn region  abapString matchgroup=abapString start="`" end="`" contains=abapStringEscape37syn match   abapStringEscape contained "``"38 39syn match   abapNumber  "\-\=\<\d\+\>"40syn region  abapHex     matchgroup=abapHex start="X'" end="'"41 42setlocal iskeyword=48-57,_,A-Z,a-z,/43 44syn match   abapNamespace        "\</\w\+/"45 46" multi-word statements47syn match   abapComplexStatement "\<\(WITH\W\+\(HEADER\W\+LINE\|FRAME\|KEY\)\|WITH\)\>"48syn match   abapComplexStatement "\<NO\W\+STANDARD\W\+PAGE\W\+HEADING\>"49syn match   abapComplexStatement "\<\(EXIT\W\+FROM\W\+STEP\W\+LOOP\|EXIT\)\>"50syn match   abapComplexStatement "\<\(BEGIN\W\+OF\W\+\(BLOCK\|LINE\)\|BEGIN\W\+OF\)\>"51syn match   abapComplexStatement "\<\(END\W\+OF\W\+\(BLOCK\|LINE\)\|END\W\+OF\)\>"52syn match   abapComplexStatement "\<NO\W\+INTERVALS\>"53syn match   abapComplexStatement "\<RESPECTING\W\+BLANKS\>"54syn match   abapComplexStatement "\<SEPARATED\W\+BY\>"55syn match   abapComplexStatement "\<USING\(\W\+EDIT\W\+MASK\)\?\>"56syn match   abapComplexStatement "\<WHERE\(\W\+LINE\)\?\>"57syn match   abapComplexStatement "\<GET\W\+\(TIME\(\W\+STAMP\)\?\(\W\+FIELD\)\?\|PF-STATUS\|BADI\|BIT\|CONNECTION\|CURSOR\|REFERENCE\W\+OF\)\>"58syn match   abapComplexStatement "\<RADIOBUTTON\W\+GROUP\>"59syn match   abapComplexStatement "\<REF\W\+TO\>"60syn match   abapComplexStatement "\<\(PUBLIC\|PRIVATE\|PROTECTED\)\(\W\+SECTION\)\?\>"61syn match   abapComplexStatement "\<DELETING\W\+\(TRAILING\|LEADING\)\>"62syn match   abapComplexStatement "\<\(ALL\W\+OCCURRENCES\)\|\(\(FIRST\|LAST\)\W\+OCCURRENCE\)\>"63syn match   abapComplexStatement "\<INHERITING\W\+FROM\>"64syn match   abapComplexStatement "\<\(UP\W\+\)\?TO\>"65 66" hyphenated-word statements67syn match   abapComplexStatement "\<LINE-COUNT\>"68syn match   abapComplexStatement "\<ADD-CORRESPONDING\>"69syn match   abapComplexStatement "\<AUTHORITY-CHECK\>"70syn match   abapComplexStatement "\<BREAK-POINT\>"71syn match   abapComplexStatement "\<CLASS-DATA\>"72syn match   abapComplexStatement "\<CLASS-METHODS\>"73syn match   abapComplexStatement "\<CLASS-METHOD\>"74syn match   abapComplexStatement "\<DIVIDE-CORRESPONDING\>"75syn match   abapComplexStatement "\<EDITOR-CALL\>"76syn match   abapComplexStatement "\<END-OF-DEFINITION\>"77syn match   abapComplexStatement "\<END-OF-PAGE\>"78syn match   abapComplexStatement "\<END-OF-SELECTION\>"79syn match   abapComplexStatement "\<FIELD-GROUPS\>"80syn match   abapComplexStatement "\<FIELD-SYMBOLS\>"81syn match   abapComplexStatement "\<FUNCTION-POOL\>"82syn match   abapComplexStatement "\<IS\W\+\(NOT\W\+\)\?\(ASSIGNED\|BOUND\|INITIAL\|SUPPLIED\)\>"83syn match   abapComplexStatement "\<MOVE-CORRESPONDING\>"84syn match   abapComplexStatement "\<MULTIPLY-CORRESPONDING\>"85syn match   abapComplexStatement "\<NEW-LINE\>"86syn match   abapComplexStatement "\<NEW-PAGE\>"87syn match   abapComplexStatement "\<NEW-SECTION\>"88syn match   abapComplexStatement "\<PRINT-CONTROL\>"89syn match   abapComplexStatement "\<RP-PROVIDE-FROM-LAST\>"90syn match   abapComplexStatement "\<SELECT-OPTIONS\>"91syn match   abapComplexStatement "\<SELECTION-SCREEN\>"92syn match   abapComplexStatement "\<START-OF-SELECTION\>"93syn match   abapComplexStatement "\<SUBTRACT-CORRESPONDING\>"94syn match   abapComplexStatement "\<SYNTAX-CHECK\>"95syn match   abapComplexStatement "\<SYNTAX-TRACE\>"96syn match   abapComplexStatement "\<TOP-OF-PAGE\>"97syn match   abapComplexStatement "\<TYPE-POOL\>"98syn match   abapComplexStatement "\<TYPE-POOLS\>"99syn match   abapComplexStatement "\<LINE-SIZE\>"100syn match   abapComplexStatement "\<LINE-COUNT\>"101syn match   abapComplexStatement "\<MESSAGE-ID\>"102syn match   abapComplexStatement "\<DISPLAY-MODE\>"103syn match   abapComplexStatement "\<READ\(-ONLY\)\?\>"104 105" ABAP statements106syn keyword abapStatement ADD ALIAS ALIASES ASSERT ASSIGN ASSIGNING AT107syn keyword abapStatement BACK108syn keyword abapStatement CALL CASE CATCH CHECK CLASS CLEAR CLOSE CNT COLLECT COMMIT COMMUNICATION COMPUTE CONCATENATE CONDENSE CONSTANTS CONTINUE CONTROLS CONVERT CREATE CURRENCY109syn keyword abapStatement DATA DEFINE DEFINITION DEFERRED DELETE DESCRIBE DETAIL DIVIDE DO110syn keyword abapStatement ELSE ELSEIF ENDAT ENDCASE ENDCLASS ENDDO ENDEXEC ENDFORM ENDFUNCTION ENDIF ENDIFEND ENDINTERFACE ENDLOOP ENDMETHOD ENDMODULE ENDON ENDPROVIDE ENDSELECT ENDTRY ENDWHILE EVENT EVENTS EXEC EXIT EXPORT EXPORTING EXTRACT111syn keyword abapStatement FETCH FIELDS FORM FORMAT FREE FROM FUNCTION112syn keyword abapStatement GENERATE113syn keyword abapStatement HIDE114syn keyword abapStatement IF IMPORT IMPORTING INDEX INFOTYPES INITIALIZATION INTERFACE INTERFACES INPUT INSERT IMPLEMENTATION 115syn keyword abapStatement LEAVE LIKE LINE LOAD LOCAL LOOP116syn keyword abapStatement MESSAGE METHOD METHODS MODIFY MODULE MOVE MULTIPLY117syn keyword abapStatement ON OVERLAY OPTIONAL OTHERS118syn keyword abapStatement PACK PARAMETERS PERFORM POSITION PROGRAM PROVIDE PUT119syn keyword abapStatement RAISE RANGES RECEIVE RECEIVING REDEFINITION REFERENCE REFRESH REJECT REPLACE REPORT RESERVE RESTORE RETURNING ROLLBACK120syn keyword abapStatement SCAN SCROLL SEARCH SELECT SET SHIFT SKIP SORT SORTED SPLIT STANDARD STATICS STEP STOP SUBMIT SUBTRACT SUM SUMMARY SUPPRESS121syn keyword abapStatement TABLES TIMES TRANSFER TRANSLATE TRY TYPE TYPES122syn keyword abapStatement UNASSIGN ULINE UNPACK UPDATE123syn keyword abapStatement WHEN WHILE WINDOW WRITE124 125" More statements126syn keyword abapStatement LINES127syn keyword abapStatement INTO GROUP BY HAVING ORDER BY SINGLE128syn keyword abapStatement APPENDING CORRESPONDING FIELDS OF TABLE129syn keyword abapStatement LEFT RIGHT OUTER INNER JOIN AS CLIENT SPECIFIED BYPASSING BUFFER ROWS CONNECTING130syn keyword abapStatement OCCURS STRUCTURE OBJECT PROPERTY131syn keyword abapStatement CASTING APPEND RAISING VALUE COLOR132syn keyword abapStatement CHANGING EXCEPTION EXCEPTIONS DEFAULT CHECKBOX COMMENT133syn keyword abapStatement ID NUMBER FOR TITLE OUTPUT134 135" Special ABAP specific tables:136syn match   abapSpecialTables "\<\(sy\|\(hrp\|p\|pa\)\d\d\d\d\|t\d\d\d.\|innnn\)-"me=e-1 contained137syn match   abapStructure     "\<\w\+-[^\>]"me=e-2 contains=abapSpecialTables,abapStatement,abapComplexStatement138syn match   abapField         "-\w\+"ms=s+1139 140" Pointer141syn match   abapSpecial  "<\w\+>"142 143" Abap common constants:144syn keyword abapSpecial  TRUE FALSE NULL SPACE145 146" Includes147syn region abapInclude   start="include" end="." contains=abapComment148 149" Types150syn keyword abapTypes    c n i int8 p f d t x string xstring decfloat16 decfloat34151 152" Atritmitic operators153syn keyword abapOperator abs sign ceil floor trunc frac acos asin atan cos sin tan154syn keyword abapOperator cosh sinh tanh exp log log10 sqrt155 156" String operators157syn keyword abapStatement strlen xstrlen charlen numofchar dbmaxlen158 159syn keyword abapOperator EQ NE LT LE GT GE NOT AND OR XOR IN LIKE BETWEEN160 161" An error? Not strictly... but cannot think of reason this is intended.162syn match   abapError    "\.\."163 164" Comments165syn region  abapComment  start="^\*" end="$" contains=abapTodo166syn match   abapComment  "\".*" contains=abapTodo167syn keyword abapTodo     contained TODO NOTE168syn match   abapTodo     "\#EC\W\+\w\+"169 170" Define the default highlighting.171" Only when an item doesn't have highlighting yet172 173hi def link abapError          Error174hi def link abapComment        Comment175hi def link abapInclude        Include176hi def link abapStatement      Statement177hi def link abapComplexStatement      Statement178hi def link abapSpecial        Special179hi def link abapNamespace      Special180hi def link abapSpecialTables  Special181hi def link abapSymbolOperator abapOperator182hi def link abapOperator       Operator183hi def link abapCharString     String184hi def link abapString         String185hi def link abapFloat          Float186hi def link abapTypes          Type187hi def link abapSymbol         Structure188hi def link abapStructure      Structure189hi def link abapField          Variable190hi def link abapNumber         Number191hi def link abapHex            Number192 193 194let b:current_syntax = "abap"195 196" vim: ts=8 sw=2197 
codekingpro/portable-devtools · Team Ai