Add syntax files from upstream vim repository

This commit is contained in:
Adam Stankiewicz
2017-09-27 20:43:42 +02:00
parent 8148255ef1
commit 5b77877888
1034 changed files with 172275 additions and 181 deletions

1812
syntax/2html.vim Normal file

File diff suppressed because it is too large Load Diff

75
syntax/a2ps.vim Normal file
View File

@@ -0,0 +1,75 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: a2ps(1) configuration file
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2006-04-19
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn keyword a2psPreProc Include
\ nextgroup=a2psKeywordColon
syn keyword a2psMacro UserOption
\ nextgroup=a2psKeywordColon
syn keyword a2psKeyword LibraryPath AppendLibraryPath PrependLibraryPath
\ Options Medium Printer UnknownPrinter
\ DefaultPrinter OutputFirstLine
\ PageLabelFormat Delegation FileCommand
\ nextgroup=a2psKeywordColon
syn match a2psKeywordColon contained display ':'
syn keyword a2psKeyword Variable nextgroup=a2psVariableColon
syn match a2psVariableColon contained display ':'
\ nextgroup=a2psVariable skipwhite
syn match a2psVariable contained display '[^ \t:(){}]\+'
\ contains=a2psVarPrefix
syn match a2psVarPrefix contained display
\ '\<\%(del\|pro\|ps\|pl\|toc\|user\|\)\ze\.'
syn match a2psLineCont display '\\$'
syn match a2psSubst display '$\%(-\=.\=\d\+\)\=\h\d\='
syn match a2psSubst display '#[?!]\=\w\d\='
syn match a2psSubst display '#{[^}]\+}'
syn region a2psString display oneline start=+'+ end=+'+
\ contains=a2psSubst
syn region a2psString display oneline start=+"+ end=+"+
\ contains=a2psSubst
syn keyword a2psTodo contained TODO FIXME XXX NOTE
syn region a2psComment display oneline start='^\s*#' end='$'
\ contains=a2psTodo,@Spell
hi def link a2psTodo Todo
hi def link a2psComment Comment
hi def link a2psPreProc PreProc
hi def link a2psMacro Macro
hi def link a2psKeyword Keyword
hi def link a2psKeywordColon Delimiter
hi def link a2psVariableColon Delimiter
hi def link a2psVariable Identifier
hi def link a2psVarPrefix Type
hi def link a2psLineCont Special
hi def link a2psSubst PreProc
hi def link a2psString String
let b:current_syntax = "a2ps"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

157
syntax/a65.vim Normal file
View File

@@ -0,0 +1,157 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: xa 6502 cross assembler
" Maintainer: Clemens Kirchgatterer <clemens@1541.org>
" Last Change: 2016 Aug 31
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case ignore
" Opcodes
syn match a65Opcode "\<PHP\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<PLA\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<PLX\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<PLY\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<SEC\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<CLD\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<SED\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<CLI\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<BVC\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<BVS\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<BCS\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<BCC\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<DEY\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<DEC\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<CMP\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<CPX\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<BIT\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<ROL\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<ROR\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<ASL\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<TXA\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<TYA\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<TSX\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<TXS\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<LDA\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<LDX\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<LDY\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<STA\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<PLP\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<BRK\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<RTI\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<NOP\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<SEI\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<CLV\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<PHA\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<PHX\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<BRA\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<JMP\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<JSR\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<RTS\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<CPY\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<BNE\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<BEQ\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<BMI\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<LSR\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<INX\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<INY\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<INC\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<ADC\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<SBC\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<AND\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<ORA\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<STX\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<STY\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<STZ\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<EOR\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<DEX\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<BPL\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<CLC\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<PHY\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<TRB\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<BBR\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<BBS\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<RMB\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<SMB\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<TAY\($\|\s\)" nextgroup=a65Address
syn match a65Opcode "\<TAX\($\|\s\)" nextgroup=a65Address
" Addresses
syn match a65Address "\s*!\=$[0-9A-F]\{2}\($\|\s\)"
syn match a65Address "\s*!\=$[0-9A-F]\{4}\($\|\s\)"
syn match a65Address "\s*!\=$[0-9A-F]\{2},X\($\|\s\)"
syn match a65Address "\s*!\=$[0-9A-F]\{4},X\($\|\s\)"
syn match a65Address "\s*!\=$[0-9A-F]\{2},Y\($\|\s\)"
syn match a65Address "\s*!\=$[0-9A-F]\{4},Y\($\|\s\)"
syn match a65Address "\s*($[0-9A-F]\{2})\($\|\s\)"
syn match a65Address "\s*($[0-9A-F]\{4})\($\|\s\)"
syn match a65Address "\s*($[0-9A-F]\{2},X)\($\|\s\)"
syn match a65Address "\s*($[0-9A-F]\{2}),Y\($\|\s\)"
" Numbers
syn match a65Number "#\=[0-9]*\>"
syn match a65Number "#\=$[0-9A-F]*\>"
syn match a65Number "#\=&[0-7]*\>"
syn match a65Number "#\=%[01]*\>"
syn case match
" Types
syn match a65Type "\(^\|\s\)\.byt\($\|\s\)"
syn match a65Type "\(^\|\s\)\.word\($\|\s\)"
syn match a65Type "\(^\|\s\)\.asc\($\|\s\)"
syn match a65Type "\(^\|\s\)\.dsb\($\|\s\)"
syn match a65Type "\(^\|\s\)\.fopt\($\|\s\)"
syn match a65Type "\(^\|\s\)\.text\($\|\s\)"
syn match a65Type "\(^\|\s\)\.data\($\|\s\)"
syn match a65Type "\(^\|\s\)\.bss\($\|\s\)"
syn match a65Type "\(^\|\s\)\.zero\($\|\s\)"
syn match a65Type "\(^\|\s\)\.align\($\|\s\)"
" Blocks
syn match a65Section "\(^\|\s\)\.(\($\|\s\)"
syn match a65Section "\(^\|\s\)\.)\($\|\s\)"
" Strings
syn match a65String "\".*\""
" Programm Counter
syn region a65PC start="\*=" end="\>" keepend
" HI/LO Byte
syn region a65HiLo start="#[<>]" end="$\|\s" contains=a65Comment keepend
" Comments
syn keyword a65Todo TODO XXX FIXME BUG contained
syn match a65Comment ";.*"hs=s+1 contains=a65Todo
syn region a65Comment start="/\*" end="\*/" contains=a65Todo,a65Comment
" Preprocessor
syn region a65PreProc start="^#" end="$" contains=a65Comment,a65Continue
syn match a65End excludenl /end$/ contained
syn match a65Continue "\\$" contained
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link a65Section Special
hi def link a65Address Special
hi def link a65Comment Comment
hi def link a65PreProc PreProc
hi def link a65Number Number
hi def link a65String String
hi def link a65Type Statement
hi def link a65Opcode Type
hi def link a65PC Error
hi def link a65Todo Todo
hi def link a65HiLo Number
let b:current_syntax = "a65"
endif

162
syntax/aap.vim Normal file
View File

@@ -0,0 +1,162 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: A-A-P recipe
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2004 Jun 13
" Quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn include @aapPythonScript syntax/python.vim
syn match aapVariable /$[-+?*="'\\!]*[a-zA-Z0-9_.]*/
syn match aapVariable /$[-+?*="'\\!]*([a-zA-Z0-9_.]*)/
syn keyword aapTodo contained TODO Todo
syn match aapString +'[^']\{-}'+
syn match aapString +"[^"]\{-}"+
syn match aapCommand '^\s*:action\>'
syn match aapCommand '^\s*:add\>'
syn match aapCommand '^\s*:addall\>'
syn match aapCommand '^\s*:asroot\>'
syn match aapCommand '^\s*:assertpkg\>'
syn match aapCommand '^\s*:attr\>'
syn match aapCommand '^\s*:attribute\>'
syn match aapCommand '^\s*:autodepend\>'
syn match aapCommand '^\s*:buildcheck\>'
syn match aapCommand '^\s*:cd\>'
syn match aapCommand '^\s*:chdir\>'
syn match aapCommand '^\s*:checkin\>'
syn match aapCommand '^\s*:checkout\>'
syn match aapCommand '^\s*:child\>'
syn match aapCommand '^\s*:chmod\>'
syn match aapCommand '^\s*:commit\>'
syn match aapCommand '^\s*:commitall\>'
syn match aapCommand '^\s*:conf\>'
syn match aapCommand '^\s*:copy\>'
syn match aapCommand '^\s*:del\>'
syn match aapCommand '^\s*:deldir\>'
syn match aapCommand '^\s*:delete\>'
syn match aapCommand '^\s*:delrule\>'
syn match aapCommand '^\s*:dll\>'
syn match aapCommand '^\s*:do\>'
syn match aapCommand '^\s*:error\>'
syn match aapCommand '^\s*:execute\>'
syn match aapCommand '^\s*:exit\>'
syn match aapCommand '^\s*:export\>'
syn match aapCommand '^\s*:fetch\>'
syn match aapCommand '^\s*:fetchall\>'
syn match aapCommand '^\s*:filetype\>'
syn match aapCommand '^\s*:finish\>'
syn match aapCommand '^\s*:global\>'
syn match aapCommand '^\s*:import\>'
syn match aapCommand '^\s*:include\>'
syn match aapCommand '^\s*:installpkg\>'
syn match aapCommand '^\s*:lib\>'
syn match aapCommand '^\s*:local\>'
syn match aapCommand '^\s*:log\>'
syn match aapCommand '^\s*:ltlib\>'
syn match aapCommand '^\s*:mkdir\>'
syn match aapCommand '^\s*:mkdownload\>'
syn match aapCommand '^\s*:move\>'
syn match aapCommand '^\s*:pass\>'
syn match aapCommand '^\s*:popdir\>'
syn match aapCommand '^\s*:produce\>'
syn match aapCommand '^\s*:program\>'
syn match aapCommand '^\s*:progsearch\>'
syn match aapCommand '^\s*:publish\>'
syn match aapCommand '^\s*:publishall\>'
syn match aapCommand '^\s*:pushdir\>'
syn match aapCommand '^\s*:quit\>'
syn match aapCommand '^\s*:recipe\>'
syn match aapCommand '^\s*:refresh\>'
syn match aapCommand '^\s*:remove\>'
syn match aapCommand '^\s*:removeall\>'
syn match aapCommand '^\s*:require\>'
syn match aapCommand '^\s*:revise\>'
syn match aapCommand '^\s*:reviseall\>'
syn match aapCommand '^\s*:route\>'
syn match aapCommand '^\s*:rule\>'
syn match aapCommand '^\s*:start\>'
syn match aapCommand '^\s*:symlink\>'
syn match aapCommand '^\s*:sys\>'
syn match aapCommand '^\s*:sysdepend\>'
syn match aapCommand '^\s*:syspath\>'
syn match aapCommand '^\s*:system\>'
syn match aapCommand '^\s*:tag\>'
syn match aapCommand '^\s*:tagall\>'
syn match aapCommand '^\s*:toolsearch\>'
syn match aapCommand '^\s*:totype\>'
syn match aapCommand '^\s*:touch\>'
syn match aapCommand '^\s*:tree\>'
syn match aapCommand '^\s*:unlock\>'
syn match aapCommand '^\s*:update\>'
syn match aapCommand '^\s*:usetool\>'
syn match aapCommand '^\s*:variant\>'
syn match aapCommand '^\s*:verscont\>'
syn match aapCommand '^\s*:print\>' nextgroup=aapPipeEnd
syn match aapPipeCmd '\s*:print\>' nextgroup=aapPipeEnd contained
syn match aapCommand '^\s*:cat\>' nextgroup=aapPipeEnd
syn match aapPipeCmd '\s*:cat\>' nextgroup=aapPipeEnd contained
syn match aapCommand '^\s*:syseval\>' nextgroup=aapPipeEnd
syn match aapPipeCmd '\s*:syseval\>' nextgroup=aapPipeEnd contained
syn match aapPipeCmd '\s*:assign\>' contained
syn match aapCommand '^\s*:eval\>' nextgroup=aapPipeEnd
syn match aapPipeCmd '\s*:eval\>' nextgroup=aapPipeEndPy contained
syn match aapPipeCmd '\s*:tee\>' nextgroup=aapPipeEnd contained
syn match aapPipeCmd '\s*:log\>' nextgroup=aapPipeEnd contained
syn match aapPipeEnd '[^|]*|' nextgroup=aapPipeCmd contained skipnl
syn match aapPipeEndPy '[^|]*|' nextgroup=aapPipeCmd contained skipnl contains=@aapPythonScript
syn match aapPipeStart '^\s*|' nextgroup=aapPipeCmd
"
" A Python line starts with @. Can be continued with a trailing backslash.
syn region aapPythonRegion start="\s*@" skip='\\$' end=+$+ contains=@aapPythonScript keepend
"
" A Python block starts with ":python" and continues so long as the indent is
" bigger.
syn region aapPythonRegion matchgroup=aapCommand start="\z(\s*\):python" skip='\n\z1\s\|\n\s*\n' end=+$+ contains=@aapPythonScript
" A Python expression is enclosed in backticks.
syn region aapPythonRegion start="`" skip="``" end="`" contains=@aapPythonScript
" TODO: There is something wrong with line continuation.
syn match aapComment '#.*' contains=aapTodo
syn match aapComment '#.*\(\\\n.*\)' contains=aapTodo
syn match aapSpecial '$#'
syn match aapSpecial '$\$'
syn match aapSpecial '$(.)'
" A heredoc assignment.
syn region aapHeredoc start="^\s*\k\+\s*$\=+\=?\=<<\s*\z(\S*\)"hs=e+1 end="^\s*\z1\s*$"he=s-1
" Syncing is needed for ":python" and "VAR << EOF". Don't use Python syncing
syn sync clear
syn sync fromstart
" The default highlighting.
hi def link aapTodo Todo
hi def link aapString String
hi def link aapComment Comment
hi def link aapSpecial Special
hi def link aapVariable Identifier
hi def link aapPipeCmd aapCommand
hi def link aapCommand Statement
hi def link aapHeredoc Constant
let b:current_syntax = "aap"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8
endif

201
syntax/abap.vim Normal file
View File

@@ -0,0 +1,201 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim ABAP syntax file
" Language: SAP - ABAP/R4
" Revision: 2.1
" Maintainer: Marius Piedallu van Wyk <lailoken@gmail.com>
" Last Change: 2013 Jun 13
" Comment: Thanks to EPI-USE Labs for all your assistance. :)
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" Always ignore case
syn case ignore
" Symbol Operators (space delimited)
syn match abapSymbolOperator "\W+\W"
syn match abapSymbolOperator "\W-\W"
syn match abapSymbolOperator "\W/\W"
syn match abapSymbolOperator "\W%\W"
syn match abapSymbolOperator "\W=\W"
syn match abapSymbolOperator "\W<\W"
syn match abapSymbolOperator "\W>\W"
syn match abapSymbolOperator "\W\*\W"
syn match abapSymbolOperator "\W[<>]=\W"
syn match abapSymbolOperator "\W<>\W"
syn match abapSymbolOperator "\W\*\*\W"
syn match abapSymbolOperator "\[\]"
syn match abapSymbolOperator "->\*\?"
syn match abapSymbolOperator "=>"
syn match abapSymbolOperator "[()~:,\.&$]"
" Literals
syn region abapCharString matchgroup=abapCharString start="'" end="'" contains=abapCharStringEscape
syn match abapCharStringEscape contained "''"
syn region abapString matchgroup=abapString start="`" end="`" contains=abapStringEscape
syn match abapStringEscape contained "``"
syn match abapNumber "\-\=\<\d\+\>"
syn region abapHex matchgroup=abapHex start="X'" end="'"
setlocal iskeyword=48-57,_,A-Z,a-z,/
syn match abapNamespace "\</\w\+/"
" multi-word statements
syn match abapComplexStatement "\<\(WITH\W\+\(HEADER\W\+LINE\|FRAME\|KEY\)\|WITH\)\>"
syn match abapComplexStatement "\<NO\W\+STANDARD\W\+PAGE\W\+HEADING\>"
syn match abapComplexStatement "\<\(EXIT\W\+FROM\W\+STEP\W\+LOOP\|EXIT\)\>"
syn match abapComplexStatement "\<\(BEGIN\W\+OF\W\+\(BLOCK\|LINE\)\|BEGIN\W\+OF\)\>"
syn match abapComplexStatement "\<\(END\W\+OF\W\+\(BLOCK\|LINE\)\|END\W\+OF\)\>"
syn match abapComplexStatement "\<NO\W\+INTERVALS\>"
syn match abapComplexStatement "\<RESPECTING\W\+BLANKS\>"
syn match abapComplexStatement "\<SEPARATED\W\+BY\>"
syn match abapComplexStatement "\<USING\(\W\+EDIT\W\+MASK\)\?\>"
syn match abapComplexStatement "\<WHERE\(\W\+LINE\)\?\>"
syn match abapComplexStatement "\<RADIOBUTTON\W\+GROUP\>"
syn match abapComplexStatement "\<REF\W\+TO\>"
syn match abapComplexStatement "\<\(PUBLIC\|PRIVATE\|PROTECTED\)\(\W\+SECTION\)\?\>"
syn match abapComplexStatement "\<DELETING\W\+\(TRAILING\|LEADING\)\>"
syn match abapComplexStatement "\<\(ALL\W\+OCCURRENCES\)\|\(\(FIRST\|LAST\)\W\+OCCURRENCE\)\>"
syn match abapComplexStatement "\<INHERITING\W\+FROM\>"
syn match abapComplexStatement "\<\(UP\W\+\)\?TO\>"
" hyphenated-word statements
syn match abapComplexStatement "\<LINE-COUNT\>"
syn match abapComplexStatement "\<ADD-CORRESPONDING\>"
syn match abapComplexStatement "\<AUTHORITY-CHECK\>"
syn match abapComplexStatement "\<BREAK-POINT\>"
syn match abapComplexStatement "\<CLASS-DATA\>"
syn match abapComplexStatement "\<CLASS-METHODS\>"
syn match abapComplexStatement "\<CLASS-METHOD\>"
syn match abapComplexStatement "\<DIVIDE-CORRESPONDING\>"
syn match abapComplexStatement "\<EDITOR-CALL\>"
syn match abapComplexStatement "\<END-OF-DEFINITION\>"
syn match abapComplexStatement "\<END-OF-PAGE\>"
syn match abapComplexStatement "\<END-OF-SELECTION\>"
syn match abapComplexStatement "\<FIELD-GROUPS\>"
syn match abapComplexStatement "\<FIELD-SYMBOLS\>"
syn match abapComplexStatement "\<FUNCTION-POOL\>"
syn match abapComplexStatement "\<IS\W\+\(NOT\W\+\)\?\(ASSIGNED\|BOUND\|INITIAL\|SUPPLIED\)\>"
syn match abapComplexStatement "\<MOVE-CORRESPONDING\>"
syn match abapComplexStatement "\<MULTIPLY-CORRESPONDING\>"
syn match abapComplexStatement "\<NEW-LINE\>"
syn match abapComplexStatement "\<NEW-PAGE\>"
syn match abapComplexStatement "\<NEW-SECTION\>"
syn match abapComplexStatement "\<PRINT-CONTROL\>"
syn match abapComplexStatement "\<RP-PROVIDE-FROM-LAST\>"
syn match abapComplexStatement "\<SELECT-OPTIONS\>"
syn match abapComplexStatement "\<SELECTION-SCREEN\>"
syn match abapComplexStatement "\<START-OF-SELECTION\>"
syn match abapComplexStatement "\<SUBTRACT-CORRESPONDING\>"
syn match abapComplexStatement "\<SYNTAX-CHECK\>"
syn match abapComplexStatement "\<SYNTAX-TRACE\>"
syn match abapComplexStatement "\<TOP-OF-PAGE\>"
syn match abapComplexStatement "\<TYPE-POOL\>"
syn match abapComplexStatement "\<TYPE-POOLS\>"
syn match abapComplexStatement "\<LINE-SIZE\>"
syn match abapComplexStatement "\<LINE-COUNT\>"
syn match abapComplexStatement "\<MESSAGE-ID\>"
syn match abapComplexStatement "\<DISPLAY-MODE\>"
syn match abapComplexStatement "\<READ\(-ONLY\)\?\>"
" ABAP statements
syn keyword abapStatement ADD ALIAS ALIASES ASSERT ASSIGN ASSIGNING AT
syn keyword abapStatement BACK
syn keyword abapStatement CALL CASE CATCH CHECK CLASS CLEAR CLOSE CNT COLLECT COMMIT COMMUNICATION COMPUTE CONCATENATE CONDENSE CONSTANTS CONTINUE CONTROLS CONVERT CREATE CURRENCY
syn keyword abapStatement DATA DEFINE DEFINITION DEFERRED DELETE DESCRIBE DETAIL DIVIDE DO
syn 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 EXTRACT
syn keyword abapStatement FETCH FIELDS FORM FORMAT FREE FROM FUNCTION
syn keyword abapStatement GENERATE GET
syn keyword abapStatement HIDE
syn keyword abapStatement IF IMPORT IMPORTING INDEX INFOTYPES INITIALIZATION INTERFACE INTERFACES INPUT INSERT IMPLEMENTATION
syn keyword abapStatement LEAVE LIKE LINE LOAD LOCAL LOOP
syn keyword abapStatement MESSAGE METHOD METHODS MODIFY MODULE MOVE MULTIPLY
syn keyword abapStatement ON OVERLAY OPTIONAL OTHERS
syn keyword abapStatement PACK PARAMETERS PERFORM POSITION PROGRAM PROVIDE PUT
syn keyword abapStatement RAISE RANGES RECEIVE RECEIVING REDEFINITION REFERENCE REFRESH REJECT REPLACE REPORT RESERVE RESTORE RETURNING ROLLBACK
syn keyword abapStatement SCAN SCROLL SEARCH SELECT SET SHIFT SKIP SORT SORTED SPLIT STANDARD STATICS STEP STOP SUBMIT SUBTRACT SUM SUMMARY SUPPRESS
syn keyword abapStatement TABLES TIMES TRANSFER TRANSLATE TRY TYPE TYPES
syn keyword abapStatement UNASSIGN ULINE UNPACK UPDATE
syn keyword abapStatement WHEN WHILE WINDOW WRITE
" More statemets
syn keyword abapStatement LINES
syn keyword abapStatement INTO GROUP BY HAVING ORDER BY SINGLE
syn keyword abapStatement APPENDING CORRESPONDING FIELDS OF TABLE
syn keyword abapStatement LEFT RIGHT OUTER INNER JOIN AS CLIENT SPECIFIED BYPASSING BUFFER ROWS CONNECTING
syn keyword abapStatement OCCURS STRUCTURE OBJECT PROPERTY
syn keyword abapStatement CASTING APPEND RAISING VALUE COLOR
syn keyword abapStatement CHANGING EXCEPTION EXCEPTIONS DEFAULT CHECKBOX COMMENT
syn keyword abapStatement ID NUMBER FOR TITLE OUTPUT
" Special ABAP specific tables:
syn match abapSpecialTables "\<\(sy\|\(hrp\|p\|pa\)\d\d\d\d\|t\d\d\d.\|innnn\)-"me=e-1 contained
syn match abapStructure "\<\w\+-[^\>]"me=e-2 contains=abapSpecialTables,abapStatement,abapComplexStatement
syn match abapField "-\w\+"ms=s+1
" Pointer
syn match abapSpecial "<\w\+>"
" Abap common constants:
syn keyword abapSpecial TRUE FALSE NULL SPACE
" Includes
syn region abapInclude start="include" end="." contains=abapComment
" Types
syn keyword abapTypes c n i p f d t x string xstring decfloat16 decfloat34
" Atritmitic operators
syn keyword abapOperator abs sign ceil floor trunc frac acos asin atan cos sin tan
syn keyword abapOperator cosh sinh tanh exp log log10 sqrt
" String operators
syn keyword abapStatement strlen xstrlen charlen numofchar dbmaxlen
syn keyword abapOperator EQ NE LT LE GT GE NOT AND OR XOR IN LIKE BETWEEN
" An error? Not strictly... but cannot think of reason this is intended.
syn match abapError "\.\."
" Comments
syn region abapComment start="^\*" end="$" contains=abapTodo
syn match abapComment "\".*" contains=abapTodo
syn keyword abapTodo contained TODO NOTE
syn match abapTodo "\#EC\W\+\w\+"
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link abapError Error
hi def link abapComment Comment
hi def link abapInclude Include
hi def link abapStatement Statement
hi def link abapComplexStatement Statement
hi def link abapSpecial Special
hi def link abapNamespace Special
hi def link abapSpecialTables Special
hi def link abapSymbolOperator abapOperator
hi def link abapOperator Operator
hi def link abapCharString String
hi def link abapString String
hi def link abapFloat Float
hi def link abapTypes Type
hi def link abapSymbol Structure
hi def link abapStructure Structure
hi def link abapField Variable
hi def link abapNumber Number
hi def link abapHex Number
let b:current_syntax = "abap"
" vim: ts=8 sw=2
endif

39
syntax/abaqus.vim Normal file
View File

@@ -0,0 +1,39 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Abaqus finite element input file (www.hks.com)
" Maintainer: Carl Osterwisch <osterwischc@asme.org>
" Last Change: 2002 Feb 24
" Remark: Huge improvement in folding performance--see filetype plugin
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" Abaqus comment lines
syn match abaqusComment "^\*\*.*$"
" Abaqus keyword lines
syn match abaqusKeywordLine "^\*\h.*" contains=abaqusKeyword,abaqusParameter,abaqusValue display
syn match abaqusKeyword "^\*\h[^,]*" contained display
syn match abaqusParameter ",[^,=]\+"lc=1 contained display
syn match abaqusValue "=\s*[^,]*"lc=1 contained display
" Illegal syntax
syn match abaqusBadLine "^\s\+\*.*" display
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
" The default methods for highlighting. Can be overridden later
hi def link abaqusComment Comment
hi def link abaqusKeyword Statement
hi def link abaqusParameter Identifier
hi def link abaqusValue Constant
hi def link abaqusBadLine Error
let b:current_syntax = "abaqus"
endif

55
syntax/abc.vim Normal file
View File

@@ -0,0 +1,55 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: abc music notation language
" Maintainer: James Allwright <J.R.Allwright@westminster.ac.uk>
" URL: http://perun.hscs.wmin.ac.uk/~jra/vim/syntax/abc.vim
" Last Change: 27th April 2001
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" tags
syn region abcGuitarChord start=+"[A-G]+ end=+"+ contained
syn match abcNote "z[1-9]*[0-9]*" contained
syn match abcNote "z[1-9]*[0-9]*/[248]\=" contained
syn match abcNote "[=_\^]\{,2}[A-G],*[1-9]*[0-9]*" contained
syn match abcNote "[=_\^]\{,2}[A-G],*[1-9]*[0-9]*/[248]\=" contained
syn match abcNote "[=_\^]\{,2}[a-g]'*[1-9]*[0-9]*" contained
syn match abcNote "[=_\^]\{,2}[a-g]'*[1-9]*[0-9]*/[248]\=" contained
syn match abcBar "|" contained
syn match abcBar "[:|][:|]" contained
syn match abcBar ":|2" contained
syn match abcBar "|1" contained
syn match abcBar "\[[12]" contained
syn match abcTuple "([1-9]\+:\=[0-9]*:\=[0-9]*" contained
syn match abcBroken "<\|<<\|<<<\|>\|>>\|>>>" contained
syn match abcTie "-"
syn match abcHeadField "^[A-EGHIK-TVWXZ]:.*$" contained
syn match abcBodyField "^[KLMPQWVw]:.*$" contained
syn region abcHeader start="^X:" end="^K:.*$" contained contains=abcHeadField,abcComment keepend
syn region abcTune start="^X:" end="^ *$" contains=abcHeader,abcComment,abcBar,abcNote,abcBodyField,abcGuitarChord,abcTuple,abcBroken,abcTie
syn match abcComment "%.*$"
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link abcComment Comment
hi def link abcHeadField Type
hi def link abcBodyField Special
hi def link abcBar Statement
hi def link abcTuple Statement
hi def link abcBroken Statement
hi def link abcTie Statement
hi def link abcGuitarChord Identifier
hi def link abcNote Constant
let b:current_syntax = "abc"
" vim: ts=4
endif

165
syntax/abel.vim Normal file
View File

@@ -0,0 +1,165 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: ABEL
" Maintainer: John Cook <johncook3@gmail.com>
" Last Change: 2011 Dec 27
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" this language is oblivious to case
syn case ignore
" A bunch of keywords
syn keyword abelHeader module title device options
syn keyword abelSection declarations equations test_vectors end
syn keyword abelDeclaration state truth_table state_diagram property
syn keyword abelType pin node attribute constant macro library
syn keyword abelTypeId com reg neg pos buffer dc reg_d reg_t contained
syn keyword abelTypeId reg_sr reg_jk reg_g retain xor invert contained
syn keyword abelStatement when then else if with endwith case endcase
syn keyword abelStatement fuses expr trace
" option to omit obsolete statements
if exists("abel_obsolete_ok")
syn keyword abelStatement enable flag in
else
syn keyword abelError enable flag in
endif
" directives
syn match abelDirective "@alternate"
syn match abelDirective "@standard"
syn match abelDirective "@const"
syn match abelDirective "@dcset"
syn match abelDirective "@include"
syn match abelDirective "@page"
syn match abelDirective "@radix"
syn match abelDirective "@repeat"
syn match abelDirective "@irp"
syn match abelDirective "@expr"
syn match abelDirective "@if"
syn match abelDirective "@ifb"
syn match abelDirective "@ifnb"
syn match abelDirective "@ifdef"
syn match abelDirective "@ifndef"
syn match abelDirective "@ifiden"
syn match abelDirective "@ifniden"
syn keyword abelTodo contained TODO XXX FIXME
" wrap up type identifiers to differentiate them from normal strings
syn region abelSpecifier start='istype' end=';' contains=abelTypeIdChar,abelTypeId,abelTypeIdEnd keepend
syn match abelTypeIdChar "[,']" contained
syn match abelTypeIdEnd ";" contained
" string contstants and special characters within them
syn match abelSpecial contained "\\['\\]"
syn region abelString start=+'+ skip=+\\"+ end=+'+ contains=abelSpecial
" valid integer number formats (decimal, binary, octal, hex)
syn match abelNumber "\<[-+]\=[0-9]\+\>"
syn match abelNumber "\^d[0-9]\+\>"
syn match abelNumber "\^b[01]\+\>"
syn match abelNumber "\^o[0-7]\+\>"
syn match abelNumber "\^h[0-9a-f]\+\>"
" special characters
" (define these after abelOperator so ?= overrides ?)
syn match abelSpecialChar "[\[\](){},;:?]"
" operators
syn match abelLogicalOperator "[!#&$]"
syn match abelRangeOperator "\.\."
syn match abelAlternateOperator "[/*+]"
syn match abelAlternateOperator ":[+*]:"
syn match abelArithmeticOperator "[-%]"
syn match abelArithmeticOperator "<<"
syn match abelArithmeticOperator ">>"
syn match abelRelationalOperator "[<>!=]="
syn match abelRelationalOperator "[<>]"
syn match abelAssignmentOperator "[:?]\=="
syn match abelAssignmentOperator "?:="
syn match abelTruthTableOperator "->"
" signal extensions
syn match abelExtension "\.aclr\>"
syn match abelExtension "\.aset\>"
syn match abelExtension "\.clk\>"
syn match abelExtension "\.clr\>"
syn match abelExtension "\.com\>"
syn match abelExtension "\.fb\>"
syn match abelExtension "\.[co]e\>"
syn match abelExtension "\.l[eh]\>"
syn match abelExtension "\.fc\>"
syn match abelExtension "\.pin\>"
syn match abelExtension "\.set\>"
syn match abelExtension "\.[djksrtq]\>"
syn match abelExtension "\.pr\>"
syn match abelExtension "\.re\>"
syn match abelExtension "\.a[pr]\>"
syn match abelExtension "\.s[pr]\>"
" special constants
syn match abelConstant "\.[ckudfpxz]\."
syn match abelConstant "\.sv[2-9]\."
" one-line comments
syn region abelComment start=+"+ end=+"\|$+ contains=abelNumber,abelTodo
" option to prevent C++ style comments
if !exists("abel_cpp_comments_illegal")
syn region abelComment start=+//+ end=+$+ contains=abelNumber,abelTodo
endif
syn sync minlines=1
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
" The default highlighting.
hi def link abelHeader abelStatement
hi def link abelSection abelStatement
hi def link abelDeclaration abelStatement
hi def link abelLogicalOperator abelOperator
hi def link abelRangeOperator abelOperator
hi def link abelAlternateOperator abelOperator
hi def link abelArithmeticOperator abelOperator
hi def link abelRelationalOperator abelOperator
hi def link abelAssignmentOperator abelOperator
hi def link abelTruthTableOperator abelOperator
hi def link abelSpecifier abelStatement
hi def link abelOperator abelStatement
hi def link abelStatement Statement
hi def link abelIdentifier Identifier
hi def link abelTypeId abelType
hi def link abelTypeIdChar abelType
hi def link abelType Type
hi def link abelNumber abelString
hi def link abelString String
hi def link abelConstant Constant
hi def link abelComment Comment
hi def link abelExtension abelSpecial
hi def link abelSpecialChar abelSpecial
hi def link abelTypeIdEnd abelSpecial
hi def link abelSpecial Special
hi def link abelDirective PreProc
hi def link abelTodo Todo
hi def link abelError Error
let b:current_syntax = "abel"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim:ts=8
endif

114
syntax/acedb.vim Normal file
View File

@@ -0,0 +1,114 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: AceDB model files
" Maintainer: Stewart Morris (Stewart.Morris@ed.ac.uk)
" Last change: Thu Apr 26 10:38:01 BST 2001
" URL: http://www.ed.ac.uk/~swmorris/vim/acedb.vim
" Syntax file to handle all $ACEDB/wspec/*.wrm files, primarily models.wrm
" AceDB software is available from http://www.acedb.org
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn keyword acedbXref XREF
syn keyword acedbModifier UNIQUE REPEAT
syn case ignore
syn keyword acedbModifier Constraints
syn keyword acedbType DateType Int Text Float
" Magic tags from: http://genome.cornell.edu/acedocs/magic/summary.html
syn keyword acedbMagic pick_me_to_call No_cache Non_graphic Title
syn keyword acedbMagic Flipped Centre Extent View Default_view
syn keyword acedbMagic From_map Minimal_view Main_Marker Map Includes
syn keyword acedbMagic Mapping_data More_data Position Ends Left Right
syn keyword acedbMagic Multi_Position Multi_Ends With Error Relative
syn keyword acedbMagic Min Anchor Gmap Grid_map Grid Submenus Cambridge
syn keyword acedbMagic No_buttons Columns Colour Surround_colour Tag
syn keyword acedbMagic Scale_unit Cursor Cursor_on Cursor_unit
syn keyword acedbMagic Locator Magnification Projection_lines_on
syn keyword acedbMagic Marker_points Marker_intervals Contigs
syn keyword acedbMagic Physical_genes Two_point Multi_point Likelihood
syn keyword acedbMagic Point_query Point_yellow Point_width
syn keyword acedbMagic Point_pne Point_pe Point_nne Point_ne
syn keyword acedbMagic Derived_tags DT_query DT_width DT_no_duplicates
syn keyword acedbMagic RH_data RH_query RH_spacing RH_show_all
syn keyword acedbMagic Names_on Width Symbol Colours Pne Pe Nne pMap
syn keyword acedbMagic Sequence Gridded FingerPrint In_Situ Cosmid_grid
syn keyword acedbMagic Layout Lines_at Space_at No_stagger A1_labelling
syn keyword acedbMagic DNA Structure From Source Source_Exons
syn keyword acedbMagic Coding CDS Transcript Assembly_tags Allele
syn keyword acedbMagic Display Colour Frame_sensitive Strand_sensitive
syn keyword acedbMagic Score_bounds Percent Bumpable Width Symbol
syn keyword acedbMagic Blixem_N Address E_mail Paper Reference Title
syn keyword acedbMagic Point_1 Point_2 Calculation Full One_recombinant
syn keyword acedbMagic Tested Selected_trans Backcross Back_one
syn keyword acedbMagic Dom_semi Dom_let Direct Complex_mixed Calc
syn keyword acedbMagic Calc_upper_conf Item_1 Item_2 Results A_non_B
syn keyword acedbMagic Score Score_by_offset Score_by_width
syn keyword acedbMagic Right_priority Blastn Blixem Blixem_X
syn keyword acedbMagic Journal Year Volume Page Author
syn keyword acedbMagic Selected One_all Recs_all One_let
syn keyword acedbMagic Sex_full Sex_one Sex_cis Dom_one Dom_selected
syn keyword acedbMagic Calc_distance Calc_lower_conf Canon_for_cosmid
syn keyword acedbMagic Reversed_physical Points Positive Negative
syn keyword acedbMagic Point_error_scale Point_segregate_ordered
syn keyword acedbMagic Point_symbol Interval_JTM Interval_RD
syn keyword acedbMagic EMBL_feature Homol Feature
syn keyword acedbMagic DT_tag Spacer Spacer_colour Spacer_width
syn keyword acedbMagic RH_positive RH_negative RH_contradictory Query
syn keyword acedbMagic Clone Y_remark PCR_remark Hybridizes_to
syn keyword acedbMagic Row Virtual_row Mixed In_pool Subpool B_non_A
syn keyword acedbMagic Interval_SRK Point_show_marginal Subsequence
syn keyword acedbMagic Visible Properties Transposon
syn match acedbClass "^?\w\+\|^#\w\+"
syn match acedbComment "//.*"
syn region acedbComment start="/\*" end="\*/"
syn match acedbComment "^#\W.*"
syn match acedbHelp "^\*\*\w\+$"
syn match acedbTag "[^^]?\w\+\|[^^]#\w\+"
syn match acedbBlock "//#.\+#$"
syn match acedbOption "^_[DVH]\S\+"
syn match acedbFlag "\s\+-\h\+"
syn match acedbSubclass "^Class"
syn match acedbSubtag "^Visible\|^Is_a_subclass_of\|^Filter\|^Hidden"
syn match acedbNumber "\<\d\+\>"
syn match acedbNumber "\<\d\+\.\d\+\>"
syn match acedbHyb "\<Positive_\w\+\>\|\<Negative\w\+\>"
syn region acedbString start=/"/ end=/"/ skip=/\\"/ oneline
" Rest of syntax highlighting rules start here
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link acedbMagic Special
hi def link acedbHyb Special
hi def link acedbType Type
hi def link acedbOption Type
hi def link acedbSubclass Type
hi def link acedbSubtag Include
hi def link acedbFlag Include
hi def link acedbTag Include
hi def link acedbClass Todo
hi def link acedbHelp Todo
hi def link acedbXref Identifier
hi def link acedbModifier Label
hi def link acedbComment Comment
hi def link acedbBlock ModeMsg
hi def link acedbNumber Number
hi def link acedbString String
let b:current_syntax = "acedb"
" The structure of the model.wrm file is sensitive to mixed tab and space
" indentation and assumes tabs are 8 so...
se ts=8
endif

372
syntax/ada.vim Normal file
View File

@@ -0,0 +1,372 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
"----------------------------------------------------------------------------
" Description: Vim Ada syntax file
" Language: Ada (2005)
" $Id: ada.vim 887 2008-07-08 14:29:01Z krischik $
" Copyright: Copyright (C) 2006 Martin Krischik
" Maintainer: Martin Krischik
" David A. Wheeler <dwheeler@dwheeler.com>
" Simon Bradley <simon.bradley@pitechnology.com>
" Contributors: Preben Randhol.
" $Author: krischik $
" $Date: 2008-07-08 16:29:01 +0200 (Di, 08 Jul 2008) $
" Version: 4.6
" $Revision: 887 $
" $HeadURL: https://gnuada.svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/syntax/ada.vim $
" http://www.dwheeler.com/vim
" History: 24.05.2006 MK Unified Headers
" 26.05.2006 MK ' should not be in iskeyword.
" 16.07.2006 MK Ada-Mode as vim-ball
" 02.10.2006 MK Better folding.
" 15.10.2006 MK Bram's suggestion for runtime integration
" 05.11.2006 MK Spell check for comments and strings only
" 05.11.2006 MK Bram suggested to save on spaces
" Help Page: help ft-ada-syntax
"------------------------------------------------------------------------------
" The formal spec of Ada 2005 (ARM) is the "Ada 2005 Reference Manual".
" For more Ada 2005 info, see http://www.gnuada.org and http://www.adapower.com.
"
" This vim syntax file works on vim 7.0 only and makes use of most of Voim 7.0
" advanced features.
"------------------------------------------------------------------------------
if exists("b:current_syntax") || version < 700
finish
endif
let s:keepcpo= &cpo
set cpo&vim
let b:current_syntax = "ada"
" Section: Ada is entirely case-insensitive. {{{1
"
syntax case ignore
" Section: Highlighting commands {{{1
"
" There are 72 reserved words in total in Ada2005. Some keywords are
" used in more than one way. For example:
" 1. "end" is a general keyword, but "end if" ends a Conditional.
" 2. "then" is a conditional, but "and then" is an operator.
"
for b:Item in g:ada#Keywords
" Standard Exceptions (including I/O).
" We'll highlight the standard exceptions, similar to vim's Python mode.
" It's possible to redefine the standard exceptions as something else,
" but doing so is very bad practice, so simply highlighting them makes sense.
if b:Item['kind'] == "x"
execute "syntax keyword adaException " . b:Item['word']
endif
if b:Item['kind'] == "a"
execute 'syntax match adaAttribute "\V' . b:Item['word'] . '"'
endif
" We don't normally highlight types in package Standard
" (Integer, Character, Float, etc.). I don't think it looks good
" with the other type keywords, and many Ada programs define
" so many of their own types that it looks inconsistent.
" However, if you want this highlighting, turn on "ada_standard_types".
" For package Standard's definition, see ARM section A.1.
if b:Item['kind'] == "t" && exists ("g:ada_standard_types")
execute "syntax keyword adaBuiltinType " . b:Item['word']
endif
endfor
" Section: others {{{1
"
syntax keyword adaLabel others
" Section: Operatoren {{{1
"
syntax keyword adaOperator abs mod not rem xor
syntax match adaOperator "\<and\>"
syntax match adaOperator "\<and\s\+then\>"
syntax match adaOperator "\<or\>"
syntax match adaOperator "\<or\s\+else\>"
syntax match adaOperator "[-+*/<>&]"
syntax keyword adaOperator **
syntax match adaOperator "[/<>]="
syntax keyword adaOperator =>
syntax match adaOperator "\.\."
syntax match adaOperator "="
" Section: <> {{{1
"
" Handle the box, <>, specially:
"
syntax keyword adaSpecial <>
" Section: rainbow color {{{1
"
if exists("g:ada_rainbow_color")
syntax match adaSpecial "[:;.,]"
call rainbow_parenthsis#LoadRound ()
call rainbow_parenthsis#Activate ()
else
syntax match adaSpecial "[:;().,]"
endif
" Section: := {{{1
"
" We won't map "adaAssignment" by default, but we need to map ":=" to
" something or the "=" inside it will be mislabelled as an operator.
" Note that in Ada, assignment (:=) is not considered an operator.
"
syntax match adaAssignment ":="
" Section: Numbers, including floating point, exponents, and alternate bases. {{{1
"
syntax match adaNumber "\<\d[0-9_]*\(\.\d[0-9_]*\)\=\([Ee][+-]\=\d[0-9_]*\)\=\>"
syntax match adaNumber "\<\d\d\=#\x[0-9A-Fa-f_]*\(\.\x[0-9A-Fa-f_]*\)\=#\([Ee][+-]\=\d[0-9_]*\)\="
" Section: Identify leading numeric signs {{{1
"
" In "A-5" the "-" is an operator, " but in "A:=-5" the "-" is a sign. This
" handles "A3+-5" (etc.) correctly. " This assumes that if you put a
" don't put a space after +/- when it's used " as an operator, you won't
" put a space before it either -- which is true " in code I've seen.
"
syntax match adaSign "[[:space:]<>=(,|:;&*/+-][+-]\d"lc=1,hs=s+1,he=e-1,me=e-1
" Section: Labels for the goto statement. {{{1
"
syntax region adaLabel start="<<" end=">>"
" Section: Boolean Constants {{{1
" Boolean Constants.
syntax keyword adaBoolean true false
" Section: Warn C/C++ {{{1
"
" Warn people who try to use C/C++ notation erroneously:
"
syntax match adaError "//"
syntax match adaError "/\*"
syntax match adaError "=="
" Section: Space Errors {{{1
"
if exists("g:ada_space_errors")
if !exists("g:ada_no_trail_space_error")
syntax match adaSpaceError excludenl "\s\+$"
endif
if !exists("g:ada_no_tab_space_error")
syntax match adaSpaceError " \+\t"me=e-1
endif
if !exists("g:ada_all_tab_usage")
syntax match adaSpecial "\t"
endif
endif
" Section: end {{{1
" Unless special ("end loop", "end if", etc.), "end" marks the end of a
" begin, package, task etc. Assiging it to adaEnd.
syntax match adaEnd /\<end\>/
syntax keyword adaPreproc pragma
syntax keyword adaRepeat exit for loop reverse while
syntax match adaRepeat "\<end\s\+loop\>"
syntax keyword adaStatement accept delay goto raise requeue return
syntax keyword adaStatement terminate
syntax match adaStatement "\<abort\>"
" Section: Handle Ada's record keywords. {{{1
"
" 'record' usually starts a structure, but "with null record;" does not,
" and 'end record;' ends a structure. The ordering here is critical -
" 'record;' matches a "with null record", so make it a keyword (this can
" match when the 'with' or 'null' is on a previous line).
" We see the "end" in "end record" before the word record, so we match that
" pattern as adaStructure (and it won't match the "record;" pattern).
"
syntax match adaStructure "\<record\>" contains=adaRecord
syntax match adaStructure "\<end\s\+record\>" contains=adaRecord
syntax match adaKeyword "\<record;"me=e-1
" Section: type classes {{{1
"
syntax keyword adaStorageClass abstract access aliased array at constant delta
syntax keyword adaStorageClass digits limited of private range tagged
syntax keyword adaStorageClass interface synchronized
syntax keyword adaTypedef subtype type
" Section: Conditionals {{{1
"
" "abort" after "then" is a conditional of its own.
"
syntax match adaConditional "\<then\>"
syntax match adaConditional "\<then\s\+abort\>"
syntax match adaConditional "\<else\>"
syntax match adaConditional "\<end\s\+if\>"
syntax match adaConditional "\<end\s\+case\>"
syntax match adaConditional "\<end\s\+select\>"
syntax keyword adaConditional if case select
syntax keyword adaConditional elsif when
" Section: other keywords {{{1
syntax match adaKeyword "\<is\>" contains=adaRecord
syntax keyword adaKeyword all do exception in new null out
syntax keyword adaKeyword separate until overriding
" Section: begin keywords {{{1
"
" These keywords begin various constructs, and you _might_ want to
" highlight them differently.
"
syntax keyword adaBegin begin body declare entry generic
syntax keyword adaBegin protected renames task
syntax match adaBegin "\<function\>" contains=adaFunction
syntax match adaBegin "\<procedure\>" contains=adaProcedure
syntax match adaBegin "\<package\>" contains=adaPackage
if exists("ada_with_gnat_project_files")
syntax keyword adaBegin project
endif
" Section: with, use {{{1
"
if exists("ada_withuse_ordinary")
" Don't be fancy. Display "with" and "use" as ordinary keywords in all cases.
syntax keyword adaKeyword with use
else
" Highlight "with" and "use" clauses like C's "#include" when they're used
" to reference other compilation units; otherwise they're ordinary keywords.
" If we have vim 6.0 or later, we'll use its advanced pattern-matching
" capabilities so that we won't match leading spaces.
syntax match adaKeyword "\<with\>"
syntax match adaKeyword "\<use\>"
syntax match adaBeginWith "^\s*\zs\(\(with\(\s\+type\)\=\)\|\(use\)\)\>" contains=adaInc
syntax match adaSemiWith ";\s*\zs\(\(with\(\s\+type\)\=\)\|\(use\)\)\>" contains=adaInc
syntax match adaInc "\<with\>" contained contains=NONE
syntax match adaInc "\<with\s\+type\>" contained contains=NONE
syntax match adaInc "\<use\>" contained contains=NONE
" Recognize "with null record" as a keyword (even the "record").
syntax match adaKeyword "\<with\s\+null\s\+record\>"
" Consider generic formal parameters of subprograms and packages as keywords.
syntax match adaKeyword ";\s*\zswith\s\+\(function\|procedure\|package\)\>"
syntax match adaKeyword "^\s*\zswith\s\+\(function\|procedure\|package\)\>"
endif
" Section: String and character constants. {{{1
"
syntax region adaString contains=@Spell start=+"+ skip=+""+ end=+"+
syntax match adaCharacter "'.'"
" Section: Todo (only highlighted in comments) {{{1
"
syntax keyword adaTodo contained TODO FIXME XXX NOTE
" Section: Comments. {{{1
"
syntax region adaComment
\ oneline
\ contains=adaTodo,adaLineError,@Spell
\ start="--"
\ end="$"
" Section: line errors {{{1
"
" Note: Line errors have become quite slow with Vim 7.0
"
if exists("g:ada_line_errors")
syntax match adaLineError "\(^.\{79}\)\@<=." contains=ALL containedin=ALL
endif
" Section: syntax folding {{{1
"
" Syntax folding is very tricky - for now I still suggest to use
" indent folding
"
if exists("g:ada_folding") && g:ada_folding[0] == 's'
if stridx (g:ada_folding, 'p') >= 0
syntax region adaPackage
\ start="\(\<package\s\+body\>\|\<package\>\)\s*\z(\k*\)"
\ end="end\s\+\z1\s*;"
\ keepend extend transparent fold contains=ALL
endif
if stridx (g:ada_folding, 'f') >= 0
syntax region adaProcedure
\ start="\<procedure\>\s*\z(\k*\)"
\ end="\<end\>\s\+\z1\s*;"
\ keepend extend transparent fold contains=ALL
syntax region adaFunction
\ start="\<procedure\>\s*\z(\k*\)"
\ end="end\s\+\z1\s*;"
\ keepend extend transparent fold contains=ALL
endif
if stridx (g:ada_folding, 'f') >= 0
syntax region adaRecord
\ start="\<is\s\+record\>"
\ end="\<end\s\+record\>"
\ keepend extend transparent fold contains=ALL
endif
endif
" Section: The default methods for highlighting. Can be overridden later. {{{1
"
highlight def link adaCharacter Character
highlight def link adaComment Comment
highlight def link adaConditional Conditional
highlight def link adaKeyword Keyword
highlight def link adaLabel Label
highlight def link adaNumber Number
highlight def link adaSign Number
highlight def link adaOperator Operator
highlight def link adaPreproc PreProc
highlight def link adaRepeat Repeat
highlight def link adaSpecial Special
highlight def link adaStatement Statement
highlight def link adaString String
highlight def link adaStructure Structure
highlight def link adaTodo Todo
highlight def link adaType Type
highlight def link adaTypedef Typedef
highlight def link adaStorageClass StorageClass
highlight def link adaBoolean Boolean
highlight def link adaException Exception
highlight def link adaAttribute Tag
highlight def link adaInc Include
highlight def link adaError Error
highlight def link adaSpaceError Error
highlight def link adaLineError Error
highlight def link adaBuiltinType Type
highlight def link adaAssignment Special
" Subsection: Begin, End {{{2
"
if exists ("ada_begin_preproc")
" This is the old default display:
highlight def link adaBegin PreProc
highlight def link adaEnd PreProc
else
" This is the new default display:
highlight def link adaBegin Keyword
highlight def link adaEnd Keyword
endif
" Section: sync {{{1
"
" We don't need to look backwards to highlight correctly;
" this speeds things up greatly.
syntax sync minlines=1 maxlines=1
let &cpo = s:keepcpo
unlet s:keepcpo
finish " 1}}}
"------------------------------------------------------------------------------
" Copyright (C) 2006 Martin Krischik
"
" Vim is Charityware - see ":help license" or uganda.txt for licence details.
"------------------------------------------------------------------------------
"vim: textwidth=78 nowrap tabstop=8 shiftwidth=3 softtabstop=3 noexpandtab
"vim: foldmethod=marker
endif

86
syntax/aflex.vim Normal file
View File

@@ -0,0 +1,86 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: AfLex (from Lex syntax file)
" Maintainer: Mathieu Clabaut <mathieu.clabaut@free.fr>
" LastChange: 02 May 2001
" Original: Lex, maintained by Dr. Charles E. Campbell, Jr.
" Comment: Replaced sourcing c.vim file by ada.vim and rename lex*
" in aflex*
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" Read the Ada syntax to start with
runtime! syntax/ada.vim
unlet b:current_syntax
" --- AfLex stuff ---
"I'd prefer to use aflex.* , but it doesn't handle forward definitions yet
syn cluster aflexListGroup contains=aflexAbbrvBlock,aflexAbbrv,aflexAbbrv,aflexAbbrvRegExp,aflexInclude,aflexPatBlock,aflexPat,aflexBrace,aflexPatString,aflexPatTag,aflexPatTag,aflexPatComment,aflexPatCodeLine,aflexMorePat,aflexPatSep,aflexSlashQuote,aflexPatCode,cInParen,cUserLabel,cOctalZero,cCppSkip,cErrInBracket,cErrInParen,cOctalError,cCppOut2
syn cluster aflexListPatCodeGroup contains=aflexAbbrvBlock,aflexAbbrv,aflexAbbrv,aflexAbbrvRegExp,aflexInclude,aflexPatBlock,aflexPat,aflexBrace,aflexPatTag,aflexPatTag,aflexPatComment,aflexPatCodeLine,aflexMorePat,aflexPatSep,aflexSlashQuote,cInParen,cUserLabel,cOctalZero,cCppSkip,cErrInBracket,cErrInParen,cOctalError,cCppOut2
" Abbreviations Section
syn region aflexAbbrvBlock start="^\([a-zA-Z_]\+\t\|%{\)" end="^%%$"me=e-2 skipnl nextgroup=aflexPatBlock contains=aflexAbbrv,aflexInclude,aflexAbbrvComment
syn match aflexAbbrv "^\I\i*\s"me=e-1 skipwhite contained nextgroup=aflexAbbrvRegExp
syn match aflexAbbrv "^%[sx]" contained
syn match aflexAbbrvRegExp "\s\S.*$"lc=1 contained nextgroup=aflexAbbrv,aflexInclude
syn region aflexInclude matchgroup=aflexSep start="^%{" end="%}" contained contains=ALLBUT,@aflexListGroup
syn region aflexAbbrvComment start="^\s\+/\*" end="\*/"
"%% : Patterns {Actions}
syn region aflexPatBlock matchgroup=Todo start="^%%$" matchgroup=Todo end="^%%$" skipnl skipwhite contains=aflexPat,aflexPatTag,aflexPatComment
syn region aflexPat start=+\S+ skip="\\\\\|\\." end="\s"me=e-1 contained nextgroup=aflexMorePat,aflexPatSep contains=aflexPatString,aflexSlashQuote,aflexBrace
syn region aflexBrace start="\[" skip=+\\\\\|\\+ end="]" contained
syn region aflexPatString matchgroup=String start=+"+ skip=+\\\\\|\\"+ matchgroup=String end=+"+ contained
syn match aflexPatTag "^<\I\i*\(,\I\i*\)*>*" contained nextgroup=aflexPat,aflexPatTag,aflexMorePat,aflexPatSep
syn match aflexPatTag +^<\I\i*\(,\I\i*\)*>*\(\\\\\)*\\"+ contained nextgroup=aflexPat,aflexPatTag,aflexMorePat,aflexPatSep
syn region aflexPatComment start="^\s*/\*" end="\*/" skipnl contained contains=cTodo nextgroup=aflexPatComment,aflexPat,aflexPatString,aflexPatTag
syn match aflexPatCodeLine ".*$" contained contains=ALLBUT,@aflexListGroup
syn match aflexMorePat "\s*|\s*$" skipnl contained nextgroup=aflexPat,aflexPatTag,aflexPatComment
syn match aflexPatSep "\s\+" contained nextgroup=aflexMorePat,aflexPatCode,aflexPatCodeLine
syn match aflexSlashQuote +\(\\\\\)*\\"+ contained
syn region aflexPatCode matchgroup=Delimiter start="{" matchgroup=Delimiter end="}" skipnl contained contains=ALLBUT,@aflexListPatCodeGroup
syn keyword aflexCFunctions BEGIN input unput woutput yyleng yylook yytext
syn keyword aflexCFunctions ECHO output winput wunput yyless yymore yywrap
" <c.vim> includes several ALLBUTs; these have to be treated so as to exclude aflex* groups
syn cluster cParenGroup add=aflex.*
syn cluster cDefineGroup add=aflex.*
syn cluster cPreProcGroup add=aflex.*
syn cluster cMultiGroup add=aflex.*
" Synchronization
syn sync clear
syn sync minlines=300
syn sync match aflexSyncPat grouphere aflexPatBlock "^%[a-zA-Z]"
syn sync match aflexSyncPat groupthere aflexPatBlock "^<$"
syn sync match aflexSyncPat groupthere aflexPatBlock "^%%$"
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link aflexSlashQuote aflexPat
hi def link aflexBrace aflexPat
hi def link aflexAbbrvComment aflexPatComment
hi def link aflexAbbrv SpecialChar
hi def link aflexAbbrvRegExp Macro
hi def link aflexCFunctions Function
hi def link aflexMorePat SpecialChar
hi def link aflexPat Function
hi def link aflexPatComment Comment
hi def link aflexPatString Function
hi def link aflexPatTag Special
hi def link aflexSep Delimiter
let b:current_syntax = "aflex"
" vim:ts=10
endif

85
syntax/ahdl.vim Normal file
View File

@@ -0,0 +1,85 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syn file
" Language: Altera AHDL
" Maintainer: John Cook <john.cook@kla-tencor.com>
" Last Change: 2001 Apr 25
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
"this language is oblivious to case.
syn case ignore
" a bunch of keywords
syn keyword ahdlKeyword assert begin bidir bits buried case clique
syn keyword ahdlKeyword connected_pins constant defaults define design
syn keyword ahdlKeyword device else elsif end for function generate
syn keyword ahdlKeyword gnd help_id if in include input is machine
syn keyword ahdlKeyword node of options others output parameters
syn keyword ahdlKeyword returns states subdesign table then title to
syn keyword ahdlKeyword tri_state_node variable vcc when with
" a bunch of types
syn keyword ahdlIdentifier carry cascade dffe dff exp global
syn keyword ahdlIdentifier jkffe jkff latch lcell mcell memory opendrn
syn keyword ahdlIdentifier soft srffe srff tffe tff tri wire x
syn keyword ahdlMegafunction lpm_and lpm_bustri lpm_clshift lpm_constant
syn keyword ahdlMegafunction lpm_decode lpm_inv lpm_mux lpm_or lpm_xor
syn keyword ahdlMegafunction busmux mux
syn keyword ahdlMegafunction divide lpm_abs lpm_add_sub lpm_compare
syn keyword ahdlMegafunction lpm_counter lpm_mult
syn keyword ahdlMegafunction altdpram csfifo dcfifo scfifo csdpram lpm_ff
syn keyword ahdlMegafunction lpm_latch lpm_shiftreg lpm_ram_dq lpm_ram_io
syn keyword ahdlMegafunction lpm_rom lpm_dff lpm_tff clklock pll ntsc
syn keyword ahdlTodo contained TODO
" String contstants
syn region ahdlString start=+"+ skip=+\\"+ end=+"+
" valid integer number formats (decimal, binary, octal, hex)
syn match ahdlNumber '\<\d\+\>'
syn match ahdlNumber '\<b"\(0\|1\|x\)\+"'
syn match ahdlNumber '\<\(o\|q\)"\o\+"'
syn match ahdlNumber '\<\(h\|x\)"\x\+"'
" operators
syn match ahdlOperator "[!&#$+\-<>=?:\^]"
syn keyword ahdlOperator not and nand or nor xor xnor
syn keyword ahdlOperator mod div log2 used ceil floor
" one line and multi-line comments
" (define these after ahdlOperator so -- overrides -)
syn match ahdlComment "--.*" contains=ahdlNumber,ahdlTodo
syn region ahdlComment start="%" end="%" contains=ahdlNumber,ahdlTodo
" other special characters
syn match ahdlSpecialChar "[\[\]().,;]"
syn sync minlines=1
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
" The default highlighting.
hi def link ahdlNumber ahdlString
hi def link ahdlMegafunction ahdlIdentifier
hi def link ahdlSpecialChar SpecialChar
hi def link ahdlKeyword Statement
hi def link ahdlString String
hi def link ahdlComment Comment
hi def link ahdlIdentifier Identifier
hi def link ahdlOperator Operator
hi def link ahdlTodo Todo
let b:current_syntax = "ahdl"
" vim:ts=8
endif

53
syntax/alsaconf.vim Normal file
View File

@@ -0,0 +1,53 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: alsaconf(8) configuration file
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2006-04-19
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn keyword alsoconfTodo contained FIXME TODO XXX NOTE
syn region alsaconfComment display oneline
\ start='#' end='$'
\ contains=alsaconfTodo,@Spell
syn match alsaconfSpecialChar contained display '\\[ntvbrf]'
syn match alsaconfSpecialChar contained display '\\\o\+'
syn region alsaconfString start=+"+ skip=+\\$+ end=+"\|$+
\ contains=alsaconfSpecialChar
syn match alsaconfSpecial contained display 'confdir:'
syn region alsaconfPreProc start='<' end='>' contains=alsaconfSpecial
syn match alsaconfMode display '[+?!-]'
syn keyword alsaconfKeyword card default device errors files func strings
syn keyword alsaconfKeyword subdevice type vars
syn match alsaconfVariables display '@\(hooks\|func\|args\)'
hi def link alsoconfTodo Todo
hi def link alsaconfComment Comment
hi def link alsaconfSpecialChar SpecialChar
hi def link alsaconfString String
hi def link alsaconfSpecial Special
hi def link alsaconfPreProc PreProc
hi def link alsaconfMode Special
hi def link alsaconfKeyword Keyword
hi def link alsaconfVariables Identifier
let b:current_syntax = "alsaconf"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

92
syntax/amiga.vim Normal file
View File

@@ -0,0 +1,92 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: AmigaDos
" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
" Last Change: Aug 31, 2016
" Version: 9
" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_AMIGA
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case ignore
" Amiga Devices
syn match amiDev "\(par\|ser\|prt\|con\|nil\):"
" Amiga aliases and paths
syn match amiAlias "\<[a-zA-Z][a-zA-Z0-9]\+:"
syn match amiAlias "\<[a-zA-Z][a-zA-Z0-9]\+:[a-zA-Z0-9/]*/"
" strings
syn region amiString start=+"+ end=+"+ oneline contains=@Spell
" numbers
syn match amiNumber "\<\d\+\>"
" Logic flow
syn region amiFlow matchgroup=Statement start="if" matchgroup=Statement end="endif" contains=ALL
syn keyword amiFlow skip endskip
syn match amiError "else\|endif"
syn keyword amiElse contained else
syn keyword amiTest contained not warn error fail eq gt ge val exists
" echo exception
syn region amiEcho matchgroup=Statement start="\<echo\>" end="$" oneline contains=amiComment
syn region amiEcho matchgroup=Statement start="^\.[bB][rR][aA]" end="$" oneline
syn region amiEcho matchgroup=Statement start="^\.[kK][eE][tT]" end="$" oneline
" commands
syn keyword amiKey addbuffers copy fault join pointer setdate
syn keyword amiKey addmonitor cpu filenote keyshow printer setenv
syn keyword amiKey alias date fixfonts lab printergfx setfont
syn keyword amiKey ask delete fkey list printfiles setmap
syn keyword amiKey assign dir font loadwb prompt setpatch
syn keyword amiKey autopoint diskchange format lock protect sort
syn keyword amiKey avail diskcopy get magtape quit stack
syn keyword amiKey binddrivers diskdoctor getenv makedir relabel status
syn keyword amiKey bindmonitor display graphicdump makelink remrad time
syn keyword amiKey blanker iconedit more rename type
syn keyword amiKey break ed icontrol mount resident unalias
syn keyword amiKey calculator edit iconx newcli run unset
syn keyword amiKey cd endcli ihelp newshell say unsetenv
syn keyword amiKey changetaskpri endshell info nocapslock screenmode version
syn keyword amiKey clock eval initprinter nofastmem search wait
syn keyword amiKey cmd exchange input overscan serial wbpattern
syn keyword amiKey colors execute install palette set which
syn keyword amiKey conclip failat iprefs path setclock why
" comments
syn cluster amiCommentGroup contains=amiTodo,@Spell
syn case ignore
syn keyword amiTodo contained todo
syn case match
syn match amiComment ";.*$" contains=amiCommentGroup
" sync
syn sync lines=50
" Define the default highlighting.
if !exists("skip_amiga_syntax_inits")
hi def link amiAlias Type
hi def link amiComment Comment
hi def link amiDev Type
hi def link amiEcho String
hi def link amiElse Statement
hi def link amiError Error
hi def link amiKey Statement
hi def link amiNumber Number
hi def link amiString String
hi def link amiTest Special
endif
let b:current_syntax = "amiga"
" vim:ts=15
endif

148
syntax/aml.vim Normal file
View File

@@ -0,0 +1,148 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: AML (ARC/INFO Arc Macro Language)
" Written By: Nikki Knuit <Nikki.Knuit@gems3.gov.bc.ca>
" Maintainer: Todd Glover <todd.glover@gems9.gov.bc.ca>
" Last Change: 2001 May 10
" FUTURE CODING: Bold application commands after &sys, &tty
" Only highlight aml Functions at the beginning
" of [], in order to avoid -read highlighted,
" or [quote] strings highlighted
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case ignore
" ARC, ARCEDIT, ARCPLOT, LIBRARIAN, GRID, SCHEMAEDIT reserved words,
" defined as keywords.
syn keyword amlArcCmd contained 2button abb abb[reviations] abs ac acos acosh add addc[ogoatt] addcogoatt addf[eatureclass] addh[istory] addi addim[age] addindexatt addit[em] additem addressb[uild] addressc[reate] addresse[rrors] addressedit addressm[atch] addressp[arse] addresst[est] addro[utemeasure] addroutemeasure addte[xt] addto[stack] addw[orktable] addx[y] adj[ust] adm[inlicense] adr[ggrid] ads adsa[rc] ae af ag[gregate] ai ai[request] airequest al alia[s] alig[n] alt[erarchive] am[sarc] and annoa[lignment] annoadd annocapture annocl[ip] annoco[verage] annocurve annoe[dit] annoedit annof annofeature annofit annoitem annola[yer] annole[vel] annolevel annoline annooffset annop[osition] annoplace annos[ize] annoselectfeatur annoset annosum annosymbol annot annot[ext] annotext annotype ao ap apm[ode] app[end] arc arcad[s] arcar[rows] arcc[ogo] arcdf[ad] arcdi[me] arcdl[g] arcdx[f] arced[it] arcedit arcen[dtext] arcf[ont] arcigd[s] arcige[s] arcla[bel] arcli[nes] arcma[rkers] arcmo[ss]
syn keyword amlArcCmd contained arcpl[ot] arcplot arcpo[int] arcr[oute] arcs arcsc[itex] arcse[ction] arcsh[ape] arcsl[f] arcsn[ap] arcsp[ot] arcte[xt] arctig[er] arctin arcto[ols] arctools arcty[pe] area areaq[uery] arm arrow arrows[ize] arrowt[ype] as asc asciig[rid] asciih[elp] asciihelp asco[nnect] asconnect asd asda[tabase] asdi[sconnect] asdisconnect asel[ect] asex[ecute] asf asin asinh asp[ect] asr[eadlocks] ast[race] at atan atan2 atanh atusage aud[ittrail] autoi[ncrement] autol[ink] axis axish[atch] axisl[abels] axisr[uler] axist[ext] bac[klocksymbol] backcoverage backenvironment backnodeangleite backsymbolitem backtextitem base[select] basi[n] bat[ch] bc be be[lls] blackout blockmaj[ority] blockmax blockmea[n] blockmed[ian] blockmin blockmino[rity] blockr[ange] blockst[d] blocksu[m] blockv[ariety] bnai bou[ndaryclean] box br[ief] bsi bti buf[fer] bug[form] bugform build builds[ta] buildv[at] calco[mp] calcomp calcu[late] cali[brateroutes] calibrateroutes can[d] cartr[ead] cartread
syn keyword amlArcCmd contained cartw[rite] cartwrite cei[l] cel[lvalue] cen[troidlabels] cgm cgme[scape] cha[nge] checkin checkinrel checkout checkoutrel chm[od] chown chownt[ransaction] chowntran chowntransaction ci ci[rcle] cir class classp[rob] classs[ig] classsample clean clear clears[elect] clip clipg[raphextent] clipm[apextent] clo[sedatabase] cntvrt co cod[efind] cog[oinverse] cogocom cogoenv cogomenu coll[ocate] color color2b[lue] color2g[reen] color2h[ue] color2r[ed] color2s[at] color2v[al] colorchart coloredit colorh[cbs] colorhcbs colu[mns] comb[ine] comm[ands] commands con connect connectu[ser] cons[ist] conto[ur] contr[olpoints] convertd[oc] convertdoc converti[mage] convertla[yer] convertli[brary] convertr[emap] convertw[orkspace] coo[rdinate] coordinate coordinates copy copyf[eatures] copyi[nfo] copyl[ayer] copyo copyo[ut] copyout copys[tack] copyw[orkspace] copyworkspace cor corr[idor] correlation cos cosh costa[llocation] costb[acklink] costd[istance] costp[ath] cou[ntvertices]
syn keyword amlArcCmd contained countvertices cpw cr create create2[dindex] createa[ttributes] createca[talog] createco[go] createcogo createf[eature] createind[ex] createinf[otable] createlab[els] createlay[er] createli[brary] createn[etindex] creater[emap] creates[ystables] createta[blespace] createti[n] createw[orkspace] createworkspace cs culdesac curs[or] curv[ature] curve3pt cut[fill] cutoff cw cx[or] da dar[cyflow] dat[aset] dba[seinfo] dbmsc dbmsc[ursor] dbmscursor dbmse[xecute] dbmsi[nfo] dbmss[et] de delete deletea[rrows] deletet[ic] deletew[orkspace] deleteworkspace demg[rid] deml[attice] dend[rogram] densify densifya[rc] describe describea[rchive] describel[attice] describeti[n] describetr[ans] describetrans dev df[adarc] dg dif[f] digi[tizer] digt[est] dim[earc] dir dir[ectory] directory disa[blepanzoom] disconnect disconnectu[ser] disp disp[lay] display dissolve dissolvee[vents] dissolveevents dista[nce] distr[ibutebuild] div dl[garc] do doce[ll] docu[ment] document dogroup drag
syn keyword amlArcCmd contained draw drawenvironment draworder draws[ig] drawselect drawt[raverses] drawz[oneshape] drop2[dindex] dropa[rchive] dropfeaturec[lass] dropfeatures dropfr[omstack] dropgroup droph[istory] dropind[ex] dropinf[otable] dropit[em] dropla[yer] droplib[rary] droplin[e] dropline dropn[etindex] dropt[ablespace] dropw[orktable] ds dt[edgrid] dtrans du[plicate] duplicatearcs dw dxf dxfa[rc] dxfi[nfo] dynamicpan dynpan ebe ec ed edg[esnap] edgematch editboundaryerro edit[coverage] editdistance editf editfeature editp[lot] editplot edits[ig] editsymbol ef el[iminate] em[f] en[d] envrst envsav ep[s] eq equ[alto] er[ase] es et et[akarc] euca[llocation] eucdir[ection] eucdis[tance] eval eventa[rc] evente[nds] eventh[atch] eventi[nfo] eventlinee[ndtext] eventlines eventlinet[ext] eventlis[t] eventma[rkers] eventme[nu] eventmenu eventpoint eventpointt[ext] eventse[ction] eventso[urce] eventt[ransform] eventtransform exi[t] exp exp1[0] exp2 expa[nd] expo[rt] exten[d] external externala[ll]
syn keyword amlArcCmd contained fd[convert] featuregroup fg fie[lddata] file fill filt[er] fix[ownership] flip flipa[ngle] float floatg[rid] floo[r] flowa[ccumulation] flowd[irection] flowl[ength] fm[od] focalf[low] focalmaj[ority] focalmax focalmea[n] focalmed[ian] focalmin focalmino[rity] focalr[ange] focalst[d] focalsu[m] focalv[ariety] fonta[rc] fontco[py] fontcr[eate] fontd[elete] fontdump fontl[oad] fontload forc[e] form[edit] formedit forms fr[equency] ge geary general[ize] generat[e] gerbera[rc] gerberr[ead] gerberread gerberw[rite] gerberwrite get getz[factor] gi gi[rasarc] gnds grai[n] graphb[ar] graphe[xtent] graphi[cs] graphicimage graphicview graphlim[its] graphlin[e] graphp[oint] graphs[hade] gray[shade] gre[aterthan] grid grida[scii] gridcl[ip] gridclip gridco[mposite] griddesk[ew] griddesp[eckle] griddi[rection] gride[dit] gridfli[p] gridflo[at] gridim[age] gridin[sert] gridl[ine] gridma[jority] gridmi[rror] gridmo[ss] gridn[et] gridnodatasymbol gridpa[int] gridpoi[nt] gridpol[y]
syn keyword amlArcCmd contained gridq[uery] gridr[otate] gridshad[es] gridshap[e] gridshi[ft] gridw[arp] group groupb[y] gt gv gv[tolerance] ha[rdcopy] he[lp] help hid[densymbol] hig[hlow] hil[lshade] his[togram] historicalview ho[ldadjust] hpgl hpgl2 hsv2b[lue] hsv2g[reen] hsv2r[ed] ht[ml] hview ia ided[it] identif[y] identit[y] idw if igdsa[rc] igdsi[nfo] ige[sarc] il[lustrator] illustrator image imageg[rid] imagep[lot] imageplot imageview imp[ort] in index indexi[tem] info infodba[se] infodbm[s] infof[ile] init90[00] init9100 init9100b init91[00] init95[00] int intersect intersectarcs intersecte[rr] isn[ull] iso[cluster] it[ems] iview j[oinitem] join keeps keepselect keyan[gle] keyar[ea] keyb[ox] keyf[orms] keyl[ine] keym keym[arker] keymap keyp[osition] keyse[paration] keysh[ade] keyspot kill killm[ap] kr[iging] la labela[ngle] labele[rrors] labelm[arkers] labels labelsc[ale] labelsp[ot] labelt[ext] lal latticecl[ip] latticeco[ntour] latticed[em] latticem[erge] latticemarkers latticeo[perate]
syn keyword amlArcCmd contained latticep[oly] latticerep[lace] latticeres[ample] lattices[pot] latticet[in] latticetext layer layera[nno] layerca[lculate] layerco[lumns] layerde[lete] layerdo[ts] layerdr[aw] layere[xport] layerf[ilter] layerid[entify] layerim[port] layerio[mode] layerli[st] layerloc[k] layerlog[file] layerq[uery] layerse[arch] layersp[ot] layert[ext] lc ldbmst le leadera[rrows] leaders leadersy[mbol] leadert[olerance] len[gth] les[sthan] lf lg lh li lib librari[an] library limitadjust limitautolink line line2pt linea[djustment] linecl[osureangle] linecolor linecolorr[amp] linecopy linecopyl[ayer] linedelete linedeletel[ayer] lineden[sity] linedir[ection] linedis[t] lineedit lineg[rid] lineh[ollow] lineinf[o] lineint[erval] linel[ayer] linelist linem[iterangle] lineo[ffset] linepa[ttern] linepe[n] linepu[t] linesa[ve] linesc[ale] linese[t] linesi[ze] linest[ats] linesy[mbol] linete[mplate]
syn keyword amlArcCmd contained linety[pe] link[s] linkfeatures list listarchives listatt listc[overages] listcoverages listdbmstables listg[rids] listgrids listhistory listi[mages] listimages listinfotables listlayers listlibraries listo[utput] listse[lect] listst[acks] liststacks listtablespaces listti[ns] listtins listtr[averses] listtran listtransactions listw[orkspaces] listworkspaces lit ll ll[sfit] lla lm ln load loada[djacent] loadcolormap locko[nly] locks[ymbol] log log1[0] log2 logf[ile] logg[ing] loo[kup] lot[area] lp[os] lstk lt lts lw madditem majority majorityf[ilter] makere[gion] makero[ute] makese[ction] makest[ack] mal[ign] map mapa[ngle] mape[xtent] mapextent mapi[nfo] mapj[oin] mapl[imits] mappo[sition] mappr[ojection] mapsc[ale] mapsh[ift] mapu[nits] mapw[arp] mapz[oom] marker markera[ngle] markercolor markercolorr[amp] markercopy markercopyl[ayer] markerdelete markerdeletel[aye] markeredit markerf[ont] markeri[nfo] markerl[ayer] markerlist markerm[ask] markero[ffset]
syn keyword amlArcCmd contained markerpa[ttern] markerpe[n] markerpu[t] markersa[ve] markersc[ale] markerse[t] markersi[ze] markersy[mbol] mas[elect] matchc[over] matchn[ode] max mb[egin] mc[opy] md[elete] me mean measure measurer[oute] measureroute med mend menu[cover] menuedit menv[ironment] merge mergeh[istory] mergev[at] mfi[t] mfr[esh] mg[roup] miadsa[rc] miadsr[ead] miadsread min minf[o] mino[rity] mir[ror] mitems mjoin ml[classify] mma[sk] mmo[ve] mn[select] mod mor[der] moran mosa[ic] mossa[rc] mossg[rid] move movee[nd] movei[tem] mp[osition] mr mr[otate] msc[ale] mse[lect] mselect mt[olerance] mu[nselect] multcurve multinv multipleadditem multipleitems multiplejoin multipleselect multprop mw[ho] nai ne near neatline neatlineg[rid] neatlineh[atch] neatlinel[abels] neatlinet[ics] new next ni[bble] nodeangleitem nodec[olor] nodee[rrors] nodem[arkers] nodep[oint] nodes nodesi[ze] nodesn[ap] nodesp[ot] nodet[ext] nor[mal] not ns[elect] oe ogrid ogridt[ool] oldwindow oo[ps] op[endatabase] or
syn keyword amlArcCmd contained osymbol over overflow overflowa[rea] overflowp[osition] overflows[eparati] overl[ayevents] overlapsymbol overlayevents overp[ost] pagee[xtent] pages[ize] pageu[nits] pal[info] pan panview par[ticletrack] patc[h] path[distance] pe[nsize] pi[ck] pli[st] plot plotcopy plotg[erber] ploti[con] plotmany plotpanel plotsc[itex] plotsi[f] pointde[nsity] pointdist pointdista[nce] pointdo[ts] pointg[rid] pointi[nterp] pointm[arkers] pointn[ode] points pointsp[ot] pointst[ats] pointt[ext] polygonb[ordertex] polygond[ots] polygone[vents] polygonevents polygonl[ines] polygons polygonsh[ades] polygonsi[zelimit] polygonsp[ot] polygont[ext] polygr[id] polyr[egion] pop[ularity] por[ouspuff] pos pos[tscript] positions postscript pow prec[ision] prep[are] princ[omp] print product producti[nfo] project projectcom[pare] projectcop[y] projectd[efine] pul[litems] pur[gehistory] put pv q q[uit] quit rand rang[e] rank rb rc re readg[raphic] reads[elect] reb[ox] recl[ass] recoverdb rect[ify]
syn keyword amlArcCmd contained red[o] refreshview regionb[uffer] regioncla[ss] regioncle[an] regiondi[ssolve] regiondo[ts] regione[rrors] regiong[roup] regionj[oin] regionl[ines] regionpoly regionpolyc[ount] regionpolycount regionpolyl[ist] regionpolylist regionq[uery] regions regionse[lect] regionsh[ades] regionsp[ot] regiont[ext] regionxa[rea] regionxarea regionxt[ab] regionxtab register registerd[bms] regr[ession] reindex rej[ects] rela[te] rele[ase] rem remapgrid reme[asure] remo[vescalar] remove removeback removecover removeedit removesnap removetransfer rename renamew[orkspace] renameworkspace reno[de] rep[lace] reposition resa[mple] resel[ect] reset resh[ape] restore restorearce[dit] restorearch[ive] resu[me] rgb2h[ue] rgb2s[at] rgb2v[al] rotate rotatep[lot] routea[rc] routeends routeendt[ext] routeer[rors] routeev[entspot] routeh[atch] routel[ines] routes routesp[ot] routest[ats] routet[ext] rp rs rt rt[l] rtl rv rw sa sai sample samples[ig] sav[e] savecolormap sc scal[ar] scat[tergram]
syn keyword amlArcCmd contained scenefog sceneformat scenehaze sceneoversample sceneroll scenesave scenesize scenesky scitexl[ine] scitexpoi[nt] scitexpol[y] scitexr[ead] scitexread scitexw[rite] scitexwrite sco screenr[estore] screens[ave] sd sds sdtse[xport] sdtsim[port] sdtsin[fo] sdtsl[ist] se sea[rchtolerance] sectiona[rc] sectionends sectionendt[ext] sectionh[atch] sectionl[ines] sections sectionsn[ap] sectionsp[ot] sectiont[ext] sel select selectb[ox] selectc[ircle] selectg[et] selectm[ask] selectmode selectpoi[nt] selectpol[ygon] selectpu[t] selectt[ype] selectw[ithin] semivariogram sep[arator] separator ser[verstatus] setan[gle] setar[row] setce[ll] setcoa[lesce] setcon[nectinfo] setd[bmscheckin] setdrawsymbol sete[ditmode] setincrement setm[ask] setn[ull] setools setreference setsymbol setturn setw[indow] sext sf sfmt sfo sha shade shadea[ngle] shadeb[ackcolor] shadecolor shadecolorr[amp] shadecopy shadecopyl[ayer] shadedelete shadedeletel[ayer] shadeedit shadegrid shadei[nfo] shadela[yer]
syn keyword amlArcCmd contained shadeli[nepattern] shadelist shadeo[ffset] shadepa[ttern] shadepe[n] shadepu[t] shadesa[ve] shadesc[ale] shadesep[aration] shadeset shadesi[ze] shadesy[mbol] shadet[ype] shapea[rc] shapef[ile] shapeg[rid] shi[ft] show showconstants showe[ditmode] shr[ink] si sin sinfo sing[leuser] sinh sink sit[e] sl slf[arc] sli[ce] slo[pe] sm smartanno snap snapc[over] snapcover snapcoverage snapenvironment snapfeatures snapitems snapo[rder] snappi[ng] snappo[ur] so[rt] sobs sos spi[der] spiraltrans spline splinem[ethod] split spot spoto[ffset] spots[ize] sproj sqr sqrt sra sre srl ss ssc ssh ssi ssky ssz sta stackh[istogram] stackprofile stacksc[attergram] stackshade stackst[ats] stati[stics] statu[s] statuscogo std stra[ighten] streamline streamlink streamo[rder] stri[pmap] subm[it] subs[elect] sum surface surfaceabbrev surfacecontours surfacedefaults surfacedrape surfaceextent surfaceinfo surfacel[ength] surfacelimits surfacemarker surfacemenu surfaceobserver surfaceprofile
syn keyword amlArcCmd contained surfaceprojectio surfacerange surfaceresolutio surfacesave surfacescene surfaceshade surfacesighting surfacetarget surfacevalue surfaceviewfield surfaceviewshed surfacevisibility surfacexsection surfacezoom surfacezscale sv svfd svs sxs symboldump symboli[tem] symbolsa[ve] symbolsc[ale] symbolse[t] symbolset sz tab[les] tal[ly] tan tanh tc te tes[t] text textal[ignment] textan[gle] textcolor textcolorr[amp] textcop[y] textde[lete] textdi[rection] textedit textfil[e] textfit textfo[nt] textin[fo] textit[em] textj[ustificatio] textlist textm[ask] texto[ffset] textpe[n] textpr[ecision] textpu[t] textq[uality] textsa[ve] textsc[ale] textse[t] textset textsi[ze] textsl[ant] textspa[cing] textspl[ine] textst[yle] textsy[mbol] tf th thie[ssen] thin ti tics tict[ext] tigera[rc] tigert[ool] tigertool til[es] timped tin tina[rc] tinc[ontour] tinerrors tinhull tinl[attice] tinlines tinmarkers tins[pot] tinshades tintext tinv[rml] tl tm tol[erance] top[ogrid] topogridtool
syn keyword amlArcCmd contained transa[ction] transfe[r] transfercoverage transferfeature transferitems transfersymbol transfo[rm] travrst travsav tre[nd] ts tsy tt tur[ntable] turnimpedance tut[orial] una[ry] unde[lete] undo ungenerate ungeneratet[in] unio[n] unit[s] unr[egisterdbms] unse[lect] unsp[lit] update updatei[nfoschema] updatel[abels] upo[s] us[age] v va[riety] vcgl vcgl2 veri[fy] vers[ion] vertex viewrst viewsav vip visd[ecode] visdecode vise[ncode] visencode visi[bility] vo[lume] vpfe[xport] vpfi[mport] vpfl[ist] vpft[ile] w war[p] wat[ershed] weedd[raw] weedo[perator] weedt[olerance] weedtolerance whe[re] whi[le] who wi[ndows] wm[f] wo[rkspace] workspace writec[andidates] writeg[raphic] writes[elect] wt x[or] ze[ta] zeta zi zo zonala[rea] zonalc[entroid] zonalf[ill] zonalg[eometry] zonalmaj[ority] zonalmax zonalmea[n] zonalmed[ian] zonalmin zonalmino[rity] zonalp[erimeter] zonalr[ange] zonalsta[ts] zonalstd zonalsu[m] zonalt[hickness] zonalv[ariety] zoomview zv
" FORMEDIT reserved words, defined as keywords.
syn keyword amlFormedCmd contained button choice display help input slider text
" TABLES reserved words, defined as keywords.
syn keyword amlTabCmd contained add additem alter asciihelp aselect at calc calculate change commands commit copy define directory dropindex dropitem erase external get help indexitem items kill list move nselect purge quit redefine rename reselect rollback save select show sort statistics unload update usagecontained
" INFO reserved words, defined as keywords.
syn keyword amlInfoCmd contained accept add adir alter dialog alter alt directory aret arithmetic expressions aselect automatic return calculate cchr change options change comi cominput commands list como comoutput compile concatenate controlling defaults copy cursor data delete data entry data manipulate data retrieval data update date format datafile create datafile management decode define delimiter dfmt directory management directory display do doend documentation done end environment erase execute exiting expand export external fc files first format forms control get goto help import input form ipf internal item types items label lchar list logical expressions log merge modify options modify move next nselect output password prif print programming program protect purge query quit recase redefine relate relate release notes remark rename report options reporting report reselect reserved words restrictions run save security select set sleep sort special form spool stop items system variables take terminal types terminal time topics list type update upf
" VTRACE reserved words, defined as keywords.
syn keyword amlVtrCmd contained add al arcscan arrowlength arrowwidth as aw backtrack branch bt cj clearjunction commands cs dash endofline endofsession eol eos fan fg foreground gap generalizetolerance gtol help hole js junctionsensitivity linesymbol linevariation linewidth ls lv lw markersymbol mode ms raster regionofinterest reset restore retrace roi save searchradius skip sr sta status stc std str straightenangle straightencorner straightendistance straightenrange vt vtrace
" The AML reserved words, defined as keywords.
syn keyword amlFunction contained abs access acos after angrad asin atan before calc close copy cos cover coverage cvtdistance date delete dignum dir directory entryname exist[s] exp extract file filelist format formatdate full getchar getchoice getcover getdatabase getdeflayers getfile getgrid getimage getitem getlayercols getlibrary getstack getsymbol gettin getunique iacclose iacconnect iacdisconnect iacopen iacrequest index indexed info invangle invdistance iteminfo joinfile keyword length listfile listitem listunique locase log max menu min mod noecho null okangle okdistance open pathname prefix query quote quoteexists r radang random read rename response round scratchname search show sin sort sqrt subst substr suffix tan task token translate trim truncate type unquote upcase username value variable verify write
syn keyword amlDir contained abbreviations above all aml amlpath append arc args atool brief by call canvas cc center cl codepage commands conv_watch_to_aml coordinates cr create current cursor cwta dalines data date_format delete delvar describe dfmt digitizer display do doend dv echo else enable encode encrypt end error expansion fail file flushpoints force form format frame fullscreen function getlastpoint getpoint goto iacreturn if ignore info inform key keypad label lc left lf lg list listchar listfiles listglobal listheader listlocal listprogram listvar ll lp lr lv map matrix menu menupath menutype mess message[s] modal mouse nopaging off on others page pause pinaction popup position pt pulldown push pushpoint r repeat return right routine run runwatch rw screen seconds select self setchar severity show sidebar single size staggered station stop stripe sys system tablet tb terminal test then thread to top translate tty ty type uc ul until ur usage w warning watch when while window workspace
syn keyword amlDir2 contained delvar dv s set setvar sv
syn keyword amlOutput contained inform warning error pause stop tty ty type
" AML Directives:
syn match amlDirSym "&"
syn match amlDirective "&[a-zA-Z]*" contains=amlDir,amlDir2,amlDirSym
" AML Functions
syn region amlFunc start="\[ *[a-zA-Z]*" end="\]" contains=amlFunction,amlVar
syn match amlFunc2 "\[.*\[.*\].*\]" contains=amlFunction,amlVar
" Numbers:
"syn match amlNumber "-\=\<[0-9]*\.\=[0-9_]\>"
" Quoted Strings:
syn region amlQuote start=+"+ skip=+\\"+ end=+"+ contains=amlVar
syn region amlQuote start=+'+ skip=+\\'+ end=+'+
" ARC Application Commands only selected at the beginning of the line,
" or after a one line &if &then statement
syn match amlAppCmd "^ *[a-zA-Z]*" contains=amlArcCmd,amlInfoCmd,amlTabCmd,amlVtrCmd,amlFormedCmd
syn region amlAppCmd start="&then" end="$" contains=amlArcCmd,amlFormedCmd,amlInfoCmd,amlTabCmd,amlVtrCmd,amlFunction,amlDirective,amlVar2,amlSkip,amlVar,amlComment
" Variables
syn region amlVar start="%" end="%"
syn region amlVar start="%" end="%" contained
syn match amlVar2 "&s [a-zA-Z_.0-9]*" contains=amlDir2,amlDirSym
syn match amlVar2 "&sv [a-zA-Z_.0-9]*" contains=amlDir2,amlDirSym
syn match amlVar2 "&set [a-zA-Z_.0-9]*" contains=amlDir2,amlDirSym
syn match amlVar2 "&setvar [a-zA-Z_.0-9]*" contains=amlDir2,amlDirSym
syn match amlVar2 "&dv [a-zA-Z_.0-9]*" contains=amlDir2,amlDirSym
syn match amlVar2 "&delvar [a-zA-Z_.0-9]*" contains=amlDir2,amlDirSym
" Formedit 2 word commands
syn match amlFormed "^ *check box"
syn match amlFormed "^ *data list"
syn match amlFormed "^ *symbol list"
" Tables 2 word commands
syn match amlTab "^ *q stop"
syn match amlTab "^ *quit stop"
" Comments:
syn match amlComment "/\*.*"
" Regions for skipping over (not highlighting) program output strings:
syn region amlSkip matchgroup=amlOutput start="&call" end="$" contains=amlVar
syn region amlSkip matchgroup=amlOutput start="&routine" end="$" contains=amlVar
syn region amlSkip matchgroup=amlOutput start="&inform" end="$" contains=amlVar
syn region amlSkip matchgroup=amlOutput start="&return &inform" end="$" contains=amlVar
syn region amlSkip matchgroup=amlOutput start="&return &warning" end="$" contains=amlVar
syn region amlSkip matchgroup=amlOutput start="&return &error" end="$" contains=amlVar
syn region amlSkip matchgroup=amlOutput start="&pause" end="$" contains=amlVar
syn region amlSkip matchgroup=amlOutput start="&stop" end="$" contains=amlVar
syn region amlSkip matchgroup=amlOutput start="&tty" end="$" contains=amlVar
syn region amlSkip matchgroup=amlOutput start="&ty" end="$" contains=amlVar
syn region amlSkip matchgroup=amlOutput start="&typ" end="$" contains=amlVar
syn region amlSkip matchgroup=amlOutput start="&type" end="$" contains=amlVar
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link amlComment Comment
hi def link amlNumber Number
hi def link amlQuote String
hi def link amlVar Identifier
hi def link amlVar2 Identifier
hi def link amlFunction PreProc
hi def link amlDir Statement
hi def link amlDir2 Statement
hi def link amlDirSym Statement
hi def link amlOutput Statement
hi def link amlArcCmd ModeMsg
hi def link amlFormedCmd amlArcCmd
hi def link amlTabCmd amlArcCmd
hi def link amlInfoCmd amlArcCmd
hi def link amlVtrCmd amlArcCmd
hi def link amlFormed amlArcCmd
hi def link amlTab amlArcCmd
let b:current_syntax = "aml"
endif

144
syntax/ampl.vim Normal file
View File

@@ -0,0 +1,144 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Language: ampl (A Mathematical Programming Language)
" Maintainer: Krief David <david.krief@etu.enseeiht.fr> or <david_krief@hotmail.com>
" Last Change: 2003 May 11
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
"--
syn match amplEntityKeyword "\(subject to\)\|\(subj to\)\|\(s\.t\.\)"
syn keyword amplEntityKeyword minimize maximize objective
syn keyword amplEntityKeyword coeff coef cover obj default
syn keyword amplEntityKeyword from to to_come net_in net_out
syn keyword amplEntityKeyword dimen dimension
"--
syn keyword amplType integer binary set param var
syn keyword amplType node ordered circular reversed symbolic
syn keyword amplType arc
"--
syn keyword amplStatement check close \display drop include
syn keyword amplStatement print printf quit reset restore
syn keyword amplStatement solve update write shell model
syn keyword amplStatement data option let solution fix
syn keyword amplStatement unfix end function pipe format
"--
syn keyword amplConditional if then else and or
syn keyword amplConditional exists forall in not within
"--
syn keyword amplRepeat while repeat for
"--
syn keyword amplOperators union diff difference symdiff sum
syn keyword amplOperators inter intersect intersection cross setof
syn keyword amplOperators by less mod div product
"syn keyword amplOperators min max
"conflict between functions max, min and operators max, min
syn match amplBasicOperators "||\|<=\|==\|\^\|<\|=\|!\|-\|\.\.\|:="
syn match amplBasicOperators "&&\|>=\|!=\|\*\|>\|:\|/\|+\|\*\*"
"--
syn match amplComment "\#.*"
syn region amplComment start=+\/\*+ end=+\*\/+
syn region amplStrings start=+\'+ skip=+\\'+ end=+\'+
syn region amplStrings start=+\"+ skip=+\\"+ end=+\"+
syn match amplNumerics "[+-]\=\<\d\+\(\.\d\+\)\=\([dDeE][-+]\=\d\+\)\=\>"
syn match amplNumerics "[+-]\=Infinity"
"--
syn keyword amplSetFunction card next nextw prev prevw
syn keyword amplSetFunction first last member ord ord0
syn keyword amplBuiltInFunction abs acos acosh alias asin
syn keyword amplBuiltInFunction asinh atan atan2 atanh ceil
syn keyword amplBuiltInFunction cos exp floor log log10
syn keyword amplBuiltInFunction max min precision round sin
syn keyword amplBuiltInFunction sinh sqrt tan tanh trunc
syn keyword amplRandomGenerator Beta Cauchy Exponential Gamma Irand224
syn keyword amplRandomGenerator Normal Poisson Uniform Uniform01
"-- to highlight the 'dot-suffixes'
syn match amplDotSuffix "\h\w*\.\(lb\|ub\)"hs=e-2
syn match amplDotSuffix "\h\w*\.\(lb0\|lb1\|lb2\|lrc\|ub0\)"hs=e-3
syn match amplDotSuffix "\h\w*\.\(ub1\|ub2\|urc\|val\|lbs\|ubs\)"hs=e-3
syn match amplDotSuffix "\h\w*\.\(init\|body\|dinit\|dual\)"hs=e-4
syn match amplDotSuffix "\h\w*\.\(init0\|ldual\|slack\|udual\)"hs=e-5
syn match amplDotSuffix "\h\w*\.\(lslack\|uslack\|dinit0\)"hs=e-6
"--
syn match amplPiecewise "<<\|>>"
"-- Todo.
syn keyword amplTodo contained TODO FIXME XXX
" The default methods for highlighting. Can be overridden later.
hi def link amplEntityKeyword Keyword
hi def link amplType Type
hi def link amplStatement Statement
hi def link amplOperators Operator
hi def link amplBasicOperators Operator
hi def link amplConditional Conditional
hi def link amplRepeat Repeat
hi def link amplStrings String
hi def link amplNumerics Number
hi def link amplSetFunction Function
hi def link amplBuiltInFunction Function
hi def link amplRandomGenerator Function
hi def link amplComment Comment
hi def link amplDotSuffix Special
hi def link amplPiecewise Special
let b:current_syntax = "ampl"
" vim: ts=8
endif

101
syntax/ant.vim Normal file
View File

@@ -0,0 +1,101 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: ANT build file (xml)
" Maintainer: Johannes Zellner <johannes@zellner.org>
" Last Change: Tue Apr 27 13:05:59 CEST 2004
" Filenames: build.xml
" $Id: ant.vim,v 1.1 2004/06/13 18:13:18 vimboss Exp $
" Quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:ant_cpo_save = &cpo
set cpo&vim
runtime! syntax/xml.vim
syn case ignore
if !exists('*AntSyntaxScript')
fun AntSyntaxScript(tagname, synfilename)
unlet b:current_syntax
let s:include = expand("<sfile>:p:h").'/'.a:synfilename
if filereadable(s:include)
exe 'syn include @ant'.a:tagname.' '.s:include
else
exe 'syn include @ant'.a:tagname." $VIMRUNTIME/syntax/".a:synfilename
endif
exe 'syn region ant'.a:tagname
\." start=#<script[^>]\\{-}language\\s*=\\s*['\"]".a:tagname."['\"]\\(>\\|[^>]*[^/>]>\\)#"
\.' end=#</script>#'
\.' fold'
\.' contains=@ant'.a:tagname.',xmlCdataStart,xmlCdataEnd,xmlTag,xmlEndTag'
\.' keepend'
exe 'syn cluster xmlRegionHook add=ant'.a:tagname
endfun
endif
" TODO: add more script languages here ?
call AntSyntaxScript('javascript', 'javascript.vim')
call AntSyntaxScript('jpython', 'python.vim')
syn cluster xmlTagHook add=antElement
syn keyword antElement display WsdlToDotnet addfiles and ant antcall antstructure apply archives arg argument
syn keyword antElement display assertions attrib attribute available basename bcc blgenclient bootclasspath
syn keyword antElement display borland bottom buildnumber buildpath buildpathelement bunzip2 bzip2 cab
syn keyword antElement display catalogpath cc cccheckin cccheckout cclock ccmcheckin ccmcheckintask ccmcheckout
syn keyword antElement display ccmcreatetask ccmkattr ccmkbl ccmkdir ccmkelem ccmklabel ccmklbtype
syn keyword antElement display ccmreconfigure ccrmtype ccuncheckout ccunlock ccupdate checksum chgrp chmod
syn keyword antElement display chown classconstants classes classfileset classpath commandline comment
syn keyword antElement display compilerarg compilerclasspath concat concatfilter condition copy copydir
syn keyword antElement display copyfile coveragepath csc custom cvs cvschangelog cvspass cvstagdiff cvsversion
syn keyword antElement display daemons date defaultexcludes define delete deletecharacters deltree depend
syn keyword antElement display depends dependset depth description different dirname dirset disable dname
syn keyword antElement display doclet doctitle dtd ear echo echoproperties ejbjar element enable entity entry
syn keyword antElement display env equals escapeunicode exclude excludepackage excludesfile exec execon
syn keyword antElement display existing expandproperties extdirs extension extensionSet extensionset factory
syn keyword antElement display fail filelist filename filepath fileset filesmatch filetokenizer filter
syn keyword antElement display filterchain filterreader filters filterset filtersfile fixcrlf footer format
syn keyword antElement display from ftp generic genkey get gjdoc grant group gunzip gzip header headfilter http
syn keyword antElement display ignoreblank ilasm ildasm import importtypelib include includesfile input iplanet
syn keyword antElement display iplanet-ejbc isfalse isreference isset istrue jar jarlib-available
syn keyword antElement display jarlib-manifest jarlib-resolve java javac javacc javadoc javadoc2 jboss jdepend
syn keyword antElement display jjdoc jjtree jlink jonas jpcoverage jpcovmerge jpcovreport jsharpc jspc
syn keyword antElement display junitreport jvmarg lib libfileset linetokenizer link loadfile loadproperties
syn keyword antElement display location macrodef mail majority manifest map mapper marker mergefiles message
syn keyword antElement display metainf method mimemail mkdir mmetrics modified move mparse none not options or
syn keyword antElement display os outputproperty package packageset parallel param patch path pathconvert
syn keyword antElement display pathelement patternset permissions prefixlines present presetdef project
syn keyword antElement display property propertyfile propertyref propertyset pvcs pvcsproject record reference
syn keyword antElement display regexp rename renameext replace replacefilter replaceregex replaceregexp
syn keyword antElement display replacestring replacetoken replacetokens replacevalue replyto report resource
syn keyword antElement display revoke rmic root rootfileset rpm scp section selector sequential serverdeploy
syn keyword antElement display setproxy signjar size sleep socket soscheckin soscheckout sosget soslabel source
syn keyword antElement display sourcepath sql src srcfile srcfilelist srcfiles srcfileset sshexec stcheckin
syn keyword antElement display stcheckout stlabel stlist stringtokenizer stripjavacomments striplinebreaks
syn keyword antElement display striplinecomments style subant substitution support symlink sync sysproperty
syn keyword antElement display syspropertyset tabstospaces tag taglet tailfilter tar tarfileset target
syn keyword antElement display targetfile targetfilelist targetfileset taskdef tempfile test testlet text title
syn keyword antElement display to token tokenfilter touch transaction translate triggers trim tstamp type
syn keyword antElement display typedef unjar untar unwar unzip uptodate url user vbc vssadd vsscheckin
syn keyword antElement display vsscheckout vsscp vsscreate vssget vsshistory vsslabel waitfor war wasclasspath
syn keyword antElement display webapp webinf weblogic weblogictoplink websphere whichresource wlclasspath
syn keyword antElement display wljspc wsdltodotnet xmlcatalog xmlproperty xmlvalidate xslt zip zipfileset
syn keyword antElement display zipgroupfileset
hi def link antElement Statement
let b:current_syntax = "ant"
let &cpo = s:ant_cpo_save
unlet s:ant_cpo_save
" vim: ts=8
endif

58
syntax/antlr.vim Normal file
View File

@@ -0,0 +1,58 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Antlr: ANTLR, Another Tool For Language Recognition <www.antlr.org>
" Maintainer: Mathieu Clabaut <mathieu.clabaut@free.fr>
" LastChange: 02 May 2001
" Original: Comes from JavaCC.vim
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" This syntac file is a first attempt. It is far from perfect...
" Uses java.vim, and adds a few special things for JavaCC Parser files.
" Those files usually have the extension *.jj
" source the java.vim file
runtime! syntax/java.vim
unlet b:current_syntax
"remove catching errors caused by wrong parenthesis (does not work in antlr
"files) (first define them in case they have not been defined in java)
syn match javaParen "--"
syn match javaParenError "--"
syn match javaInParen "--"
syn match javaError2 "--"
syn clear javaParen
syn clear javaParenError
syn clear javaInParen
syn clear javaError2
" remove function definitions (they look different) (first define in
" in case it was not defined in java.vim)
"syn match javaFuncDef "--"
"syn clear javaFuncDef
"syn match javaFuncDef "[a-zA-Z][a-zA-Z0-9_. \[\]]*([^-+*/()]*)[ \t]*:" contains=javaType
" syn region javaFuncDef start=+t[a-zA-Z][a-zA-Z0-9_. \[\]]*([^-+*/()]*,[ ]*+ end=+)[ \t]*:+
syn keyword antlrPackages options language buildAST
syn match antlrPackages "PARSER_END([^)]*)"
syn match antlrPackages "PARSER_BEGIN([^)]*)"
syn match antlrSpecToken "<EOF>"
" the dot is necessary as otherwise it will be matched as a keyword.
syn match antlrSpecToken ".LOOKAHEAD("ms=s+1,me=e-1
syn match antlrSep "[|:]\|\.\."
syn keyword antlrActionToken TOKEN SKIP MORE SPECIAL_TOKEN
syn keyword antlrError DEBUG IGNORE_IN_BNF
hi def link antlrSep Statement
hi def link antlrPackages Statement
let b:current_syntax = "antlr"
" vim: ts=8
endif

205
syntax/apache.vim Normal file
View File

@@ -0,0 +1,205 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Apache configuration (httpd.conf, srm.conf, access.conf, .htaccess)
" Maintainer: David Necas (Yeti) <yeti@physics.muni.cz>
" License: This file can be redistribued and/or modified under the same terms
" as Vim itself.
" Last Change: 2014-03-04
" Notes: Last synced with apache-2.2.3, version 1.x is no longer supported
" TODO: see particular FIXME's scattered through the file
" make it really linewise?
" + add `display' where appropriate
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case ignore
" Base constructs
syn match apacheComment "^\s*#.*$" contains=apacheFixme
syn match apacheUserID "#-\?\d\+\>"
syn case match
syn keyword apacheFixme FIXME TODO XXX NOT
syn case ignore
syn match apacheAnything "\s[^>]*" contained
syn match apacheError "\w\+" contained
syn region apacheString start=+"+ end=+"+ skip=+\\\\\|\\\"+ oneline
" Following is to prevent escaped quotes from being parsed as strings.
syn match apacheSkipQuote +\\"+
" Core and mpm
syn keyword apacheDeclaration AccessFileName AddDefaultCharset AllowOverride AuthName AuthType ContentDigest DefaultType DocumentRoot ErrorDocument ErrorLog HostNameLookups IdentityCheck Include KeepAlive KeepAliveTimeout LimitRequestBody LimitRequestFields LimitRequestFieldsize LimitRequestLine LogLevel MaxKeepAliveRequests NameVirtualHost Options Require RLimitCPU RLimitMEM RLimitNPROC Satisfy ScriptInterpreterSource ServerAdmin ServerAlias ServerName ServerPath ServerRoot ServerSignature ServerTokens TimeOut UseCanonicalName
syn keyword apacheDeclaration AcceptPathInfo CGIMapExtension EnableMMAP FileETag ForceType LimitXMLRequestBody SetHandler SetInputFilter SetOutputFilter
syn keyword apacheDeclaration AcceptFilter AllowEncodedSlashes EnableSendfile LimitInternalRecursion TraceEnable
syn keyword apacheOption INode MTime Size
syn keyword apacheOption Any All On Off Double EMail DNS Min Minimal OS Prod ProductOnly Full
syn keyword apacheOption emerg alert crit error warn notice info debug
syn keyword apacheOption registry script inetd standalone
syn match apacheOptionOption "[+-]\?\<\(ExecCGI\|FollowSymLinks\|Includes\|IncludesNoExec\|Indexes\|MultiViews\|SymLinksIfOwnerMatch\)\>"
syn keyword apacheOption user group
syn match apacheOption "\<valid-user\>"
syn case match
syn keyword apacheMethodOption GET POST PUT DELETE CONNECT OPTIONS TRACE PATCH PROPFIND PROPPATCH MKCOL COPY MOVE LOCK UNLOCK contained
syn case ignore
syn match apacheSection "<\/\=\(Directory\|DirectoryMatch\|Files\|FilesMatch\|IfModule\|IfDefine\|Location\|LocationMatch\|VirtualHost\)[^>]*>" contains=apacheAnything
syn match apacheLimitSection "<\/\=\(Limit\|LimitExcept\)[^>]*>" contains=apacheLimitSectionKeyword,apacheMethodOption,apacheError
syn keyword apacheLimitSectionKeyword Limit LimitExcept contained
syn match apacheAuthType "AuthType\s.*$" contains=apacheAuthTypeValue
syn keyword apacheAuthTypeValue Basic Digest
syn match apacheAllowOverride "AllowOverride\s.*$" contains=apacheAllowOverrideValue,apacheComment
syn keyword apacheAllowOverrideValue AuthConfig FileInfo Indexes Limit Options contained
syn keyword apacheDeclaration CoreDumpDirectory EnableExceptionHook GracefulShutdownTimeout Group Listen ListenBacklog LockFile MaxClients MaxMemFree MaxRequestsPerChild MaxSpareThreads MaxSpareThreadsPerChild MinSpareThreads NumServers PidFile ScoreBoardFile SendBufferSize ServerLimit StartServers StartThreads ThreadLimit ThreadsPerChild User
syn keyword apacheDeclaration MaxThreads ThreadStackSize
syn keyword apacheDeclaration Win32DisableAcceptEx
syn keyword apacheDeclaration AssignUserId ChildPerUserId
syn keyword apacheDeclaration AcceptMutex MaxSpareServers MinSpareServers
syn keyword apacheOption flock fcntl sysvsem pthread
" Modules
syn keyword apacheDeclaration Action Script
syn keyword apacheDeclaration Alias AliasMatch Redirect RedirectMatch RedirectTemp RedirectPermanent ScriptAlias ScriptAliasMatch
syn keyword apacheOption permanent temp seeother gone
syn keyword apacheDeclaration AuthAuthoritative AuthGroupFile AuthUserFile
syn keyword apacheDeclaration AuthBasicAuthoritative AuthBasicProvider
syn keyword apacheDeclaration AuthDigestAlgorithm AuthDigestDomain AuthDigestNcCheck AuthDigestNonceFormat AuthDigestNonceLifetime AuthDigestProvider AuthDigestQop AuthDigestShmemSize
syn keyword apacheOption none auth auth-int MD5 MD5-sess
syn match apacheSection "<\/\=\(<AuthnProviderAlias\)[^>]*>" contains=apacheAnything
syn keyword apacheDeclaration Anonymous Anonymous_Authoritative Anonymous_LogEmail Anonymous_MustGiveEmail Anonymous_NoUserID Anonymous_VerifyEmail
syn keyword apacheDeclaration AuthDBDUserPWQuery AuthDBDUserRealmQuery
syn keyword apacheDeclaration AuthDBMGroupFile AuthDBMAuthoritative
syn keyword apacheDeclaration AuthDBM TypeAuthDBMUserFile
syn keyword apacheOption default SDBM GDBM NDBM DB
syn keyword apacheDeclaration AuthDefaultAuthoritative
syn keyword apacheDeclaration AuthUserFile
syn keyword apacheDeclaration AuthLDAPBindON AuthLDAPEnabled AuthLDAPFrontPageHack AuthLDAPStartTLS
syn keyword apacheDeclaration AuthLDAPBindDN AuthLDAPBindPassword AuthLDAPCharsetConfig AuthLDAPCompareDNOnServer AuthLDAPDereferenceAliases AuthLDAPGroupAttribute AuthLDAPGroupAttributeIsDN AuthLDAPRemoteUserIsDN AuthLDAPUrl AuthzLDAPAuthoritative
syn keyword apacheOption always never searching finding
syn keyword apacheOption ldap-user ldap-group ldap-dn ldap-attribute ldap-filter
syn keyword apacheDeclaration AuthDBMGroupFile AuthzDBMAuthoritative AuthzDBMType
syn keyword apacheDeclaration AuthzDefaultAuthoritative
syn keyword apacheDeclaration AuthGroupFile AuthzGroupFileAuthoritative
syn match apacheAllowDeny "Allow\s\+from.*$" contains=apacheAllowDenyValue,apacheComment
syn match apacheAllowDeny "Deny\s\+from.*$" contains=apacheAllowDenyValue,apacheComment
syn keyword apacheAllowDenyValue All None contained
syn match apacheOrder "^\s*Order\s.*$" contains=apacheOrderValue,apacheComment
syn keyword apacheOrderValue Deny Allow contained
syn keyword apacheDeclaration AuthzOwnerAuthoritative
syn keyword apacheDeclaration AuthzUserAuthoritative
syn keyword apacheDeclaration AddAlt AddAltByEncoding AddAltByType AddDescription AddIcon AddIconByEncoding AddIconByType DefaultIcon HeaderName IndexIgnore IndexOptions IndexOrderDefault ReadmeName
syn keyword apacheDeclaration IndexStyleSheet
syn keyword apacheOption DescriptionWidth FancyIndexing FoldersFirst IconHeight IconsAreLinks IconWidth NameWidth ScanHTMLTitles SuppressColumnSorting SuppressDescription SuppressHTMLPreamble SuppressLastModified SuppressSize TrackModified
syn keyword apacheOption Ascending Descending Name Date Size Description
syn keyword apacheOption HTMLTable SuppressIcon SuppressRules VersionSort XHTML
syn keyword apacheOption IgnoreClient IgnoreCase ShowForbidden SuppresRules
syn keyword apacheDeclaration CacheForceCompletion CacheMaxStreamingBuffer
syn keyword apacheDeclaration CacheDefaultExpire CacheDisable CacheEnable CacheIgnoreCacheControl CacheIgnoreHeaders CacheIgnoreNoLastMod CacheLastModifiedFactor CacheMaxExpire CacheStoreNoStore CacheStorePrivate
syn keyword apacheDeclaration MetaFiles MetaDir MetaSuffix
syn keyword apacheDeclaration ScriptLog ScriptLogLength ScriptLogBuffer
syn keyword apacheDeclaration ScriptStock
syn keyword apacheDeclaration CharsetDefault CharsetOptions CharsetSourceEnc
syn keyword apacheOption DebugLevel ImplicitAdd NoImplicitAdd
syn keyword apacheDeclaration Dav DavDepthInfinity DavMinTimeout
syn keyword apacheDeclaration DavLockDB
syn keyword apacheDeclaration DavGenericLockDB
syn keyword apacheDeclaration DBDExptime DBDKeep DBDMax DBDMin DBDParams DBDPersist DBDPrepareSQL DBDriver
syn keyword apacheDeclaration DeflateCompressionLevel DeflateBufferSize DeflateFilterNote DeflateMemLevel DeflateWindowSize
syn keyword apacheDeclaration DirectoryIndex DirectorySlash
syn keyword apacheDeclaration CacheExpiryCheck CacheGcClean CacheGcDaily CacheGcInterval CacheGcMemUsage CacheGcUnused CacheSize CacheTimeMargin
syn keyword apacheDeclaration CacheDirLength CacheDirLevels CacheMaxFileSize CacheMinFileSize CacheRoot
syn keyword apacheDeclaration DumpIOInput DumpIOOutput
syn keyword apacheDeclaration ProtocolEcho
syn keyword apacheDeclaration PassEnv SetEnv UnsetEnv
syn keyword apacheDeclaration Example
syn keyword apacheDeclaration ExpiresActive ExpiresByType ExpiresDefault
syn keyword apacheDeclaration ExtFilterDefine ExtFilterOptions
syn keyword apacheOption PreservesContentLength DebugLevel LogStderr NoLogStderr
syn match apacheOption "\<\(cmd\|mode\|intype\|outtype\|ftype\|disableenv\|enableenv\)\ze="
syn keyword apacheDeclaration CacheFile MMapFile
syn keyword apacheDeclaration FilterChain FilterDeclare FilterProtocol FilterProvider FilterTrace
syn keyword apacheDeclaration Header
syn keyword apacheDeclaration RequestHeader
syn keyword apacheOption set unset append add
syn keyword apacheDeclaration IdentityCheck IdentityCheckTimeout
syn keyword apacheDeclaration ImapMenu ImapDefault ImapBase
syn keyword apacheOption none formatted semiformatted unformatted
syn keyword apacheOption nocontent referer error map
syn keyword apacheDeclaration SSIEndTag SSIErrorMsg SSIStartTag SSITimeFormat SSIUndefinedEcho XBitHack
syn keyword apacheOption on off full
syn keyword apacheDeclaration AddModuleInfo
syn keyword apacheDeclaration ISAPIReadAheadBuffer ISAPILogNotSupported ISAPIAppendLogToErrors ISAPIAppendLogToQuery
syn keyword apacheDeclaration ISAPICacheFile ISAIPFakeAsync
syn keyword apacheDeclaration LDAPCertDBPath
syn keyword apacheDeclaration LDAPCacheEntries LDAPCacheTTL LDAPConnectionTimeout LDAPOpCacheEntries LDAPOpCacheTTL LDAPSharedCacheFile LDAPSharedCacheSize LDAPTrustedClientCert LDAPTrustedGlobalCert LDAPTrustedMode LDAPVerifyServerCert
syn keyword apacheOption CA_DER CA_BASE64 CA_CERT7_DB CA_SECMOD CERT_DER CERT_BASE64 CERT_KEY3_DB CERT_NICKNAME CERT_PFX KEY_DER KEY_BASE64 KEY_PFX
syn keyword apacheDeclaration BufferedLogs CookieLog CustomLog LogFormat TransferLog
syn keyword apacheDeclaration ForensicLog
syn keyword apacheDeclaration MCacheMaxObjectCount MCacheMaxObjectSize MCacheMaxStreamingBuffer MCacheMinObjectSize MCacheRemovalAlgorithm MCacheSize
syn keyword apacheDeclaration AddCharset AddEncoding AddHandler AddLanguage AddType DefaultLanguage RemoveEncoding RemoveHandler RemoveType TypesConfig
syn keyword apacheDeclaration AddInputFilter AddOutputFilter ModMimeUsePathInfo MultiviewsMatch RemoveInputFilter RemoveOutputFilter RemoveCharset
syn keyword apacheOption NegotiatedOnly Filters Handlers
syn keyword apacheDeclaration MimeMagicFile
syn keyword apacheDeclaration MMapFile
syn keyword apacheDeclaration CacheNegotiatedDocs LanguagePriority ForceLanguagePriority
syn keyword apacheDeclaration NWSSLTrustedCerts NWSSLUpgradeable SecureListen
syn keyword apacheDeclaration PerlModule PerlRequire PerlTaintCheck PerlWarn
syn keyword apacheDeclaration PerlSetVar PerlSetEnv PerlPassEnv PerlSetupEnv
syn keyword apacheDeclaration PerlInitHandler PerlPostReadRequestHandler PerlHeaderParserHandler
syn keyword apacheDeclaration PerlTransHandler PerlAccessHandler PerlAuthenHandler PerlAuthzHandler
syn keyword apacheDeclaration PerlTypeHandler PerlFixupHandler PerlHandler PerlLogHandler
syn keyword apacheDeclaration PerlCleanupHandler PerlChildInitHandler PerlChildExitHandler
syn keyword apacheDeclaration PerlRestartHandler PerlDispatchHandler
syn keyword apacheDeclaration PerlFreshRestart PerlSendHeader
syn keyword apacheDeclaration php_value php_flag php_admin_value php_admin_flag
syn match apacheSection "<\/\=\(Proxy\|ProxyMatch\)[^>]*>" contains=apacheAnything
syn keyword apacheDeclaration AllowCONNECT NoProxy ProxyBadHeader ProxyBlock ProxyDomain ProxyErrorOverride ProxyIOBufferSize ProxyMaxForwards ProxyPass ProxyPassMatch ProxyPassReverse ProxyPassReverseCookieDomain ProxyPassReverseCookiePath ProxyPreserveHost ProxyReceiveBufferSize ProxyRemote ProxyRemoteMatch ProxyRequests ProxyTimeout ProxyVia
syn keyword apacheDeclaration RewriteBase RewriteCond RewriteEngine RewriteLock RewriteLog RewriteLogLevel RewriteMap RewriteOptions RewriteRule
syn keyword apacheOption inherit
syn keyword apacheDeclaration BrowserMatch BrowserMatchNoCase SetEnvIf SetEnvIfNoCase
syn keyword apacheDeclaration LoadFile LoadModule
syn keyword apacheDeclaration CheckSpelling CheckCaseOnly
syn keyword apacheDeclaration SSLCACertificateFile SSLCACertificatePath SSLCADNRequestFile SSLCADNRequestPath SSLCARevocationFile SSLCARevocationPath SSLCertificateChainFile SSLCertificateFile SSLCertificateKeyFile SSLCipherSuite SSLCryptoDevice SSLEngine SSLHonorCipherOrder SSLMutex SSLOptions SSLPassPhraseDialog SSLProtocol SSLProxyCACertificateFile SSLProxyCACertificatePath SSLProxyCARevocationFile SSLProxyCARevocationPath SSLProxyCipherSuite SSLProxyEngine SSLProxyMachineCertificateFile SSLProxyMachineCertificatePath SSLProxyProtocol SSLProxyVerify SSLProxyVerifyDepth SSLRandomSeed SSLRequire SSLRequireSSL SSLSessionCache SSLSessionCacheTimeout SSLUserName SSLVerifyClient SSLVerifyDepth
syn match apacheOption "[+-]\?\<\(StdEnvVars\|CompatEnvVars\|ExportCertData\|FakeBasicAuth\|StrictRequire\|OptRenegotiate\)\>"
syn keyword apacheOption builtin sem
syn match apacheOption "\(file\|exec\|egd\|dbm\|shm\):"
syn match apacheOption "[+-]\?\<\(SSLv2\|SSLv3\|TLSv1\|kRSA\|kHDr\|kDHd\|kEDH\|aNULL\|aRSA\|aDSS\|aRH\|eNULL\|DES\|3DES\|RC2\|RC4\|IDEA\|MD5\|SHA1\|SHA\|EXP\|EXPORT40\|EXPORT56\|LOW\|MEDIUM\|HIGH\|RSA\|DH\|EDH\|ADH\|DSS\|NULL\)\>"
syn keyword apacheOption optional optional_no_ca
syn keyword apacheDeclaration ExtendedStatus
syn keyword apacheDeclaration SuexecUserGroup
syn keyword apacheDeclaration UserDir
syn keyword apacheDeclaration CookieDomain CookieExpires CookieName CookieStyle CookieTracking
syn keyword apacheOption Netscape Cookie Cookie2 RFC2109 RFC2965
syn match apacheSection "<\/\=\(<IfVersion\)[^>]*>" contains=apacheAnything
syn keyword apacheDeclaration VirtualDocumentRoot VirtualDocumentRootIP VirtualScriptAlias VirtualScriptAliasIP
" Define the default highlighting
hi def link apacheAllowOverride apacheDeclaration
hi def link apacheAllowOverrideValue apacheOption
hi def link apacheAuthType apacheDeclaration
hi def link apacheAuthTypeValue apacheOption
hi def link apacheOptionOption apacheOption
hi def link apacheDeclaration Function
hi def link apacheAnything apacheOption
hi def link apacheOption Number
hi def link apacheComment Comment
hi def link apacheFixme Todo
hi def link apacheLimitSectionKeyword apacheLimitSection
hi def link apacheLimitSection apacheSection
hi def link apacheSection Label
hi def link apacheMethodOption Type
hi def link apacheAllowDeny Include
hi def link apacheAllowDenyValue Identifier
hi def link apacheOrder Special
hi def link apacheOrderValue String
hi def link apacheString String
hi def link apacheError Error
hi def link apacheUserID Number
let b:current_syntax = "apache"
endif

56
syntax/apachestyle.vim Normal file
View File

@@ -0,0 +1,56 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Apache-Style configuration files (proftpd.conf/apache.conf/..)
" Maintainer: Christian Hammers <ch@westend.com>
" URL: none
" ChangeLog:
" 2001-05-04,ch
" adopted Vim 6.0 syntax style
" 1999-10-28,ch
" initial release
" The following formats are recognised:
" Apache-style .conf
" # Comment
" Option value
" Option value1 value2
" Option = value1 value2 #not apache but also allowed
" <Section Name?>
" Option value
" <SubSection Name?>
" </SubSection>
" </Section>
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case ignore
syn match apComment /^\s*#.*$/
syn match apOption /^\s*[^ \t#<=]*/
"syn match apLastValue /[^ \t<=#]*$/ contains=apComment ugly
" tags
syn region apTag start=/</ end=/>/ contains=apTagOption,apTagError
" the following should originally be " [^<>]+" but this didn't work :(
syn match apTagOption contained / [-\/_\.:*a-zA-Z0-9]\+/ms=s+1
syn match apTagError contained /[^>]</ms=s+1
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link apComment Comment
hi def link apOption Keyword
"hi def link apLastValue Identifier ugly?
hi def link apTag Special
hi def link apTagOption Identifier
hi def link apTagError Error
let b:current_syntax = "apachestyle"
" vim: ts=8
endif

578
syntax/aptconf.vim Normal file
View File

@@ -0,0 +1,578 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: APT config file
" Maintainer: Yann Amar <quidame@poivron.org>
" Last Change: 2015 Dec 22
" quit when a syntax file was already loaded
if !exists("main_syntax")
if exists("b:current_syntax")
finish
endif
let main_syntax = 'aptconf'
endif
let s:cpo_save = &cpo
set cpo&vim
" Errors:
" Catch all that is not overridden by next rules/items:
syn match aptconfError display '[^[:blank:]]'
syn match aptconfError display '^[^[:blank:]][^:{]*'
" Options:
" Define a general regular expression for the options that are not defined
" later as keywords. Following apt.conf(5), we know that options are case
" insensitive, and can contain alphanumeric characters and '/-:._+'; we
" assume that there can not be consecutive colons (::) which is used as
" syntax operator; we also assume that an option name can not start or end
" by a colon.
syn case ignore
syn match aptconfRegexpOpt '[-[:alnum:]/.+_]\+\(:[-[:alnum:]/.+_]\+\)*' contained display
" Keywords:
setlocal iskeyword+=/,-,.,_,+
"setlocal iskeyword+=: is problematic, because of the '::' separator
" Incomplete keywords will be treated differently than completely bad strings:
syn keyword aptconfGroupIncomplete
\ a[cquire] a[dequate] a[ptitude] a[ptlistbugs] d[ebtags] d[ebug]
\ d[ir] d[pkg] d[select] o[rderlist] p[ackagemanager] p[kgcachegen]
\ q[uiet] r[pm] s[ynaptic] u[nattended-upgrade] w[hatmaps]
" Only the following keywords can be used at toplevel (to begin an option):
syn keyword aptconfGroup
\ acquire adequate apt aptitude aptlistbugs debtags debug
\ dir dpkg dselect orderlist packagemanager pkgcachegen
\ quiet rpm synaptic unattended-upgrade whatmaps
" Possible options for each group:
" Acquire: {{{
syn keyword aptconfAcquire contained
\ cdrom Check-Valid-Until CompressionTypes ForceHash ForceIPv4
\ ForceIPv6 ftp gpgv GzipIndexes http https Languages Max-ValidTime
\ Min-ValidTime PDiffs Queue-Mode Retries Source-Symlinks
syn keyword aptconfAcquireCDROM contained
\ AutoDetect CdromOnly Mount UMount
syn keyword aptconfAcquireCompressionTypes contained
\ bz2 lzma gz Order
syn keyword aptconfAcquireFTP contained
\ ForceExtended Passive Proxy ProxyLogin Timeout
syn keyword aptconfAcquireHTTP contained
\ AllowRedirect Dl-Limit Max-Age No-Cache No-Store Pipeline-Depth
\ Proxy ProxyAutoDetect Proxy-Auto-Detect Timeout User-Agent
syn keyword aptconfAcquireHTTPS contained
\ AllowRedirect CaInfo CaPath CrlFile Dl-Limit IssuerCert Max-Age
\ No-Cache No-Store Proxy SslCert SslForceVersion SslKey Timeout
\ Verify-Host Verify-Peer
syn keyword aptconfAcquireMaxValidTime contained
\ Debian Debian-Security
syn keyword aptconfAcquirePDiffs contained
\ FileLimit SizeLimit
syn cluster aptconfAcquire_ contains=aptconfAcquire,
\ aptconfAcquireCDROM,aptconfAcquireCompressionTypes,aptconfAcquireFTP,
\ aptconfAcquireHTTP,aptconfAcquireHTTPS,aptconfAcquireMaxValidTime,
\ aptconfAcquirePDiffs
" }}}
" Adequate: {{{
syn keyword aptconfAdequate contained
\ Enabled
syn cluster aptconfAdequate_ contains=aptconfAdequate
" }}}
" Apt: {{{
syn keyword aptconfApt contained
\ Architecture Architectures Archive Authentication AutoRemove
\ Build-Essential Build-Profiles Cache Cache-Grow Cache-Limit
\ Cache-Start CDROM Changelogs Clean-Installed Compressor
\ Default-Release Force-LoopBreak Get Ignore-Hold Immediate-Configure
\ Install-Recommends Install-Suggests Keep-Fds List-Cleanup
\ Move-Autobit-Sections NeverAutoRemove Never-MarkAuto-Sections
\ Periodic Status-Fd Update VersionedKernelPackages
syn keyword aptconfAptAuthentication contained
\ TrustCDROM
syn keyword aptconfAptAutoRemove contained
\ RecommendsImportant SuggestsImportant
syn keyword aptconfAptCache contained
\ AllNames AllVersions Generate GivenOnly Important Installed NamesOnly
\ RecurseDepends ShowFull
syn keyword aptconfAptCDROM contained
\ Fast NoAct NoMount Rename
syn keyword aptconfAptChangelogs contained
\ Server
syn keyword aptconfAptCompressor contained
\ bzip2 gzip lzma xz
syn keyword aptconfAptCompressorAll contained
\ Binary CompressArg Cost Extension Name UncompressArg
syn keyword aptconfAptGet contained
\ AllowUnauthenticated Arch-Only Assume-No Assume-Yes AutomaticRemove
\ Build-Dep-Automatic Compile Diff-Only Download Download-Only Dsc-Only
\ Fix-Broken Fix-Missing Force-Yes HideAutoRemove Host-Architecture
\ List-Cleanup Only-Source Print-URIs Purge ReInstall Remove
\ Show-Upgraded Show-User-Simulation-Note Show-Versions Simulate
\ Tar-Only Trivial-Only Upgrade
syn keyword aptconfAptPeriodic contained
\ AutocleanInterval BackupArchiveInterval BackupLevel
\ Download-Upgradeable-Packages Download-Upgradeable-Packages-Debdelta
\ Enable MaxAge MaxSize MinAge Unattended-Upgrade Update-Package-Lists
\ Verbose
syn keyword aptconfAptUpdate contained
\ List-Refresh Pre-Invoke Post-Invoke Post-Invoke-Success
syn cluster aptconfApt_ contains=aptconfApt,
\ aptconfAptAuthentication,aptconfAptAutoRemove,aptconfAptCache,
\ aptconfAptCDROM,aptconfAptChangelogs,aptconfAptCompressor,
\ aptconfAptCompressorAll,aptconfAptGet,aptconfAptPeriodic,
\ aptconfAptUpdate
" }}}
" Aptitude: {{{
syn keyword aptconfAptitude contained
\ Allow-Null-Upgrade Always-Use-Safe-Resolver Autoclean-After-Update
\ Auto-Install Auto-Fix-Broken Cmdline Debtags-Binary
\ Debtags-Update-Options Delete-Unused Delete-Unused-Pattern
\ Display-Planned-Action Forget-New-On-Install Forget-New-On-Update
\ Get-Root-Command Ignore-Old-Tmp Ignore-Recommends-Important
\ Keep-Recommends Keep-Suggests Keep-Unused-Pattern LockFile Log
\ Logging Parse-Description-Bullets Pkg-Display-Limit ProblemResolver
\ Purge-Unused Recommends-Important Safe-Resolver Screenshot Sections
\ Simulate Spin-Interval Suggests-Important Suppress-Read-Only-Warning
\ Theme Track-Dselect-State UI Warn-Not-Root
syn keyword aptconfAptitudeCmdline contained
\ Always-Prompt Assume-Yes Disable-Columns Download-Only Fix-Broken
\ Ignore-Trust-Violations Package-Display-Format Package-Display-Width
\ Progress Request-Strictness Resolver-Debug Resolver-Dump
\ Resolver-Show-Steps Safe-Upgrade Show-Deps Show-Size-Changes
\ Show-Versions Show-Why Simulate Verbose Version-Display-Format
\ Versions-Group-By Versions-Show-Package-Names Visual-Preview
\ Why-Display-Mode
syn keyword aptconfAptitudeCmdlineProgress contained
\ Percent-On-Right Retain-Completed
syn keyword aptconfAptitudeCmdlineSafeUpgrade contained
\ No-New-Installs
syn keyword aptconfAptitudeLogging contained
\ File Levels
syn keyword aptconfAptitudeProblemResolver contained
\ Allow-Break-Holds BreakHoldScore Break-Hold-Level BrokenScore
\ DefaultResolutionScore Discard-Null-Solution
\ EssentialRemoveScore ExtraScore FullReplacementScore FutureHorizon
\ Hints ImportantScore Infinity InstallScore Keep-All-Level KeepScore
\ NonDefaultScore Non-Default-Level OptionalScore PreserveAutoScore
\ PreserveManualScore RemoveScore Remove-Essential-Level Remove-Level
\ RequiredScore ResolutionScore Safe-Level SolutionCost StandardScore
\ StepLimit StepScore Trace-Directory Trace-File
\ UndoFullReplacementScore UnfixedSoftScore UpgradeScore
syn keyword aptconfAptitudeSafeResolver contained
\ No-New-Installs No-New-Upgrades Show-Resolver-Actions
syn keyword aptconfAptitudeScreenshot contained
\ Cache-Max IncrementalLoadLimit
syn keyword aptconfAptitudeSections contained
\ Descriptions Top-Sections
syn keyword aptconfAptitudeUI contained
\ Advance-On-Action Auto-Show-Reasons Default-Grouping
\ Default-Package-View Default-Preview-Grouping Default-Sorting
\ Description-Visible-By-Default Exit-On-Last-Close Fill-Text
\ Flat-View-As-First-View HelpBar Incremental-Search InfoAreaTabs
\ KeyBindings MenuBar-Autohide Minibuf-Download-Bar Minibuf-Prompts
\ New-package-Commands Package-Display-Format Package-Header-Format
\ Package-Status-Format Pause-After-Download Preview-Limit
\ Prompt-On-Exit Styles ViewTabs
syn keyword aptconfAptitudeUIKeyBindings contained
\ ApplySolution Begin BugReport Cancel Changelog ChangePkgTreeGrouping
\ ChangePkgTreeLimit ChangePkgTreeSorting ClearAuto CollapseAll
\ CollapseTree Commit Confirm Cycle CycleNext CycleOrder CyclePrev
\ DelBOL DelBack DelEOL DelForward Dependencies DescriptionCycle
\ DescriptionDown DescriptionUp DoInstallRun Down DpkgReconfigure
\ DumpResolver EditHier End ExamineSolution ExpandAll ExpandTree
\ FirstSolution ForbidUpgrade ForgetNewPackages Help HistoryNext
\ HistoryPrev Hold Install InstallSingle Keep LastSolution Left
\ LevelDown LevelUp MarkUpgradable MineFlagSquare MineLoadGame
\ MineSaveGame MineSweepSquare MineUncoverSquare MineUncoverSweepSquare
\ NextPage NextSolution No Parent PrevPage PrevSolution Purge
\ PushButton Quit QuitProgram RejectBreakHolds Refresh Remove
\ ReInstall RepeatSearchBack ReSearch ReverseDependencies Right
\ SaveHier Search SearchBack SearchBroken SetAuto ShowHideDescription
\ SolutionActionApprove SolutionActionReject ToggleExpanded
\ ToggleMenuActive Undo Up UpdatePackageList Versions Yes
syn keyword aptconfAptitudeUIStyles contained
\ Bullet ChangeLogNewerVersion Default DepBroken DisabledMenuEntry
\ DownloadHit DownloadProgress EditLine Error Header HighlightedMenuBar
\ HighlightedMenuEntry MediaChange MenuBar MenuBorder MenuEntry
\ MineBomb MineBorder MineFlag MineNumber1 MineNumber2 MineNumber3
\ MineNumber4 MineNumber5 MineNumber6 MineNumber7 MineNumber8
\ MultiplexTab MultiplexTabHighlighted PkgBroken PkgBrokenHighlighted
\ PkgIsInstalled PkgIsInstalledHighlighted PkgNotInstalled
\ PkgNotInstalledHighlighted PkgToDowngrade PkgToDowngradeHighlighted
\ PkgToHold PkgToHoldHighlighted PkgToInstall PkgToInstallHighlighted
\ PkgToRemove PkgToRemoveHighlighted PkgToUpgrade
\ PkgToUpgradeHighlighted Progress SolutionActionApproved
\ SolutionActionRejected Status TreeBackground TrustWarning
syn keyword aptconfAptitudeUIStylesElements contained
\ bg clear fg flip set
syn cluster aptconfAptitude_ contains=aptconfAptitude,
\ aptconfAptitudeCmdline,aptconfAptitudeCmdlineProgress,
\ aptconfAptitudeCmdlineSafeUpgrade,aptconfAptitudeLogging,
\ aptconfAptitudeProblemResolver,aptconfAptitudeSafeResolver,
\ aptconfAptitudeScreenshot,aptconfAptitudeSections,aptconfAptitudeUI,
\ aptconfAptitudeUIKeyBindings,aptconfAptitudeUIStyles,
\ aptconfAptitudeUIStylesElements
" }}}
" AptListbugs: {{{
syn keyword aptconfAptListbugs contained
\ IgnoreRegexp Severities
syn cluster aptconfAptListbugs_ contains=aptconfAptListbugs
" }}}
" DebTags: {{{
syn keyword aptconfDebTags contained
\ Vocabulary
syn cluster aptconfDebTags_ contains=aptconfDebTags
" }}}
" Debug: {{{
syn keyword aptconfDebug contained
\ Acquire aptcdrom BuildDeps Hashes IdentCdrom Nolocking
\ pkgAcquire pkgAutoRemove pkgCacheGen pkgDepCache pkgDPkgPM
\ pkgDPkgProgressReporting pkgInitialize pkgOrderList
\ pkgPackageManager pkgPolicy pkgProblemResolver RunScripts
\ sourceList
syn keyword aptconfDebugAcquire contained
\ cdrom Ftp gpgv Http Https netrc
syn keyword aptconfDebugPkgAcquire contained
\ Auth Diffs RRed Worker
syn keyword aptconfDebugPkgDepCache contained
\ AutoInstall Marker
syn keyword aptconfDebugPkgProblemResolver contained
\ ShowScores
syn cluster aptconfDebug_ contains=aptconfDebug,
\ aptconfDebugAcquire,aptconfDebugPkgAcquire,aptconfDebugPkgDepCache,
\ aptconfDebugPkgProblemResolver
" }}}
" Dir: {{{
syn keyword aptconfDir contained
\ Aptitude Bin Cache Etc Ignore-Files-Silently Log Media Parts RootDir
\ State
syn keyword aptconfDirAptitude contained
\ state
syn keyword aptconfDirBin contained
\ apt-get apt-cache dpkg dpkg-buildpackage dpkg-source gpg gzip Methods
\ solvers
syn keyword aptconfDirCache contained
\ Archives Backup pkgcache srcpkgcache
syn keyword aptconfDirEtc contained
\ Main Netrc Parts Preferences PreferencesParts SourceList SourceParts
\ VendorList VendorParts Trusted TrustedParts
syn keyword aptconfDirLog contained
\ History Terminal
syn keyword aptconfDirMedia contained
\ MountPath
syn keyword aptconfDirState contained
\ cdroms extended_states Lists mirrors preferences status
syn cluster aptconfDir_ contains=aptconfDir,
\ aptconfDirAptitude,aptconfDirBin,aptconfDirCache,aptconfDirEtc,
\ aptconfDirLog,aptconfDirMedia,aptconfDirState
" }}}
" DPkg: {{{
syn keyword aptconfDPkg contained
\ Build-Options Chroot-Directory ConfigurePending FlushSTDIN
\ MaxArgBytes MaxArgs MaxBytes NoTriggers options
\ Pre-Install-Pkgs Pre-Invoke Post-Invoke
\ Run-Directory StopOnError Tools TriggersPending
syn keyword aptconfDPkgTools contained
\ adequate InfoFD Options Version
syn cluster aptconfDPkg_ contains=aptconfDPkg,
\ aptconfDPkgTools
" }}}
" DSelect: {{{
syn keyword aptconfDSelect contained
\ CheckDir Clean Options PromptAfterUpdate UpdateOptions
syn cluster aptconfDSelect_ contains=aptconfDSelect
" }}}
" OrderList: {{{
syn keyword aptconfOrderList contained
\ Score
syn keyword aptconfOrderListScore contained
\ Delete Essential Immediate PreDepends
syn cluster aptconfOrderList_ contains=aptconfOrderList,
\ aptconfOrderListScore
" }}}
" PackageManager: {{{
syn keyword aptconfPackageManager contained
\ Configure
syn cluster aptconfPackageManager_ contains=aptconfPackageManager
" }}}
" PkgCacheGen: {{{
syn keyword aptconfPkgCacheGen contained
\ Essential
syn cluster aptconfPkgCacheGen_ contains=aptconfPkgCacheGen
" }}}
" Quiet: {{{
syn keyword aptconfQuiet contained
\ NoUpdate
syn cluster aptconfQuiet_ contains=aptconfQuiet
" }}}
" Rpm: {{{
syn keyword aptconfRpm contained
\ Post-Invoke Pre-Invoke
syn cluster aptconfRpm_ contains=aptconfRpm
" }}}
" Synaptic: {{{
syn keyword aptconfSynaptic contained
\ AskQuitOnProceed AskRelated AutoCleanCache CleanCache DefaultDistro
\ delAction delHistory Download-Only ftpProxy ftpProxyPort httpProxy
\ httpProxyPort Install-Recommends LastSearchType Maximized noProxy
\ OneClickOnStatusActions ShowAllPkgInfoInMain showWelcomeDialog
\ ToolbarState undoStackSize update upgradeType useProxy UseStatusColors
\ UseTerminal useUserFont useUserTerminalFont ViewMode
\ availVerColumnPos availVerColumnVisible componentColumnPos
\ componentColumnVisible descrColumnPos descrColumnVisible
\ downloadSizeColumnPos downloadSizeColumnVisible hpanedPos
\ instVerColumnPos instVerColumnVisible instSizeColumnPos
\ instSizeColumnVisible nameColumnPos nameColumnVisible
\ sectionColumnPos sectionColumnVisible statusColumnPos
\ statusColumnVisible supportedColumnPos supportedColumnVisible
\ vpanedPos windowWidth windowHeight windowX windowY closeZvt
\ color-available color-available-locked color-broken color-downgrade
\ color-install color-installed-locked color-installed-outdated
\ color-installed-updated color-new color-purge color-reinstall
\ color-remove color-upgrade
syn keyword aptconfSynapticUpdate contained
\ last type
syn cluster aptconfSynaptic_ contains=aptconfSynaptic,
\ aptconfSynapticUpdate
" }}}
" Unattended Upgrade: {{{
syn keyword aptconfUnattendedUpgrade contained
\ AutoFixInterruptedDpkg Automatic-Reboot Automatic-Reboot-Time
\ Automatic-Reboot-WithUsers InstallOnShutdown Mail MailOnlyOnError
\ MinimalSteps Origins-Pattern Package-Blacklist
\ Remove-Unused-Dependencies
syn cluster aptconfUnattendedUpgrade_ contains=aptconfUnattendedUpgrade
" }}}
" Whatmaps: {{{
syn keyword aptconfWhatmaps contained
\ Enable-Restart Security-Update-Origins
syn cluster aptconfWhatmaps_ contains=aptconfWhatmaps
" }}}
syn case match
" Now put all the keywords (and 'valid' options) in a single cluster:
syn cluster aptconfOptions contains=aptconfRegexpOpt,
\ @aptconfAcquire_,@aptconfAdequate_,@aptconfApt_,@aptconfAptitude_,
\ @aptconfAptListbugs_,@aptconfDebTags_,@aptconfDebug_,@aptconfDir_,
\ @aptconfDPkg_,@aptconfDSelect_,@aptconfOrderList_,
\ @aptconfPackageManager_,@aptconfPkgCacheGen_,@aptconfQuiet_,
\ @aptconfRpm_,@aptconfSynaptic_,@aptconfUnattendedUpgrade_,
\ @aptconfWhatmaps_
" Syntax:
syn match aptconfSemiColon ';'
syn match aptconfDoubleColon '::'
syn match aptconfCurlyBraces '[{}]'
syn region aptconfValue start='"' end='"' oneline display
syn region aptconfInclude matchgroup=aptconfOperator start='{' end='}' contains=ALLBUT,aptconfGroup,aptconfGroupIncomplete,@aptconfCommentSpecial
syn region aptconfInclude matchgroup=aptconfOperator start='::' end='{'me=s-1 contains=@aptconfOptions,aptconfError display
syn region aptconfInclude matchgroup=aptconfOperator start='::' end='::\|\s'me=s-1 oneline contains=@aptconfOptions,aptconfError display
" Basic Syntax Errors: XXX avoid to generate false positives !!!
"
" * Undocumented inline comment. Since it is currently largely used, and does
" not seem to cause trouble ('apt-config dump' never complains when # is used
" the same way than //) it has been moved to aptconfComment group. But it
" still needs to be defined here (i.e. before #clear and #include directives)
syn match aptconfComment '#.*' contains=@aptconfCommentSpecial
"
" * When a semicolon is missing after a double-quoted string:
" There are some cases (for example in the Dir group of options, but not only)
" where this syntax is valid. So we don't treat it as a strict error.
syn match aptconfAsError display '"[^"]*"[^;]'me=e-1
syn match aptconfAsError display '"[^"]*"$'
"
" * When double quotes are missing around a value (before a semicolon):
" This omission has no effect if the value is a single string (without blank
" characters). But apt.conf(5) says that quotes are required, and this item
" avoids to match unquoted keywords.
syn match aptconfAsError display '\s[^"[:blank:]]*[^}"];'me=e-1
"
" * When only one double quote is missing around a value (before a semicolon):
" No comment for that: it must be highly visible.
syn match aptconfError display '\(\s\|;\)"[^"[:blank:]]\+;'me=e-1
syn match aptconfError display '\(\s\|;\)[^"[:blank:]]\+";'me=e-1
"
" * When space is missing between option and (quoted) value:
" TODO (partially implemented)
syn match aptconfError display '::[^[:blank:]]*"'
" Special Actions:
syn match aptconfAction '^#\(clear\|include\)\>'
syn region aptconfAction matchgroup=aptconfAction start='^#clear\>' end=';'me=s-1 oneline contains=aptconfGroup,aptconfDoubleColon,@aptconfOptions
syn region aptconfAction matchgroup=aptconfAction start='^#include\>' end=';'me=s-1 oneline contains=aptconfRegexpOpt
" Comments:
syn keyword aptconfTodo TODO FIXME NOTE XXX contained
syn cluster aptconfCommentSpecial contains=@Spell,aptconfTodo
syn match aptconfComment '//.*' contains=@aptconfCommentSpecial
syn region aptconfComment start='/\*' end='\*/' contains=@aptconfCommentSpecial
" Highlight Definitions:
hi def link aptconfTodo Todo
hi def link aptconfError Error
hi def link aptconfComment Comment
hi def link aptconfOperator Operator
hi def link aptconfAction PreProc
hi def link aptconfOption Type
hi def link aptconfValue String
hi def link aptconfRegexpOpt Normal
hi def link aptconfAsError Special
hi def link aptconfSemiColon aptconfOperator
hi def link aptconfDoubleColon aptconfOperator
hi def link aptconfCurlyBraces aptconfOperator
hi def link aptconfGroupIncomplete Special
hi def link aptconfGroup aptconfOption
hi def link aptconfAcquire aptconfOption
hi def link aptconfAcquireCDROM aptconfOption
hi def link aptconfAcquireCompressionTypes aptconfOption
hi def link aptconfAcquireFTP aptconfOption
hi def link aptconfAcquireHTTP aptconfOption
hi def link aptconfAcquireHTTPS aptconfOption
hi def link aptconfAcquireMaxValidTime aptconfOption
hi def link aptconfAcquirePDiffs aptconfOption
hi def link aptconfAdequate aptconfOption
hi def link aptconfApt aptconfOption
hi def link aptconfAptAuthentication aptconfOption
hi def link aptconfAptAutoRemove aptconfOption
hi def link aptconfAptCache aptconfOption
hi def link aptconfAptCDROM aptconfOption
hi def link aptconfAptChangelogs aptconfOption
hi def link aptconfAptCompressor aptconfOption
hi def link aptconfAptCompressorAll aptconfOption
hi def link aptconfAptGet aptconfOption
hi def link aptconfAptPeriodic aptconfOption
hi def link aptconfAptUpdate aptconfOption
hi def link aptconfAptitude aptconfOption
hi def link aptconfAptitudeCmdline aptconfOption
hi def link aptconfAptitudeCmdlineProgress aptconfOption
hi def link aptconfAptitudeCmdlineSafeUpgrade aptconfOption
hi def link aptconfAptitudeLogging aptconfOption
hi def link aptconfAptitudeProblemResolver aptconfOption
hi def link aptconfAptitudeSafeResolver aptconfOption
hi def link aptconfAptitudeScreenshot aptconfOption
hi def link aptconfAptitudeSections aptconfOption
hi def link aptconfAptitudeUI aptconfOption
hi def link aptconfAptitudeUIKeyBindings aptconfOption
hi def link aptconfAptitudeUIStyles aptconfOption
hi def link aptconfAptitudeUIStylesElements aptconfOption
hi def link aptconfAptListbugs aptconfOption
hi def link aptconfDebTags aptconfOption
hi def link aptconfDebug aptconfOption
hi def link aptconfDebugAcquire aptconfOption
hi def link aptconfDebugPkgAcquire aptconfOption
hi def link aptconfDebugPkgDepCache aptconfOption
hi def link aptconfDebugPkgProblemResolver aptconfOption
hi def link aptconfDir aptconfOption
hi def link aptconfDirAptitude aptconfOption
hi def link aptconfDirBin aptconfOption
hi def link aptconfDirCache aptconfOption
hi def link aptconfDirEtc aptconfOption
hi def link aptconfDirLog aptconfOption
hi def link aptconfDirMedia aptconfOption
hi def link aptconfDirState aptconfOption
hi def link aptconfDPkg aptconfOption
hi def link aptconfDPkgTools aptconfOption
hi def link aptconfDSelect aptconfOption
hi def link aptconfOrderList aptconfOption
hi def link aptconfOrderListScore aptconfOption
hi def link aptconfPackageManager aptconfOption
hi def link aptconfPkgCacheGen aptconfOption
hi def link aptconfQuiet aptconfOption
hi def link aptconfRpm aptconfOption
hi def link aptconfSynaptic aptconfOption
hi def link aptconfSynapticUpdate aptconfOption
hi def link aptconfUnattendedUpgrade aptconfOption
hi def link aptconfWhatmaps aptconfOption
let b:current_syntax = "aptconf"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

45
syntax/arch.vim Normal file
View File

@@ -0,0 +1,45 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: GNU Arch inventory file
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2007-06-17
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
setlocal iskeyword+=-
syn keyword archTodo TODO FIXME XXX NOTE
syn region archComment display start='^\%(#\|\s\)' end='$'
\ contains=archTodo,@Spell
syn match archBegin display '^' nextgroup=archKeyword,archComment
syn keyword archKeyword contained implicit tagline explicit names
syn keyword archKeyword contained untagged-source
\ nextgroup=archTMethod skipwhite
syn keyword archKeyword contained exclude junk backup precious unrecognized
\ source nextgroup=archRegex skipwhite
syn keyword archTMethod contained source precious backup junk unrecognized
syn match archRegex contained '\s*\zs.*'
hi def link archTodo Todo
hi def link archComment Comment
hi def link archKeyword Keyword
hi def link archTMethod Type
hi def link archRegex String
let b:current_syntax = "arch"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

View File

@@ -1,3 +1,61 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Arduino
" Maintainer: Johannes Hoff <johannes@johanneshoff.com>
" Last Change: 2011 June 3
" License: VIM license (:help license, replace vim by arduino.vim)
" Syntax highlighting like in the Arduino IDE
" Keywords extracted from <arduino>/build/shared/lib/keywords.txt (arduino
" version 0021)
" Thanks to Rik, Erik Nomitch, Adam Obeng and Graeme Cross for helpful feedback!
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" Read the C syntax to start with
runtime! syntax/cpp.vim
syn keyword arduinoConstant HIGH LOW INPUT OUTPUT
syn keyword arduinoConstant DEC BIN HEX OCT BYTE
syn keyword arduinoConstant PI HALF_PI TWO_PI
syn keyword arduinoConstant LSBFIRST MSBFIRST
syn keyword arduinoConstant CHANGE FALLING RISING
syn keyword arduinoConstant SERIAL DISPLAY
syn keyword arduinoConstant DEFAULT EXTERNAL INTERNAL INTERNAL1V1 INTERNAL2V56
syn keyword arduinoStdFunc abs acos asin atan atan2 ceil constrain
syn keyword arduinoStdFunc cos degrees exp floor log
syn keyword arduinoStdFunc map max min pow radians
syn keyword arduinoStdFunc round sin sq sqrt tan
syn keyword arduinoStdFunc randomSeed random
syn keyword arduinoFunc analogReference analogRead analogWrite
syn keyword arduinoFunc attachInterrupt detachInterrupt interrupts noInterrupts
syn keyword arduinoFunc lowByte highByte bitRead bitWrite bitSet bitClear
syn keyword arduinoFunc millis micros delay delayMicroseconds
syn keyword arduinoFunc pinMode digitalWrite digitalRead
syn keyword arduinoFunc tone noTone pulseIn shiftOut
syn keyword arduinoMethod setup loop
syn keyword arduinoMethod begin end available read flush print println write peek
syn keyword arduinoType boolean byte word String
syn keyword arduinoModule Serial Serial1 Serial2 Serial3
hi def link arduinoType Type
hi def link arduinoConstant Constant
hi def link arduinoStdFunc Function
hi def link arduinoFunc Function
hi def link arduinoMethod Function
hi def link arduinoModule Identifier
endif
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'arduino') == -1
" Vim syntax file

54
syntax/art.vim Normal file
View File

@@ -0,0 +1,54 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: ART-IM and ART*Enterprise
" Maintainer: Dorai Sitaram <ds26@gte.com>
" URL: http://www.ccs.neu.edu/~dorai/vimplugins/vimplugins.html
" Last Change: 2011 Dec 28 by Thilo Six
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn case ignore
syn keyword artspform => and assert bind
syn keyword artspform declare def-art-fun deffacts defglobal defrule defschema do
syn keyword artspform else for if in$ not or
syn keyword artspform progn retract salience schema test then while
syn match artvariable "?[^ \t";()|&~]\+"
syn match artglobalvar "?\*[^ \t";()|&~]\+\*"
syn match artinstance "![^ \t";()|&~]\+"
syn match delimiter "[()|&~]"
syn region string start=/"/ skip=/\\[\\"]/ end=/"/
syn match number "\<[-+]\=\([0-9]\+\(\.[0-9]*\)\=\|\.[0-9]\+\)\>"
syn match comment ";.*$"
syn match comment "#+:\=ignore" nextgroup=artignore skipwhite skipnl
syn region artignore start="(" end=")" contained contains=artignore,comment
syn region artignore start=/"/ skip=/\\[\\"]/ end=/"/ contained
hi def link artinstance type
hi def link artglobalvar preproc
hi def link artignore comment
hi def link artspform statement
hi def link artvariable function
let b:current_syntax = "art"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

View File

@@ -1,3 +1,192 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: AsciiDoc
" Author: Stuart Rackham <srackham@gmail.com> (inspired by Felix
" Obenhuber's original asciidoc.vim script).
" URL: http://asciidoc.org/
" Licence: GPL (http://www.gnu.org)
" Remarks: Vim 6 or greater
" Last Update: 2014 Aug 29 (see Issue 240)
" Limitations:
"
" - Nested quoted text formatting is highlighted according to the outer
" format.
" - If a closing Example Block delimiter may be mistaken for a title
" underline. A workaround is to insert a blank line before the closing
" delimiter.
" - Lines within a paragraph starting with equals characters are
" highlighted as single-line titles.
" - Lines within a paragraph beginning with a period are highlighted as
" block titles.
if exists("b:current_syntax")
finish
endif
syn clear
syn sync fromstart
syn sync linebreaks=100
" Run :help syn-priority to review syntax matching priority.
syn keyword asciidocToDo TODO FIXME CHECK TEST XXX ZZZ DEPRECATED
syn match asciidocBackslash /\\/
syn region asciidocIdMarker start=/^\$Id:\s/ end=/\s\$$/
syn match asciidocCallout /\\\@<!<\d\{1,2}>/
syn match asciidocOpenBlockDelimiter /^--$/
syn match asciidocLineBreak /[ \t]+$/ containedin=asciidocList
syn match asciidocRuler /^'\{3,}$/
syn match asciidocPagebreak /^<\{3,}$/
syn match asciidocEntityRef /\\\@<!&[#a-zA-Z]\S\{-};/
syn region asciidocLiteralParagraph start=/\(\%^\|\_^\s*\n\)\@<=\s\+\S\+/ end=/\(^\(+\|--\)\?\s*$\)\@=/ contains=asciidocToDo
syn match asciidocURL /\\\@<!\<\(http\|https\|ftp\|file\|irc\):\/\/[^| \t]*\(\w\|\/\)/
syn match asciidocEmail /[\\.:]\@<!\(\<\|<\)\w\(\w\|[.-]\)*@\(\w\|[.-]\)*\w>\?[0-9A-Za-z_]\@!/
syn match asciidocAttributeRef /\\\@<!{\w\(\w\|[-,+]\)*\([=!@#$%?:].*\)\?}/
" As a damage control measure quoted patterns always terminate at a blank
" line (see 'Limitations' above).
syn match asciidocQuotedAttributeList /\\\@<!\[[a-zA-Z0-9_-][a-zA-Z0-9 _-]*\][+_'`#*]\@=/
syn match asciidocQuotedSubscript /\\\@<!\~\S\_.\{-}\(\~\|\n\s*\n\)/ contains=asciidocEntityRef
syn match asciidocQuotedSuperscript /\\\@<!\^\S\_.\{-}\(\^\|\n\s*\n\)/ contains=asciidocEntityRef
syn match asciidocQuotedMonospaced /\(^\|[| \t([.,=\]]\)\@<=+\([+ \n\t]\)\@!\(.\|\n\(\s*\n\)\@!\)\{-}\S\(+\([| \t)[\],.?!;:=]\|$\)\@=\)/ contains=asciidocEntityRef
syn match asciidocQuotedMonospaced2 /\(^\|[| \t([.,=\]]\)\@<=`\([` \n\t]\)\@!\(.\|\n\(\s*\n\)\@!\)\{-}\S\(`\([| \t)[\],.?!;:=]\|$\)\@=\)/
syn match asciidocQuotedUnconstrainedMonospaced /[\\+]\@<!++\S\_.\{-}\(++\|\n\s*\n\)/ contains=asciidocEntityRef
syn match asciidocQuotedEmphasized /\(^\|[| \t([.,=\]]\)\@<=_\([_ \n\t]\)\@!\(.\|\n\(\s*\n\)\@!\)\{-}\S\(_\([| \t)[\],.?!;:=]\|$\)\@=\)/ contains=asciidocEntityRef
syn match asciidocQuotedEmphasized2 /\(^\|[| \t([.,=\]]\)\@<='\([' \n\t]\)\@!\(.\|\n\(\s*\n\)\@!\)\{-}\S\('\([| \t)[\],.?!;:=]\|$\)\@=\)/ contains=asciidocEntityRef
syn match asciidocQuotedUnconstrainedEmphasized /\\\@<!__\S\_.\{-}\(__\|\n\s*\n\)/ contains=asciidocEntityRef
syn match asciidocQuotedBold /\(^\|[| \t([.,=\]]\)\@<=\*\([* \n\t]\)\@!\(.\|\n\(\s*\n\)\@!\)\{-}\S\(\*\([| \t)[\],.?!;:=]\|$\)\@=\)/ contains=asciidocEntityRef
syn match asciidocQuotedUnconstrainedBold /\\\@<!\*\*\S\_.\{-}\(\*\*\|\n\s*\n\)/ contains=asciidocEntityRef
" Don't allow ` in single quoted (a kludge to stop confusion with `monospaced`).
syn match asciidocQuotedSingleQuoted /\(^\|[| \t([.,=\]]\)\@<=`\([` \n\t]\)\@!\([^`]\|\n\(\s*\n\)\@!\)\{-}[^` \t]\('\([| \t)[\],.?!;:=]\|$\)\@=\)/ contains=asciidocEntityRef
syn match asciidocQuotedDoubleQuoted /\(^\|[| \t([.,=\]]\)\@<=``\([` \n\t]\)\@!\(.\|\n\(\s*\n\)\@!\)\{-}\S\(''\([| \t)[\],.?!;:=]\|$\)\@=\)/ contains=asciidocEntityRef
syn match asciidocDoubleDollarPassthrough /\\\@<!\(^\|[^0-9a-zA-Z$]\)\@<=\$\$..\{-}\(\$\$\([^0-9a-zA-Z$]\|$\)\@=\|^$\)/
syn match asciidocTriplePlusPassthrough /\\\@<!\(^\|[^0-9a-zA-Z$]\)\@<=+++..\{-}\(+++\([^0-9a-zA-Z$]\|$\)\@=\|^$\)/
syn match asciidocAdmonition /^\u\{3,15}:\(\s\+.*\)\@=/
syn region asciidocTable_OLD start=/^\([`.']\d*[-~_]*\)\+[-~_]\+\d*$/ end=/^$/
syn match asciidocBlockTitle /^\.[^. \t].*[^-~_]$/ contains=asciidocQuoted.*,asciidocAttributeRef
syn match asciidocTitleUnderline /[-=~^+]\{2,}$/ transparent contained contains=NONE
syn match asciidocOneLineTitle /^=\{1,5}\s\+\S.*$/ contains=asciidocQuoted.*,asciidocMacroAttributes,asciidocAttributeRef,asciidocEntityRef,asciidocEmail,asciidocURL,asciidocBackslash
syn match asciidocTwoLineTitle /^[^. +/].*[^.]\n[-=~^+]\{3,}$/ contains=asciidocQuoted.*,asciidocMacroAttributes,asciidocAttributeRef,asciidocEntityRef,asciidocEmail,asciidocURL,asciidocBackslash,asciidocTitleUnderline
syn match asciidocAttributeList /^\[[^[ \t].*\]$/
syn match asciidocQuoteBlockDelimiter /^_\{4,}$/
syn match asciidocExampleBlockDelimiter /^=\{4,}$/
syn match asciidocSidebarDelimiter /^*\{4,}$/
" See http://vimdoc.sourceforge.net/htmldoc/usr_44.html for excluding region
" contents from highlighting.
syn match asciidocTablePrefix /\(\S\@<!\(\([0-9.]\+\)\([*+]\)\)\?\([<\^>.]\{,3}\)\?\([a-z]\)\?\)\?|/ containedin=asciidocTableBlock contained
syn region asciidocTableBlock matchgroup=asciidocTableDelimiter start=/^|=\{3,}$/ end=/^|=\{3,}$/ keepend contains=ALL
syn match asciidocTablePrefix /\(\S\@<!\(\([0-9.]\+\)\([*+]\)\)\?\([<\^>.]\{,3}\)\?\([a-z]\)\?\)\?!/ containedin=asciidocTableBlock contained
syn region asciidocTableBlock2 matchgroup=asciidocTableDelimiter2 start=/^!=\{3,}$/ end=/^!=\{3,}$/ keepend contains=ALL
syn match asciidocListContinuation /^+$/
syn region asciidocLiteralBlock start=/^\.\{4,}$/ end=/^\.\{4,}$/ contains=asciidocCallout,asciidocToDo keepend
syn region asciidocListingBlock start=/^-\{4,}$/ end=/^-\{4,}$/ contains=asciidocCallout,asciidocToDo keepend
syn region asciidocCommentBlock start="^/\{4,}$" end="^/\{4,}$" contains=asciidocToDo
syn region asciidocPassthroughBlock start="^+\{4,}$" end="^+\{4,}$"
" Allowing leading \w characters in the filter delimiter is to accomodate
" the pre version 8.2.7 syntax and may be removed in future releases.
syn region asciidocFilterBlock start=/^\w*\~\{4,}$/ end=/^\w*\~\{4,}$/
syn region asciidocMacroAttributes matchgroup=asciidocRefMacro start=/\\\@<!<<"\{-}\(\w\|-\|_\|:\|\.\)\+"\?,\?/ end=/\(>>\)\|^$/ contains=asciidocQuoted.* keepend
syn region asciidocMacroAttributes matchgroup=asciidocAnchorMacro start=/\\\@<!\[\{2}\(\w\|-\|_\|:\|\.\)\+,\?/ end=/\]\{2}/ keepend
syn region asciidocMacroAttributes matchgroup=asciidocAnchorMacro start=/\\\@<!\[\{3}\(\w\|-\|_\|:\|\.\)\+/ end=/\]\{3}/ keepend
syn region asciidocMacroAttributes matchgroup=asciidocMacro start=/[\\0-9a-zA-Z]\@<!\w\(\w\|-\)*:\S\{-}\[/ skip=/\\\]/ end=/\]\|^$/ contains=asciidocQuoted.*,asciidocAttributeRef,asciidocEntityRef keepend
" Highlight macro that starts with an attribute reference (a common idiom).
syn region asciidocMacroAttributes matchgroup=asciidocMacro start=/\(\\\@<!{\w\(\w\|[-,+]\)*\([=!@#$%?:].*\)\?}\)\@<=\S\{-}\[/ skip=/\\\]/ end=/\]\|^$/ contains=asciidocQuoted.*,asciidocAttributeRef keepend
syn region asciidocMacroAttributes matchgroup=asciidocIndexTerm start=/\\\@<!(\{2,3}/ end=/)\{2,3}/ contains=asciidocQuoted.*,asciidocAttributeRef keepend
syn match asciidocCommentLine "^//\([^/].*\|\)$" contains=asciidocToDo
syn region asciidocAttributeEntry start=/^:\w/ end=/:\(\s\|$\)/ oneline
" Lists.
syn match asciidocListBullet /^\s*\zs\(-\|\*\{1,5}\)\ze\s/
syn match asciidocListNumber /^\s*\zs\(\(\d\+\.\)\|\.\{1,5}\|\(\a\.\)\|\([ivxIVX]\+)\)\)\ze\s\+/
syn region asciidocListLabel start=/^\s*/ end=/\(:\{2,4}\|;;\)$/ oneline contains=asciidocQuoted.*,asciidocMacroAttributes,asciidocAttributeRef,asciidocEntityRef,asciidocEmail,asciidocURL,asciidocBackslash,asciidocToDo keepend
" DEPRECATED: Horizontal label.
syn region asciidocHLabel start=/^\s*/ end=/\(::\|;;\)\(\s\+\|\\$\)/ oneline contains=asciidocQuoted.*,asciidocMacroAttributes keepend
" Starts with any of the above.
syn region asciidocList start=/^\s*\(-\|\*\{1,5}\)\s/ start=/^\s*\(\(\d\+\.\)\|\.\{1,5}\|\(\a\.\)\|\([ivxIVX]\+)\)\)\s\+/ start=/.\+\(:\{2,4}\|;;\)$/ end=/\(^[=*]\{4,}$\)\@=/ end=/\(^\(+\|--\)\?\s*$\)\@=/ contains=asciidocList.\+,asciidocQuoted.*,asciidocMacroAttributes,asciidocAttributeRef,asciidocEntityRef,asciidocEmail,asciidocURL,asciidocBackslash,asciidocCommentLine,asciidocAttributeList,asciidocToDo
hi def link asciidocAdmonition Special
hi def link asciidocAnchorMacro Macro
hi def link asciidocAttributeEntry Special
hi def link asciidocAttributeList Special
hi def link asciidocAttributeMacro Macro
hi def link asciidocAttributeRef Special
hi def link asciidocBackslash Special
hi def link asciidocBlockTitle Title
hi def link asciidocCallout Label
hi def link asciidocCommentBlock Comment
hi def link asciidocCommentLine Comment
hi def link asciidocDoubleDollarPassthrough Special
hi def link asciidocEmail Macro
hi def link asciidocEntityRef Special
hi def link asciidocExampleBlockDelimiter Type
hi def link asciidocFilterBlock Type
hi def link asciidocHLabel Label
hi def link asciidocIdMarker Special
hi def link asciidocIndexTerm Macro
hi def link asciidocLineBreak Special
hi def link asciidocOpenBlockDelimiter Label
hi def link asciidocListBullet Label
hi def link asciidocListContinuation Label
hi def link asciidocListingBlock Identifier
hi def link asciidocListLabel Label
hi def link asciidocListNumber Label
hi def link asciidocLiteralBlock Identifier
hi def link asciidocLiteralParagraph Identifier
hi def link asciidocMacroAttributes Label
hi def link asciidocMacro Macro
hi def link asciidocOneLineTitle Title
hi def link asciidocPagebreak Type
hi def link asciidocPassthroughBlock Identifier
hi def link asciidocQuoteBlockDelimiter Type
hi def link asciidocQuotedAttributeList Special
hi def link asciidocQuotedBold Special
hi def link asciidocQuotedDoubleQuoted Label
hi def link asciidocQuotedEmphasized2 Type
hi asciidocQuotedEmphasizedItalic term=italic cterm=italic gui=italic
hi def link asciidocQuotedEmphasized asciidocQuotedEmphasizedItalic
hi def link asciidocQuotedMonospaced2 Identifier
hi def link asciidocQuotedMonospaced Identifier
hi def link asciidocQuotedSingleQuoted Label
hi def link asciidocQuotedSubscript Type
hi def link asciidocQuotedSuperscript Type
hi def link asciidocQuotedUnconstrainedBold Special
hi def link asciidocQuotedUnconstrainedEmphasized Type
hi def link asciidocQuotedUnconstrainedMonospaced Identifier
hi def link asciidocRefMacro Macro
hi def link asciidocRuler Type
hi def link asciidocSidebarDelimiter Type
hi def link asciidocTableBlock2 NONE
hi def link asciidocTableBlock NONE
hi def link asciidocTableDelimiter2 Label
hi def link asciidocTableDelimiter Label
hi def link asciidocTable_OLD Type
hi def link asciidocTablePrefix2 Label
hi def link asciidocTablePrefix Label
hi def link asciidocToDo Todo
hi def link asciidocTriplePlusPassthrough Special
hi def link asciidocTwoLineTitle Title
hi def link asciidocURL Macro
let b:current_syntax = "asciidoc"
" vim: wrap et sw=2 sts=2:
endif
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'asciidoc') == -1
" Vim syntax file

134
syntax/asm.vim Normal file
View File

@@ -0,0 +1,134 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: GNU Assembler
" Maintainer: Erik Wognsen <erik.wognsen@gmail.com>
" Previous maintainer:
" Kevin Dahlhausen <kdahlhaus@yahoo.com>
" Last Change: 2014 Feb 04
" Thanks to Ori Avtalion for feedback on the comment markers!
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn case ignore
" storage types
syn match asmType "\.long"
syn match asmType "\.ascii"
syn match asmType "\.asciz"
syn match asmType "\.byte"
syn match asmType "\.double"
syn match asmType "\.float"
syn match asmType "\.hword"
syn match asmType "\.int"
syn match asmType "\.octa"
syn match asmType "\.quad"
syn match asmType "\.short"
syn match asmType "\.single"
syn match asmType "\.space"
syn match asmType "\.string"
syn match asmType "\.word"
syn match asmLabel "[a-z_][a-z0-9_]*:"he=e-1
syn match asmIdentifier "[a-z_][a-z0-9_]*"
" Various #'s as defined by GAS ref manual sec 3.6.2.1
" Technically, the first decNumber def is actually octal,
" since the value of 0-7 octal is the same as 0-7 decimal,
" I (Kevin) prefer to map it as decimal:
syn match decNumber "0\+[1-7]\=[\t\n$,; ]"
syn match decNumber "[1-9]\d*"
syn match octNumber "0[0-7][0-7]\+"
syn match hexNumber "0[xX][0-9a-fA-F]\+"
syn match binNumber "0[bB][0-1]*"
syn keyword asmTodo contained TODO
" GAS supports one type of multi line comments:
syn region asmComment start="/\*" end="\*/" contains=asmTodo
" GAS (undocumentedly?) supports C++ style comments. Unlike in C/C++ however,
" a backslash ending a C++ style comment does not extend the comment to the
" next line (hence the syntax region does not define 'skip="\\$"')
syn region asmComment start="//" end="$" keepend contains=asmTodo
" Line comment characters depend on the target architecture and command line
" options and some comments may double as logical line number directives or
" preprocessor commands. This situation is described at
" http://sourceware.org/binutils/docs-2.22/as/Comments.html
" Some line comment characters have other meanings for other targets. For
" example, .type directives may use the `@' character which is also an ARM
" comment marker.
" As a compromise to accommodate what I arbitrarily assume to be the most
" frequently used features of the most popular architectures (and also the
" non-GNU assembly languages that use this syntax file because their asm files
" are also named *.asm), the following are used as line comment characters:
syn match asmComment "[#;!|].*" contains=asmTodo
" Side effects of this include:
" - When `;' is used to separate statements on the same line (many targets
" support this), all statements except the first get highlighted as
" comments. As a remedy, remove `;' from the above.
" - ARM comments are not highlighted correctly. For ARM, uncomment the
" following two lines and comment the one above.
"syn match asmComment "@.*" contains=asmTodo
"syn match asmComment "^#.*" contains=asmTodo
" Advanced users of specific architectures will probably want to change the
" comment highlighting or use a specific, more comprehensive syntax file.
syn match asmInclude "\.include"
syn match asmCond "\.if"
syn match asmCond "\.else"
syn match asmCond "\.endif"
syn match asmMacro "\.macro"
syn match asmMacro "\.endm"
" Assembler directives start with a '.' and may contain upper case (e.g.,
" .ABORT), numbers (e.g., .p2align), dash (e.g., .app-file) and underscore in
" CFI directives (e.g., .cfi_startproc). This will also match labels starting
" with '.', including the GCC auto-generated '.L' labels.
syn match asmDirective "\.[A-Za-z][0-9A-Za-z-_]*"
syn case match
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
" The default methods for highlighting. Can be overridden later
hi def link asmSection Special
hi def link asmLabel Label
hi def link asmComment Comment
hi def link asmTodo Todo
hi def link asmDirective Statement
hi def link asmInclude Include
hi def link asmCond PreCondit
hi def link asmMacro Macro
hi def link hexNumber Number
hi def link decNumber Number
hi def link octNumber Number
hi def link binNumber Number
hi def link asmIdentifier Identifier
hi def link asmType Type
let b:current_syntax = "asm"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8
endif

382
syntax/asm68k.vim Normal file
View File

@@ -0,0 +1,382 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Motorola 68000 Assembler
" Maintainer: Steve Wall
" Last change: 2001 May 01
"
" This is incomplete. In particular, support for 68020 and
" up and 68851/68881 co-processors is partial or non-existant.
" Feel free to contribute...
"
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case ignore
" Partial list of register symbols
syn keyword asm68kReg a0 a1 a2 a3 a4 a5 a6 a7 d0 d1 d2 d3 d4 d5 d6 d7
syn keyword asm68kReg pc sr ccr sp usp ssp
" MC68010
syn keyword asm68kReg vbr sfc sfcr dfc dfcr
" MC68020
syn keyword asm68kReg msp isp zpc cacr caar
syn keyword asm68kReg za0 za1 za2 za3 za4 za5 za6 za7
syn keyword asm68kReg zd0 zd1 zd2 zd3 zd4 zd5 zd6 zd7
" MC68030
syn keyword asm68kReg crp srp tc ac0 ac1 acusr tt0 tt1 mmusr
" MC68040
syn keyword asm68kReg dtt0 dtt1 itt0 itt1 urp
" MC68851 registers
syn keyword asm68kReg cal val scc crp srp drp tc ac psr pcsr
syn keyword asm68kReg bac0 bac1 bac2 bac3 bac4 bac5 bac6 bac7
syn keyword asm68kReg bad0 bad1 bad2 bad3 bad4 bad5 bad6 bad7
" MC68881/82 registers
syn keyword asm68kReg fp0 fp1 fp2 fp3 fp4 fp5 fp6 fp7
syn keyword asm68kReg control status iaddr fpcr fpsr fpiar
" M68000 opcodes - order is important!
syn match asm68kOpcode "\<abcd\(\.b\)\=\s"
syn match asm68kOpcode "\<adda\(\.[wl]\)\=\s"
syn match asm68kOpcode "\<addi\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<addq\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<addx\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<add\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<andi\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<and\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<as[lr]\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<b[vc][cs]\(\.[bwls]\)\=\s"
syn match asm68kOpcode "\<beq\(\.[bwls]\)\=\s"
syn match asm68kOpcode "\<bg[et]\(\.[bwls]\)\=\s"
syn match asm68kOpcode "\<b[hm]i\(\.[bwls]\)\=\s"
syn match asm68kOpcode "\<bl[est]\(\.[bwls]\)\=\s"
syn match asm68kOpcode "\<bne\(\.[bwls]\)\=\s"
syn match asm68kOpcode "\<bpl\(\.[bwls]\)\=\s"
syn match asm68kOpcode "\<bchg\(\.[bl]\)\=\s"
syn match asm68kOpcode "\<bclr\(\.[bl]\)\=\s"
syn match asm68kOpcode "\<bfchg\s"
syn match asm68kOpcode "\<bfclr\s"
syn match asm68kOpcode "\<bfexts\s"
syn match asm68kOpcode "\<bfextu\s"
syn match asm68kOpcode "\<bfffo\s"
syn match asm68kOpcode "\<bfins\s"
syn match asm68kOpcode "\<bfset\s"
syn match asm68kOpcode "\<bftst\s"
syn match asm68kOpcode "\<bkpt\s"
syn match asm68kOpcode "\<bra\(\.[bwls]\)\=\s"
syn match asm68kOpcode "\<bset\(\.[bl]\)\=\s"
syn match asm68kOpcode "\<bsr\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<btst\(\.[bl]\)\=\s"
syn match asm68kOpcode "\<callm\s"
syn match asm68kOpcode "\<cas2\(\.[wl]\)\=\s"
syn match asm68kOpcode "\<cas\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<chk2\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<chk\(\.[wl]\)\=\s"
syn match asm68kOpcode "\<clr\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<cmpa\(\.[wl]\)\=\s"
syn match asm68kOpcode "\<cmpi\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<cmpm\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<cmp2\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<cmp\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<db[cv][cs]\(\.w\)\=\s"
syn match asm68kOpcode "\<dbeq\(\.w\)\=\s"
syn match asm68kOpcode "\<db[ft]\(\.w\)\=\s"
syn match asm68kOpcode "\<dbg[et]\(\.w\)\=\s"
syn match asm68kOpcode "\<db[hm]i\(\.w\)\=\s"
syn match asm68kOpcode "\<dbl[est]\(\.w\)\=\s"
syn match asm68kOpcode "\<dbne\(\.w\)\=\s"
syn match asm68kOpcode "\<dbpl\(\.w\)\=\s"
syn match asm68kOpcode "\<dbra\(\.w\)\=\s"
syn match asm68kOpcode "\<div[su]\(\.[wl]\)\=\s"
syn match asm68kOpcode "\<div[su]l\(\.l\)\=\s"
syn match asm68kOpcode "\<eori\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<eor\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<exg\(\.l\)\=\s"
syn match asm68kOpcode "\<extb\(\.l\)\=\s"
syn match asm68kOpcode "\<ext\(\.[wl]\)\=\s"
syn match asm68kOpcode "\<illegal\>"
syn match asm68kOpcode "\<jmp\(\.[ls]\)\=\s"
syn match asm68kOpcode "\<jsr\(\.[ls]\)\=\s"
syn match asm68kOpcode "\<lea\(\.l\)\=\s"
syn match asm68kOpcode "\<link\(\.[wl]\)\=\s"
syn match asm68kOpcode "\<ls[lr]\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<movea\(\.[wl]\)\=\s"
syn match asm68kOpcode "\<movec\(\.l\)\=\s"
syn match asm68kOpcode "\<movem\(\.[wl]\)\=\s"
syn match asm68kOpcode "\<movep\(\.[wl]\)\=\s"
syn match asm68kOpcode "\<moveq\(\.l\)\=\s"
syn match asm68kOpcode "\<moves\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<move\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<mul[su]\(\.[wl]\)\=\s"
syn match asm68kOpcode "\<nbcd\(\.b\)\=\s"
syn match asm68kOpcode "\<negx\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<neg\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<nop\>"
syn match asm68kOpcode "\<not\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<ori\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<or\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<pack\s"
syn match asm68kOpcode "\<pea\(\.l\)\=\s"
syn match asm68kOpcode "\<reset\>"
syn match asm68kOpcode "\<ro[lr]\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<rox[lr]\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<rt[dm]\s"
syn match asm68kOpcode "\<rt[ers]\>"
syn match asm68kOpcode "\<sbcd\(\.b\)\=\s"
syn match asm68kOpcode "\<s[cv][cs]\(\.b\)\=\s"
syn match asm68kOpcode "\<seq\(\.b\)\=\s"
syn match asm68kOpcode "\<s[ft]\(\.b\)\=\s"
syn match asm68kOpcode "\<sg[et]\(\.b\)\=\s"
syn match asm68kOpcode "\<s[hm]i\(\.b\)\=\s"
syn match asm68kOpcode "\<sl[est]\(\.b\)\=\s"
syn match asm68kOpcode "\<sne\(\.b\)\=\s"
syn match asm68kOpcode "\<spl\(\.b\)\=\s"
syn match asm68kOpcode "\<suba\(\.[wl]\)\=\s"
syn match asm68kOpcode "\<subi\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<subq\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<subx\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<sub\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<swap\(\.w\)\=\s"
syn match asm68kOpcode "\<tas\(\.b\)\=\s"
syn match asm68kOpcode "\<tdiv[su]\(\.l\)\=\s"
syn match asm68kOpcode "\<t\(rap\)\=[cv][cs]\(\.[wl]\)\=\s"
syn match asm68kOpcode "\<t\(rap\)\=eq\(\.[wl]\)\=\s"
syn match asm68kOpcode "\<t\(rap\)\=[ft]\(\.[wl]\)\=\s"
syn match asm68kOpcode "\<t\(rap\)\=g[et]\(\.[wl]\)\=\s"
syn match asm68kOpcode "\<t\(rap\)\=[hm]i\(\.[wl]\)\=\s"
syn match asm68kOpcode "\<t\(rap\)\=l[est]\(\.[wl]\)\=\s"
syn match asm68kOpcode "\<t\(rap\)\=ne\(\.[wl]\)\=\s"
syn match asm68kOpcode "\<t\(rap\)\=pl\(\.[wl]\)\=\s"
syn match asm68kOpcode "\<t\(rap\)\=v\>"
syn match asm68kOpcode "\<t\(rap\)\=[cv][cs]\>"
syn match asm68kOpcode "\<t\(rap\)\=eq\>"
syn match asm68kOpcode "\<t\(rap\)\=[ft]\>"
syn match asm68kOpcode "\<t\(rap\)\=g[et]\>"
syn match asm68kOpcode "\<t\(rap\)\=[hm]i\>"
syn match asm68kOpcode "\<t\(rap\)\=l[est]\>"
syn match asm68kOpcode "\<t\(rap\)\=ne\>"
syn match asm68kOpcode "\<t\(rap\)\=pl\>"
syn match asm68kOpcode "\<trap\s"
syn match asm68kOpcode "\<tst\(\.[bwl]\)\=\s"
syn match asm68kOpcode "\<unlk\s"
syn match asm68kOpcode "\<unpk\s"
" Valid labels
syn match asm68kLabel "^[a-z_?.][a-z0-9_?.$]*$"
syn match asm68kLabel "^[a-z_?.][a-z0-9_?.$]*\s"he=e-1
syn match asm68kLabel "^\s*[a-z_?.][a-z0-9_?.$]*:"he=e-1
" Various number formats
syn match hexNumber "\$[0-9a-fA-F]\+\>"
syn match hexNumber "\<[0-9][0-9a-fA-F]*H\>"
syn match octNumber "@[0-7]\+\>"
syn match octNumber "\<[0-7]\+[QO]\>"
syn match binNumber "%[01]\+\>"
syn match binNumber "\<[01]\+B\>"
syn match decNumber "\<[0-9]\+D\=\>"
syn match floatE "_*E_*" contained
syn match floatExponent "_*E_*[-+]\=[0-9]\+" contained contains=floatE
syn match floatNumber "[-+]\=[0-9]\+_*E_*[-+]\=[0-9]\+" contains=floatExponent
syn match floatNumber "[-+]\=[0-9]\+\.[0-9]\+\(E[-+]\=[0-9]\+\)\=" contains=floatExponent
syn match floatNumber ":\([0-9a-f]\+_*\)\+"
" Character string constants
syn match asm68kStringError "'[ -~]*'"
syn match asm68kStringError "'[ -~]*$"
syn region asm68kString start="'" skip="''" end="'" oneline contains=asm68kCharError
syn match asm68kCharError "[^ -~]" contained
" Immediate data
syn match asm68kImmediate "#\$[0-9a-fA-F]\+" contains=hexNumber
syn match asm68kImmediate "#[0-9][0-9a-fA-F]*H" contains=hexNumber
syn match asm68kImmediate "#@[0-7]\+" contains=octNumber
syn match asm68kImmediate "#[0-7]\+[QO]" contains=octNumber
syn match asm68kImmediate "#%[01]\+" contains=binNumber
syn match asm68kImmediate "#[01]\+B" contains=binNumber
syn match asm68kImmediate "#[0-9]\+D\=" contains=decNumber
syn match asm68kSymbol "[a-z_?.][a-z0-9_?.$]*" contained
syn match asm68kImmediate "#[a-z_?.][a-z0-9_?.]*" contains=asm68kSymbol
" Special items for comments
syn keyword asm68kTodo contained TODO
" Operators
syn match asm68kOperator "[-+*/]" " Must occur before Comments
syn match asm68kOperator "\.SIZEOF\."
syn match asm68kOperator "\.STARTOF\."
syn match asm68kOperator "<<" " shift left
syn match asm68kOperator ">>" " shift right
syn match asm68kOperator "&" " bit-wise logical and
syn match asm68kOperator "!" " bit-wise logical or
syn match asm68kOperator "!!" " exclusive or
syn match asm68kOperator "<>" " inequality
syn match asm68kOperator "=" " must be before other ops containing '='
syn match asm68kOperator ">="
syn match asm68kOperator "<="
syn match asm68kOperator "==" " operand existance - used in macro definitions
" Condition code style operators
syn match asm68kOperator "<[CV][CS]>"
syn match asm68kOperator "<EQ>"
syn match asm68kOperator "<G[TE]>"
syn match asm68kOperator "<[HM]I>"
syn match asm68kOperator "<L[SET]>"
syn match asm68kOperator "<NE>"
syn match asm68kOperator "<PL>"
" Comments
syn match asm68kComment ";.*" contains=asm68kTodo
syn match asm68kComment "\s!.*"ms=s+1 contains=asm68kTodo
syn match asm68kComment "^\s*[*!].*" contains=asm68kTodo
" Include
syn match asm68kInclude "\<INCLUDE\s"
" Standard macros
syn match asm68kCond "\<IF\(\.[BWL]\)\=\s"
syn match asm68kCond "\<THEN\(\.[SL]\)\=\>"
syn match asm68kCond "\<ELSE\(\.[SL]\)\=\>"
syn match asm68kCond "\<ENDI\>"
syn match asm68kCond "\<BREAK\(\.[SL]\)\=\>"
syn match asm68kRepeat "\<FOR\(\.[BWL]\)\=\s"
syn match asm68kRepeat "\<DOWNTO\s"
syn match asm68kRepeat "\<TO\s"
syn match asm68kRepeat "\<BY\s"
syn match asm68kRepeat "\<DO\(\.[SL]\)\=\>"
syn match asm68kRepeat "\<ENDF\>"
syn match asm68kRepeat "\<NEXT\(\.[SL]\)\=\>"
syn match asm68kRepeat "\<REPEAT\>"
syn match asm68kRepeat "\<UNTIL\(\.[BWL]\)\=\s"
syn match asm68kRepeat "\<WHILE\(\.[BWL]\)\=\s"
syn match asm68kRepeat "\<ENDW\>"
" Macro definition
syn match asm68kMacro "\<MACRO\>"
syn match asm68kMacro "\<LOCAL\s"
syn match asm68kMacro "\<MEXIT\>"
syn match asm68kMacro "\<ENDM\>"
syn match asm68kMacroParam "\\[0-9]"
" Conditional assembly
syn match asm68kPreCond "\<IFC\s"
syn match asm68kPreCond "\<IFDEF\s"
syn match asm68kPreCond "\<IFEQ\s"
syn match asm68kPreCond "\<IFGE\s"
syn match asm68kPreCond "\<IFGT\s"
syn match asm68kPreCond "\<IFLE\s"
syn match asm68kPreCond "\<IFLT\s"
syn match asm68kPreCond "\<IFNC\>"
syn match asm68kPreCond "\<IFNDEF\s"
syn match asm68kPreCond "\<IFNE\s"
syn match asm68kPreCond "\<ELSEC\>"
syn match asm68kPreCond "\<ENDC\>"
" Loop control
syn match asm68kPreCond "\<REPT\s"
syn match asm68kPreCond "\<IRP\s"
syn match asm68kPreCond "\<IRPC\s"
syn match asm68kPreCond "\<ENDR\>"
" Directives
syn match asm68kDirective "\<ALIGN\s"
syn match asm68kDirective "\<CHIP\s"
syn match asm68kDirective "\<COMLINE\s"
syn match asm68kDirective "\<COMMON\(\.S\)\=\s"
syn match asm68kDirective "\<DC\(\.[BWLSDXP]\)\=\s"
syn match asm68kDirective "\<DC\.\\[0-9]\s"me=e-3 " Special use in a macro def
syn match asm68kDirective "\<DCB\(\.[BWLSDXP]\)\=\s"
syn match asm68kDirective "\<DS\(\.[BWLSDXP]\)\=\s"
syn match asm68kDirective "\<END\>"
syn match asm68kDirective "\<EQU\s"
syn match asm68kDirective "\<FEQU\(\.[SDXP]\)\=\s"
syn match asm68kDirective "\<FAIL\>"
syn match asm68kDirective "\<FOPT\s"
syn match asm68kDirective "\<\(NO\)\=FORMAT\>"
syn match asm68kDirective "\<IDNT\>"
syn match asm68kDirective "\<\(NO\)\=LIST\>"
syn match asm68kDirective "\<LLEN\s"
syn match asm68kDirective "\<MASK2\>"
syn match asm68kDirective "\<NAME\s"
syn match asm68kDirective "\<NOOBJ\>"
syn match asm68kDirective "\<OFFSET\s"
syn match asm68kDirective "\<OPT\>"
syn match asm68kDirective "\<ORG\(\.[SL]\)\=\>"
syn match asm68kDirective "\<\(NO\)\=PAGE\>"
syn match asm68kDirective "\<PLEN\s"
syn match asm68kDirective "\<REG\s"
syn match asm68kDirective "\<RESTORE\>"
syn match asm68kDirective "\<SAVE\>"
syn match asm68kDirective "\<SECT\(\.S\)\=\s"
syn match asm68kDirective "\<SECTION\(\.S\)\=\s"
syn match asm68kDirective "\<SET\s"
syn match asm68kDirective "\<SPC\s"
syn match asm68kDirective "\<TTL\s"
syn match asm68kDirective "\<XCOM\s"
syn match asm68kDirective "\<XDEF\s"
syn match asm68kDirective "\<XREF\(\.S\)\=\s"
syn case match
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
" The default methods for highlighting. Can be overridden later
" Comment Constant Error Identifier PreProc Special Statement Todo Type
"
" Constant Boolean Character Number String
" Identifier Function
" PreProc Define Include Macro PreCondit
" Special Debug Delimiter SpecialChar SpecialComment Tag
" Statement Conditional Exception Keyword Label Operator Repeat
" Type StorageClass Structure Typedef
hi def link asm68kComment Comment
hi def link asm68kTodo Todo
hi def link hexNumber Number " Constant
hi def link octNumber Number " Constant
hi def link binNumber Number " Constant
hi def link decNumber Number " Constant
hi def link floatNumber Number " Constant
hi def link floatExponent Number " Constant
hi def link floatE SpecialChar " Statement
"hi def link floatE Number " Constant
hi def link asm68kImmediate SpecialChar " Statement
"hi def link asm68kSymbol Constant
hi def link asm68kString String " Constant
hi def link asm68kCharError Error
hi def link asm68kStringError Error
hi def link asm68kReg Identifier
hi def link asm68kOperator Identifier
hi def link asm68kInclude Include " PreProc
hi def link asm68kMacro Macro " PreProc
hi def link asm68kMacroParam Keyword " Statement
hi def link asm68kDirective Special
hi def link asm68kPreCond Special
hi def link asm68kOpcode Statement
hi def link asm68kCond Conditional " Statement
hi def link asm68kRepeat Repeat " Statement
hi def link asm68kLabel Type
let b:current_syntax = "asm68k"
" vim: ts=8 sw=2
endif

72
syntax/asmh8300.vim Normal file
View File

@@ -0,0 +1,72 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Hitachi H-8300h specific syntax for GNU Assembler
" Maintainer: Kevin Dahlhausen <kdahlhaus@yahoo.com>
" Last Change: 2002 Sep 19
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case ignore
syn match asmDirective "\.h8300[h]*"
"h8300[h] registers
syn match asmReg "e\=r[0-7][lh]\="
"h8300[h] opcodes - order is important!
syn match asmOpcode "add\.[lbw]"
syn match asmOpcode "add[sx :]"
syn match asmOpcode "and\.[lbw]"
syn match asmOpcode "bl[deots]"
syn match asmOpcode "cmp\.[lbw]"
syn match asmOpcode "dec\.[lbw]"
syn match asmOpcode "divx[us].[bw]"
syn match asmOpcode "ext[su]\.[lw]"
syn match asmOpcode "inc\.[lw]"
syn match asmOpcode "mov\.[lbw]"
syn match asmOpcode "mulx[su]\.[bw]"
syn match asmOpcode "neg\.[lbw]"
syn match asmOpcode "not\.[lbw]"
syn match asmOpcode "or\.[lbw]"
syn match asmOpcode "pop\.[wl]"
syn match asmOpcode "push\.[wl]"
syn match asmOpcode "rotx\=[lr]\.[lbw]"
syn match asmOpcode "sha[lr]\.[lbw]"
syn match asmOpcode "shl[lr]\.[lbw]"
syn match asmOpcode "sub\.[lbw]"
syn match asmOpcode "xor\.[lbw]"
syn keyword asmOpcode "andc" "band" "bcc" "bclr" "bcs" "beq" "bf" "bge" "bgt"
syn keyword asmOpcode "bhi" "bhs" "biand" "bild" "bior" "bist" "bixor" "bmi"
syn keyword asmOpcode "bne" "bnot" "bnp" "bor" "bpl" "bpt" "bra" "brn" "bset"
syn keyword asmOpcode "bsr" "btst" "bst" "bt" "bvc" "bvs" "bxor" "cmp" "daa"
syn keyword asmOpcode "das" "eepmov" "eepmovw" "inc" "jmp" "jsr" "ldc" "movfpe"
syn keyword asmOpcode "movtpe" "mov" "nop" "orc" "rte" "rts" "sleep" "stc"
syn keyword asmOpcode "sub" "trapa" "xorc"
syn case match
" Read the general asm syntax
runtime! syntax/asm.vim
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link asmOpcode Statement
hi def link asmRegister Identifier
" My default-color overrides:
"hi asmOpcode ctermfg=yellow
"hi asmReg ctermfg=lightmagenta
let b:current_syntax = "asmh8300"
" vim: ts=8
endif

77
syntax/asn.vim Normal file
View File

@@ -0,0 +1,77 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: ASN.1
" Maintainer: Claudio Fleiner <claudio@fleiner.com>
" URL: http://www.fleiner.com/vim/syntax/asn.vim
" Last Change: 2012 Oct 05
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" keyword definitions
syn keyword asnExternal DEFINITIONS BEGIN END IMPORTS EXPORTS FROM
syn match asnExternal "\<IMPLICIT\s\+TAGS\>"
syn match asnExternal "\<EXPLICIT\s\+TAGS\>"
syn keyword asnFieldOption DEFAULT OPTIONAL
syn keyword asnTagModifier IMPLICIT EXPLICIT
syn keyword asnTypeInfo ABSENT PRESENT SIZE UNIVERSAL APPLICATION PRIVATE
syn keyword asnBoolValue TRUE FALSE
syn keyword asnNumber MIN MAX
syn match asnNumber "\<PLUS-INFINITY\>"
syn match asnNumber "\<MINUS-INFINITY\>"
syn keyword asnType INTEGER REAL STRING BIT BOOLEAN OCTET NULL EMBEDDED PDV
syn keyword asnType BMPString IA5String TeletexString GeneralString GraphicString ISO646String NumericString PrintableString T61String UniversalString VideotexString VisibleString
syn keyword asnType ANY DEFINED
syn match asnType "\.\.\."
syn match asnType "OBJECT\s\+IDENTIFIER"
syn match asnType "TYPE-IDENTIFIER"
syn keyword asnType UTF8String
syn keyword asnStructure CHOICE SEQUENCE SET OF ENUMERATED CONSTRAINED BY WITH COMPONENTS CLASS
" Strings and constants
syn match asnSpecial contained "\\\d\d\d\|\\."
syn region asnString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=asnSpecial
syn match asnCharacter "'[^\\]'"
syn match asnSpecialCharacter "'\\.'"
syn match asnNumber "-\=\<\d\+L\=\>\|0[xX][0-9a-fA-F]\+\>"
syn match asnLineComment "--.*"
syn match asnLineComment "--.*--"
syn match asnDefinition "^\s*[a-zA-Z][-a-zA-Z0-9_.\[\] \t{}]* *::="me=e-3 contains=asnType
syn match asnBraces "[{}]"
syn sync ccomment asnComment
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link asnDefinition Function
hi def link asnBraces Function
hi def link asnStructure Statement
hi def link asnBoolValue Boolean
hi def link asnSpecial Special
hi def link asnString String
hi def link asnCharacter Character
hi def link asnSpecialCharacter asnSpecial
hi def link asnNumber asnValue
hi def link asnComment Comment
hi def link asnLineComment asnComment
hi def link asnType Type
hi def link asnTypeInfo PreProc
hi def link asnValue Number
hi def link asnExternal Include
hi def link asnTagModifier Function
hi def link asnFieldOption Type
let &cpo = s:cpo_save
unlet s:cpo_save
let b:current_syntax = "asn"
" vim: ts=8
endif

29
syntax/aspperl.vim Normal file
View File

@@ -0,0 +1,29 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Active State's PerlScript (ASP)
" Maintainer: Aaron Hope <edh@brioforge.com>
" URL: http://nim.dhs.org/~edh/aspperl.vim
" Last Change: 2001 May 09
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
if !exists("main_syntax")
let main_syntax = 'perlscript'
endif
runtime! syntax/html.vim
unlet b:current_syntax
syn include @AspPerlScript syntax/perl.vim
syn cluster htmlPreproc add=AspPerlScriptInsideHtmlTags
syn region AspPerlScriptInsideHtmlTags keepend matchgroup=Delimiter start=+<%=\=+ skip=+".*%>.*"+ end=+%>+ contains=@AspPerlScript
syn region AspPerlScriptInsideHtmlTags keepend matchgroup=Delimiter start=+<script\s\+language="\=perlscript"\=[^>]*>+ end=+</script>+ contains=@AspPerlScript
let b:current_syntax = "aspperl"
endif

186
syntax/aspvbs.vim Normal file
View File

@@ -0,0 +1,186 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Microsoft VBScript Web Content (ASP)
" Maintainer: Devin Weaver <ktohg@tritarget.com> (non-functional)
" URL: http://tritarget.com/pub/vim/syntax/aspvbs.vim (broken)
" Last Change: 2006 Jun 19
" by Dan Casey
" Version: $Revision: 1.3 $
" Thanks to Jay-Jay <vim@jay-jay.net> for a syntax sync hack, hungarian
" notation, and extra highlighting.
" Thanks to patrick dehne <patrick@steidle.net> for the folding code.
" Thanks to Dean Hall <hall@apt7.com> for testing the use of classes in
" VBScripts which I've been too scared to do.
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
if !exists("main_syntax")
let main_syntax = 'aspvbs'
endif
runtime! syntax/html.vim
unlet b:current_syntax
syn cluster htmlPreProc add=AspVBScriptInsideHtmlTags
" Colored variable names, if written in hungarian notation
hi def AspVBSVariableSimple term=standout ctermfg=3 guifg=#99ee99
hi def AspVBSVariableComplex term=standout ctermfg=3 guifg=#ee9900
syn match AspVBSVariableSimple contained "\<\(bln\|byt\|dtm\=\|dbl\|int\|str\)\u\w*"
syn match AspVBSVariableComplex contained "\<\(arr\|ary\|obj\)\u\w*"
" Functions and methods that are in VB but will cause errors in an ASP page
" This is helpfull if your porting VB code to ASP
" I removed (Count, Item) because these are common variable names in AspVBScript
syn keyword AspVBSError contained Val Str CVar CVDate DoEvents GoSub Return GoTo
syn keyword AspVBSError contained Stop LinkExecute Add Type LinkPoke
syn keyword AspVBSError contained LinkRequest LinkSend Declare Optional Sleep
syn keyword AspVBSError contained ParamArray Static Erl TypeOf Like LSet RSet Mid StrConv
" It may seem that most of these can fit into a keyword clause but keyword takes
" priority over all so I can't get the multi-word matches
syn match AspVBSError contained "\<Def[a-zA-Z0-9_]\+\>"
syn match AspVBSError contained "^\s*Open\s\+"
syn match AspVBSError contained "Debug\.[a-zA-Z0-9_]*"
syn match AspVBSError contained "^\s*[a-zA-Z0-9_]\+:"
syn match AspVBSError contained "[a-zA-Z0-9_]\+![a-zA-Z0-9_]\+"
syn match AspVBSError contained "^\s*#.*$"
syn match AspVBSError contained "\<As\s\+[a-zA-Z0-9_]*"
syn match AspVBSError contained "\<End\>\|\<Exit\>"
syn match AspVBSError contained "\<On\s\+Error\>\|\<On\>\|\<Error\>\|\<Resume\s\+Next\>\|\<Resume\>"
syn match AspVBSError contained "\<Option\s\+\(Base\|Compare\|Private\s\+Module\)\>"
" This one I want 'cause I always seem to mis-spell it.
syn match AspVBSError contained "Respon\?ce\.\S*"
syn match AspVBSError contained "Respose\.\S*"
" When I looked up the VBScript syntax it mentioned that Property Get/Set/Let
" statements are illegal, however, I have recived reports that they do work.
" So I commented it out for now.
" syn match AspVBSError contained "\<Property\s\+\(Get\|Let\|Set\)\>"
" AspVBScript Reserved Words.
syn match AspVBSStatement contained "\<On\s\+Error\s\+\(Resume\s\+Next\|goto\s\+0\)\>\|\<Next\>"
syn match AspVBSStatement contained "\<End\s\+\(If\|For\|Select\|Class\|Function\|Sub\|With\|Property\)\>"
syn match AspVBSStatement contained "\<Exit\s\+\(Do\|For\|Sub\|Function\)\>"
syn match AspVBSStatement contained "\<Exit\s\+\(Do\|For\|Sub\|Function\|Property\)\>"
syn match AspVBSStatement contained "\<Option\s\+Explicit\>"
syn match AspVBSStatement contained "\<For\s\+Each\>\|\<For\>"
syn match AspVBSStatement contained "\<Set\>"
syn keyword AspVBSStatement contained Call Class Const Default Dim Do Loop Erase And
syn keyword AspVBSStatement contained Function If Then Else ElseIf Or
syn keyword AspVBSStatement contained Private Public Randomize ReDim
syn keyword AspVBSStatement contained Select Case Sub While With Wend Not
" AspVBScript Functions
syn keyword AspVBSFunction contained Abs Array Asc Atn CBool CByte CCur CDate CDbl
syn keyword AspVBSFunction contained Chr CInt CLng Cos CreateObject CSng CStr Date
syn keyword AspVBSFunction contained DateAdd DateDiff DatePart DateSerial DateValue
syn keyword AspVBSFunction contained Date Day Exp Filter Fix FormatCurrency
syn keyword AspVBSFunction contained FormatDateTime FormatNumber FormatPercent
syn keyword AspVBSFunction contained GetObject Hex Hour InputBox InStr InStrRev Int
syn keyword AspVBSFunction contained IsArray IsDate IsEmpty IsNull IsNumeric
syn keyword AspVBSFunction contained IsObject Join LBound LCase Left Len LoadPicture
syn keyword AspVBSFunction contained Log LTrim Mid Minute Month MonthName MsgBox Now
syn keyword AspVBSFunction contained Oct Replace RGB Right Rnd Round RTrim
syn keyword AspVBSFunction contained ScriptEngine ScriptEngineBuildVersion
syn keyword AspVBSFunction contained ScriptEngineMajorVersion
syn keyword AspVBSFunction contained ScriptEngineMinorVersion Second Sgn Sin Space
syn keyword AspVBSFunction contained Split Sqr StrComp StrReverse String Tan Time Timer
syn keyword AspVBSFunction contained TimeSerial TimeValue Trim TypeName UBound UCase
syn keyword AspVBSFunction contained VarType Weekday WeekdayName Year
" AspVBScript Methods
syn keyword AspVBSMethods contained Add AddFolders BuildPath Clear Close Copy
syn keyword AspVBSMethods contained CopyFile CopyFolder CreateFolder CreateTextFile
syn keyword AspVBSMethods contained Delete DeleteFile DeleteFolder DriveExists
syn keyword AspVBSMethods contained Exists FileExists FolderExists
syn keyword AspVBSMethods contained GetAbsolutePathName GetBaseName GetDrive
syn keyword AspVBSMethods contained GetDriveName GetExtensionName GetFile
syn keyword AspVBSMethods contained GetFileName GetFolder GetParentFolderName
syn keyword AspVBSMethods contained GetSpecialFolder GetTempName Items Keys Move
syn keyword AspVBSMethods contained MoveFile MoveFolder OpenAsTextStream
syn keyword AspVBSMethods contained OpenTextFile Raise Read ReadAll ReadLine Remove
syn keyword AspVBSMethods contained RemoveAll Skip SkipLine Write WriteBlankLines
syn keyword AspVBSMethods contained WriteLine
syn match AspVBSMethods contained "Response\.\w*"
" Colorize boolean constants:
syn keyword AspVBSMethods contained true false
" AspVBScript Number Contstants
" Integer number, or floating point number without a dot.
syn match AspVBSNumber contained "\<\d\+\>"
" Floating point number, with dot
syn match AspVBSNumber contained "\<\d\+\.\d*\>"
" Floating point number, starting with a dot
syn match AspVBSNumber contained "\.\d\+\>"
" String and Character Contstants
" removed (skip=+\\\\\|\\"+) because VB doesn't have backslash escaping in
" strings (or does it?)
syn region AspVBSString contained start=+"+ end=+"+ keepend
" AspVBScript Comments
syn region AspVBSComment contained start="^REM\s\|\sREM\s" end="$" contains=AspVBSTodo keepend
syn region AspVBSComment contained start="^'\|\s'" end="$" contains=AspVBSTodo keepend
" misc. Commenting Stuff
syn keyword AspVBSTodo contained TODO FIXME
" Cosmetic syntax errors commanly found in VB but not in AspVBScript
" AspVBScript doesn't use line numbers
syn region AspVBSError contained start="^\d" end="\s" keepend
" AspVBScript also doesn't have type defining variables
syn match AspVBSError contained "[a-zA-Z0-9_][\$&!#]"ms=s+1
" Since 'a%' is a VB variable with a type and in AspVBScript you can have 'a%>'
" I have to make a special case so 'a%>' won't show as an error.
syn match AspVBSError contained "[a-zA-Z0-9_]%\($\|[^>]\)"ms=s+1
" Top Cluster
syn cluster AspVBScriptTop contains=AspVBSStatement,AspVBSFunction,AspVBSMethods,AspVBSNumber,AspVBSString,AspVBSComment,AspVBSError,AspVBSVariableSimple,AspVBSVariableComplex
" Folding
syn region AspVBSFold start="^\s*\(class\)\s\+.*$" end="^\s*end\s\+\(class\)\>.*$" fold contained transparent keepend
syn region AspVBSFold start="^\s*\(private\|public\)\=\(\s\+default\)\=\s\+\(sub\|function\)\s\+.*$" end="^\s*end\s\+\(function\|sub\)\>.*$" fold contained transparent keepend
" Define AspVBScript delimeters
" <%= func("string_with_%>_in_it") %> This is illegal in ASP syntax.
syn region AspVBScriptInsideHtmlTags keepend matchgroup=Delimiter start=+<%=\=+ end=+%>+ contains=@AspVBScriptTop, AspVBSFold
syn region AspVBScriptInsideHtmlTags keepend matchgroup=Delimiter start=+<script\s\+language="\=vbscript"\=[^>]*\s\+runatserver[^>]*>+ end=+</script>+ contains=@AspVBScriptTop
" Synchronization
" syn sync match AspVBSSyncGroup grouphere AspVBScriptInsideHtmlTags "<%"
" This is a kludge so the HTML will sync properly
syn sync match htmlHighlight grouphere htmlTag "%>"
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
"hi def link AspVBScript Special
hi def link AspVBSLineNumber Comment
hi def link AspVBSNumber Number
hi def link AspVBSError Error
hi def link AspVBSStatement Statement
hi def link AspVBSString String
hi def link AspVBSComment Comment
hi def link AspVBSTodo Todo
hi def link AspVBSFunction Identifier
hi def link AspVBSMethods PreProc
hi def link AspVBSEvents Special
hi def link AspVBSTypeSpecifier Type
let b:current_syntax = "aspvbs"
if main_syntax == 'aspvbs'
unlet main_syntax
endif
" vim: ts=8:sw=2:sts=0:noet
endif

92
syntax/asterisk.vim Normal file
View File

@@ -0,0 +1,92 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Asterisk config file
" Maintainer: Jean Aunis <jean.aunis@yahoo.fr>
" Previous Maintainer: brc007
" Updated for 1.2 by Tilghman Lesher (Corydon76)
" Last Change: 2015 Feb 27
" version 0.4
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn sync clear
syn sync fromstart
syn keyword asteriskTodo TODO contained
syn match asteriskComment ";.*" contains=asteriskTodo
syn match asteriskContext "\[.\{-}\]"
syn match asteriskExten "^\s*\zsexten\s*=>\?\s*[^,]\+\ze," contains=asteriskPattern nextgroup=asteriskPriority
syn match asteriskExten "^\s*\zssame\s*=>\?\s*\ze" nextgroup=asteriskPriority
syn match asteriskExten "^\s*\(register\|channel\|ignorepat\|include\|\(no\)\?load\)\s*=>\?"
syn match asteriskPattern "_\(\[[[:alnum:]#*\-]\+\]\|[[:alnum:]#*]\)*\.\?" contained
syn match asteriskPattern "[^A-Za-z0-9,]\zs[[:alnum:]#*]\+\ze" contained
syn match asteriskApp ",\zs[a-zA-Z]\+\ze$"
syn match asteriskApp ",\zs[a-zA-Z]\+\ze("
" Digits plus oldlabel (newlabel)
syn match asteriskPriority "\zs[[:digit:]]\+\(+[[:alpha:]][[:alnum:]_]*\)\?\(([[:alpha:]][[:alnum:]_]*)\)\?\ze," contains=asteriskLabel
" oldlabel plus digits (newlabel)
syn match asteriskPriority "\zs[[:alpha:]][[:alnum:]_]*+[[:digit:]]\+\(([[:alpha:]][[:alnum:]_]*)\)\?\ze," contains=asteriskLabel
" s or n plus digits (newlabel)
syn match asteriskPriority "\zs[sn]\(+[[:digit:]]\+\)\?\(([[:alpha:]][[:alnum:]_]*)\)\?\ze," contains=asteriskLabel
syn match asteriskLabel "(\zs[[:alpha:]][[:alnum:]]*\ze)" contained
syn match asteriskError "^\s*#\s*[[:alnum:]]*"
syn match asteriskInclude "^\s*#\s*\(include\|exec\)\s.*"
syn match asteriskVar "\${_\{0,2}[[:alpha:]][[:alnum:]_]*\(:-\?[[:digit:]]\+\(:[[:digit:]]\+\)\?\)\?}"
syn match asteriskVar "_\{0,2}[[:alpha:]][[:alnum:]_]*\ze="
syn match asteriskVarLen "\${_\{0,2}[[:alpha:]][[:alnum:]_]*(.*)}" contains=asteriskVar,asteriskVarLen,asteriskExp
syn match asteriskVarLen "(\zs[[:alpha:]][[:alnum:]_]*(.\{-})\ze=" contains=asteriskVar,asteriskVarLen,asteriskExp
syn match asteriskExp "\$\[.\{-}\]" contains=asteriskVar,asteriskVarLen,asteriskExp
syn match asteriskCodecsPermit "^\s*\(allow\|disallow\)\s*=\s*.*$" contains=asteriskCodecs
syn match asteriskCodecs "\(g723\|gsm\|ulaw\|alaw\|g726\|adpcm\|slin\|lpc10\|g729\|speex\|ilbc\|all\s*$\)"
syn match asteriskError "^\(type\|auth\|permit\|deny\|bindaddr\|host\)\s*=.*$"
syn match asteriskType "^\zstype=\ze\<\(peer\|user\|friend\)\>$" contains=asteriskTypeType
syn match asteriskTypeType "\<\(peer\|user\|friend\)\>" contained
syn match asteriskAuth "^\zsauth\s*=\ze\s*\<\(md5\|rsa\|plaintext\)\>$" contains=asteriskAuthType
syn match asteriskAuthType "\<\(md5\|rsa\|plaintext\)\>"
syn match asteriskAuth "^\zs\(secret\|inkeys\|outkey\)\s*=\ze.*$"
syn match asteriskAuth "^\(permit\|deny\)\s*=\s*\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}/\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}\s*$" contains=asteriskIPRange
syn match asteriskIPRange "\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}/\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}" contained
syn match asteriskIP "\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}" contained
syn match asteriskHostname "[[:alnum:]][[:alnum:]\-\.]*\.[[:alpha:]]{2,10}" contained
syn match asteriskPort "\d\{1,5}" contained
syn match asteriskSetting "^bindaddr\s*=\s*\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}$" contains=asteriskIP
syn match asteriskSetting "^port\s*=\s*\d\{1,5}\s*$" contains=asteriskPort
syn match asteriskSetting "^host\s*=\s*\(dynamic\|\(\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}\)\|\([[:alnum:]][[:alnum:]\-\.]*\.[[:alpha:]]{2,10}\)\)" contains=asteriskIP,asteriskHostname
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link asteriskComment Comment
hi def link asteriskExten String
hi def link asteriskContext Preproc
hi def link asteriskPattern Type
hi def link asteriskApp Statement
hi def link asteriskInclude Preproc
hi def link asteriskIncludeBad Error
hi def link asteriskPriority Preproc
hi def link asteriskLabel Type
hi def link asteriskVar String
hi def link asteriskVarLen Function
hi def link asteriskExp Type
hi def link asteriskCodecsPermit Preproc
hi def link asteriskCodecs String
hi def link asteriskType Statement
hi def link asteriskTypeType Type
hi def link asteriskAuth String
hi def link asteriskAuthType Type
hi def link asteriskIPRange Identifier
hi def link asteriskIP Identifier
hi def link asteriskPort Identifier
hi def link asteriskHostname Identifier
hi def link asteriskSetting Statement
hi def link asteriskError Error
let b:current_syntax = "asterisk"
" vim: ts=8 sw=2
endif

55
syntax/asteriskvm.vim Normal file
View File

@@ -0,0 +1,55 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Asterisk voicemail config file
" Maintainer: Tilghman Lesher (Corydon76)
" Last Change: 2006 Mar 21
" version 0.2
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn sync clear
syn sync fromstart
syn keyword asteriskvmTodo TODO contained
syn match asteriskvmComment ";.*" contains=asteriskvmTodo
syn match asteriskvmContext "\[.\{-}\]"
" ZoneMessages
syn match asteriskvmZone "^[[:alnum:]]\+\s*=>\?\s*[[:alnum:]/_]\+|.*$" contains=zoneName,zoneDef
syn match zoneName "=\zs[[:alnum:]/_]\+\ze" contained
syn match zoneDef "|\zs.*\ze$" contained
syn match asteriskvmSetting "\<\(format\|serveremail\|minmessage\|maxmessage\|maxgreet\|skipms\|maxsilence\|silencethreshold\|maxlogins\)="
syn match asteriskvmSetting "\<\(externnotify\|externpass\|directoryintro\|charset\|adsi\(fdn\|sec\|ver\)\|\(pager\)\?fromstring\|email\(subject\|body\|cmd\)\|tz\|cidinternalcontexts\|saydurationm\|dialout\|callback\)="
syn match asteriskvmSettingBool "\<\(attach\|pbxskip\|usedirectory\|saycid\|sayduration\|sendvoicemail\|review\|operator\|envelope\|delete\|nextaftercmd\|forcename\|forcegreeting\)=\(yes\|no\|1\|0\|true\|false\|t\|f\)"
" Individual mailbox definitions
syn match asteriskvmMailbox "^[[:digit:]]\+\s*=>\?\s*[[:digit:]]\+\(,[^,]*\(,[^,]*\(,[^,]*\(,[^,]*\)\?\)\?\)\?\)\?" contains=mailboxEmail,asteriskvmSetting,asteriskvmSettingBool,comma
syn match mailboxEmail ",\zs[^@=,]*@[[:alnum:]\-\.]\+\.[[:alpha:]]\{2,10}\ze" contains=comma
syn match comma "[,|]" contained
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link asteriskvmComment Comment
hi def link asteriskvmContext Identifier
hi def link asteriskvmZone Type
hi def link zoneName String
hi def link zoneDef String
hi def link asteriskvmSetting Type
hi def link asteriskvmSettingBool Type
hi def link asteriskvmMailbox Statement
hi def link mailboxEmail String
let b:current_syntax = "asteriskvm"
" vim: ts=8 sw=2
endif

89
syntax/atlas.vim Normal file
View File

@@ -0,0 +1,89 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: ATLAS
" Maintainer: Inaki Saez <jisaez@sfe.indra.es>
" Last Change: 2001 May 09
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case ignore
syn keyword atlasStatement begin terminate
syn keyword atlasStatement fill calculate compare
syn keyword atlasStatement setup connect close open disconnect reset
syn keyword atlasStatement initiate read fetch
syn keyword atlasStatement apply measure verify remove
syn keyword atlasStatement perform leave finish output delay
syn keyword atlasStatement prepare execute
syn keyword atlasStatement do
syn match atlasStatement "\<go[ ]\+to\>"
syn match atlasStatement "\<wait[ ]\+for\>"
syn keyword atlasInclude include
syn keyword atlasDefine define require declare identify
"syn keyword atlasReserved true false go nogo hi lo via
syn keyword atlasReserved true false
syn keyword atlasStorageClass external global
syn keyword atlasConditional if then else end
syn keyword atlasRepeat while for thru
" Flags BEF and statement number
syn match atlasSpecial "^[BE ][ 0-9]\{,6}\>"
" Number formats
syn match atlasHexNumber "\<X'[0-9A-F]\+'"
syn match atlasOctalNumber "\<O'[0-7]\+'"
syn match atlasBinNumber "\<B'[01]\+'"
syn match atlasNumber "\<\d\+\>"
"Floating point number part only
syn match atlasDecimalNumber "\.\d\+\([eE][-+]\=\d\)\=\>"
syn region atlasFormatString start=+((+ end=+\())\)\|\()[ ]*\$\)+me=e-1
syn region atlasString start=+\<C'+ end=+'+ oneline
syn region atlasComment start=+^C+ end=+\$+
syn region atlasComment2 start=+\$.\++ms=s+1 end=+$+ oneline
syn match atlasIdentifier "'[A-Za-z0-9 ._-]\+'"
"Synchronization with Statement terminator $
syn sync match atlasTerminator grouphere atlasComment "^C"
syn sync match atlasTerminator groupthere NONE "\$"
syn sync maxlines=100
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link atlasConditional Conditional
hi def link atlasRepeat Repeat
hi def link atlasStatement Statement
hi def link atlasNumber Number
hi def link atlasHexNumber Number
hi def link atlasOctalNumber Number
hi def link atlasBinNumber Number
hi def link atlasDecimalNumber Float
hi def link atlasFormatString String
hi def link atlasString String
hi def link atlasComment Comment
hi def link atlasComment2 Comment
hi def link atlasInclude Include
hi def link atlasDefine Macro
hi def link atlasReserved PreCondit
hi def link atlasStorageClass StorageClass
hi def link atlasIdentifier NONE
hi def link atlasSpecial Special
let b:current_syntax = "atlas"
" vim: ts=8
endif

326
syntax/autohotkey.vim Normal file
View File

@@ -0,0 +1,326 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: AutoHotkey script file
" Maintainer: Michael Wong
" https://github.com/mmikeww/autohotkey.vim
" Latest Revision: 2017-04-03
" Previous Maintainers: SungHyun Nam <goweol@gmail.com>
" Nikolai Weibull <now@bitwi.se>
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn case ignore
syn keyword autohotkeyTodo
\ contained
\ TODO FIXME XXX NOTE
" only these chars are valid as escape sequences: ,%`;nrbtvaf
" https://autohotkey.com/docs/commands/_EscapeChar.htm
syn match autohotkeyEscape
\ display
\ '`[,%`;nrbtvaf]'
syn region autohotkeyString
\ display
\ oneline
\ matchgroup=autohotkeyStringDelimiter
\ start=+"+
\ end=+"+
\ contains=autohotkeyEscape
syn match autohotkeyVariable
\ display
\ oneline
\ contains=autohotkeyBuiltinVariable
\ keepend
\ '%\S\{-}%'
syn keyword autohotkeyBuiltinVariable
\ A_Space A_Tab
\ A_WorkingDir A_ScriptDir A_ScriptName A_ScriptFullPath A_ScriptHwnd A_LineNumber
\ A_LineFile A_ThisFunc A_ThisLabel A_AhkVersion A_AhkPath A_IsUnicode A_IsCompiled A_ExitReason
\ A_YYYY A_MM A_DD A_MMMM A_MMM A_DDDD A_DDD A_WDay A_YDay A_YWeek A_Hour A_Min
\ A_Mon A_Year A_MDay A_NumBatchLines
\ A_Sec A_MSec A_Now A_NowUTC A_TickCount
\ A_IsSuspended A_IsPaused A_IsCritical A_BatchLines A_TitleMatchMode A_TitleMatchModeSpeed
\ A_DetectHiddenWindows A_DetectHiddenText A_AutoTrim A_StringCaseSense
\ A_FileEncoding A_FormatInteger A_FormatFloat A_KeyDelay A_WinDelay A_ControlDelay
\ A_SendMode A_SendLevel A_StoreCapsLockMode A_KeyDelay A_KeyDelayDuration
\ A_KeyDelayPlay A_KeyDelayPlayDuration A_MouseDelayPlay
\ A_MouseDelay A_DefaultMouseSpeed A_RegView A_IconHidden A_IconTip A_IconFile
\ A_CoordModeToolTip A_CoordModePixel A_CoordModeMouse A_CoordModeCaret A_CoordModeMenu
\ A_IconNumber
\ A_TimeIdle A_TimeIdlePhysical A_DefaultGui A_DefaultListView A_DefaultTreeView
\ A_Gui A_GuiControl A_GuiWidth A_GuiHeight A_GuiX A_GuiY A_GuiEvent
\ A_GuiControlEvent A_EventInfo
\ A_ThisMenuItem A_ThisMenu A_ThisMenuItemPos A_ThisHotkey A_PriorHotkey
\ A_PriorKey A_TimeSinceThisHotkey A_TimeSincePriorHotkey A_EndChar
\ ComSpec A_Temp A_OSType A_OSVersion A_Language A_ComputerName A_UserName
\ A_Is64BitOS A_PtrSize
\ A_WinDir A_ProgramFiles ProgramFiles A_AppData A_AppDataCommon A_Desktop
\ A_DesktopCommon A_StartMenu A_StartMenuCommon A_Programs
\ A_ProgramsCommon A_Startup A_StartupCommon A_MyDocuments A_IsAdmin
\ A_ScreenWidth A_ScreenHeight A_ScreenDPI A_IPAddress1 A_IPAddress2 A_IPAddress3
\ A_IPAddress4
\ A_Cursor A_CaretX A_CaretY Clipboard ClipboardAll ErrorLevel A_LastError
\ A_Index A_LoopFileName A_LoopRegName A_LoopReadLine A_LoopField
\ A_LoopFileExt A_LoopFileFullPath A_LoopFileLongPath A_LoopFileShortPath
\ A_LoopFileShortName A_LoopFileDir A_LoopFileTimeModified A_LoopFileTimeCreated
\ A_LoopFileTimeAccessed A_LoopFileAttrib A_LoopFileSize A_LoopFileSizeKB A_LoopFileSizeMB
\ A_LoopRegType A_LoopRegKey A_LoopRegSubKey A_LoopRegTimeModified
syn match autohotkeyBuiltinVariable
\ contained
\ display
\ '%\d\+%'
syn keyword autohotkeyCommand
\ ClipWait EnvGet EnvSet EnvUpdate
\ Drive DriveGet DriveSpaceFree FileAppend FileCopy FileCopyDir
\ FileCreateDir FileCreateShortcut FileDelete FileGetAttrib FileEncoding
\ FileGetShortcut FileGetSize FileGetTime FileGetVersion FileInstall
\ FileMove FileMoveDir FileReadLine FileRead FileRecycle FileRecycleEmpty
\ FileRemoveDir FileSelectFolder FileSelectFile FileSetAttrib FileSetTime
\ IniDelete IniRead IniWrite SetWorkingDir
\ SplitPath
\ Gui GuiControl GuiControlGet IfMsgBox InputBox MsgBox Progress
\ SplashImage SplashTextOn SplashTextOff ToolTip TrayTip
\ Hotkey ListHotkeys BlockInput ControlSend ControlSendRaw GetKeyState
\ KeyHistory KeyWait Input Send SendRaw SendInput SendPlay SendEvent
\ SendMode SetKeyDelay SetNumScrollCapsLockState SetStoreCapslockMode
\ EnvAdd EnvDiv EnvMult EnvSub Random SetFormat Transform
\ AutoTrim BlockInput CoordMode Critical Edit ImageSearch
\ ListLines ListVars Menu OutputDebug PixelGetColor PixelSearch
\ SetBatchLines SetEnv SetTimer SysGet Thread Transform URLDownloadToFile
\ Click ControlClick MouseClick MouseClickDrag MouseGetPos MouseMove
\ SetDefaultMouseSpeed SetMouseDelay
\ Process Run RunWait RunAs Shutdown Sleep
\ RegDelete RegRead RegWrite
\ SoundBeep SoundGet SoundGetWaveVolume SoundPlay SoundSet
\ SoundSetWaveVolume
\ FormatTime IfInString IfNotInString Sort StringCaseSense StringGetPos
\ StringLeft StringRight StringLower StringUpper StringMid StringReplace
\ StringSplit StringTrimLeft StringTrimRight StringLen
\ StrSplit StrReplace Throw
\ Control ControlClick ControlFocus ControlGet ControlGetFocus
\ ControlGetPos ControlGetText ControlMove ControlSend ControlSendRaw
\ ControlSetText Menu PostMessage SendMessage SetControlDelay
\ WinMenuSelectItem GroupActivate GroupAdd GroupClose GroupDeactivate
\ DetectHiddenText DetectHiddenWindows SetTitleMatchMode SetWinDelay
\ StatusBarGetText StatusBarWait WinActivate WinActivateBottom WinClose
\ WinGet WinGetActiveStats WinGetActiveTitle WinGetClass WinGetPos
\ WinGetText WinGetTitle WinHide WinKill WinMaximize WinMinimize
\ WinMinimizeAll WinMinimizeAllUndo WinMove WinRestore WinSet
\ WinSetTitle WinShow WinWait WinWaitActive WinWaitNotActive WinWaitClose
\ SetCapsLockState SetNumLockState SetScrollLockState
syn keyword autohotkeyFunction
\ InStr RegExMatch RegExReplace StrLen SubStr Asc Chr Func
\ DllCall VarSetCapacity WinActive WinExist IsLabel OnMessage
\ Abs Ceil Exp Floor Log Ln Mod Round Sqrt Sin Cos Tan ASin ACos ATan
\ FileExist GetKeyState NumGet NumPut StrGet StrPut RegisterCallback
\ IsFunc Trim LTrim RTrim IsObject Object Array FileOpen
\ ComObjActive ComObjArray ComObjConnect ComObjCreate ComObjGet
\ ComObjError ComObjFlags ComObjQuery ComObjType ComObjValue ComObject
\ Format Exception
syn keyword autohotkeyStatement
\ Break Continue Exit ExitApp Gosub Goto OnExit Pause Return
\ Suspend Reload new class extends
syn keyword autohotkeyRepeat
\ Loop
syn keyword autohotkeyConditional
\ IfExist IfNotExist If IfEqual IfLess IfGreater Else
\ IfWinExist IfWinNotExist IfWinActive IfWinNotActive
\ IfNotEqual IfLessOrEqual IfGreaterOrEqual
\ while until for in try catch finally
syn match autohotkeyPreProcStart
\ nextgroup=
\ autohotkeyInclude,
\ autohotkeyPreProc
\ skipwhite
\ display
\ '^\s*\zs#'
syn keyword autohotkeyInclude
\ contained
\ Include
\ IncludeAgain
syn keyword autohotkeyPreProc
\ contained
\ HotkeyInterval HotKeyModifierTimeout
\ Hotstring
\ IfWinActive IfWinNotActive IfWinExist IfWinNotExist
\ If IfTimeout
\ MaxHotkeysPerInterval MaxThreads MaxThreadsBuffer MaxThreadsPerHotkey
\ UseHook InstallKeybdHook InstallMouseHook
\ KeyHistory
\ NoTrayIcon SingleInstance
\ WinActivateForce
\ AllowSameLineComments
\ ClipboardTimeout
\ CommentFlag
\ ErrorStdOut
\ EscapeChar
\ MaxMem
\ NoEnv
\ Persistent
\ LTrim
\ InputLevel
\ MenuMaskKey
\ Warn
syn keyword autohotkeyMatchClass
\ ahk_group ahk_class ahk_id ahk_pid ahk_exe
syn match autohotkeyNumbers
\ display
\ transparent
\ contains=
\ autohotkeyInteger,
\ autohotkeyFloat
\ '\<\d\|\.\d'
syn match autohotkeyInteger
\ contained
\ display
\ '\d\+\>'
syn match autohotkeyInteger
\ contained
\ display
\ '0x\x\+\>'
syn match autohotkeyFloat
\ contained
\ display
\ '\d\+\.\d*\|\.\d\+\>'
syn keyword autohotkeyType
\ local
\ global
\ static
\ byref
syn keyword autohotkeyBoolean
\ true
\ false
syn match autohotkeyHotkey
\ contains=autohotkeyKey,
\ autohotkeyHotkeyDelimiter
\ display
\ '^\s*\S*\%( Up\)\?::'
syn match autohotkeyKey
\ contained
\ display
\ '^.\{-}'
syn match autohotkeyDelimiter
\ contained
\ display
\ '::'
" allowable hotstring options:
" https://autohotkey.com/docs/Hotstrings.htm
syn match autohotkeyHotstringDefinition
\ contains=autohotkeyHotstring,
\ autohotkeyHotstringDelimiter
\ display
\ '^\s*:\%([*?]\|[BORZ]0\?\|C[01]\?\|K\d\+\|P\d\+\|S[IPE]\)*:.\{-}::'
syn match autohotkeyHotstring
\ contained
\ display
\ '.\{-}'
syn match autohotkeyHotstringDelimiter
\ contained
\ display
\ '::'
syn match autohotkeyHotstringDelimiter
\ contains=autohotkeyHotstringOptions
\ contained
\ display
\ ':\%([*?]\|[BORZ]0\?\|C[01]\?\|K\d\+\|P\d\+\|S[IPE]\)*:'
syn match autohotkeyHotstringOptions
\ contained
\ display
\ '\%([*?]\|[BORZ]0\?\|C[01]\?\|K\d\+\|P\d\+\|S[IPE]\)*'
syn cluster autohotkeyCommentGroup
\ contains=
\ autohotkeyTodo,
\ @Spell
syn match autohotkeyComment
\ display
\ contains=@autohotkeyCommentGroup
\ '\%(^;\|\s\+;\).*$'
syn region autohotkeyComment
\ contains=@autohotkeyCommentGroup
\ matchgroup=autohotkeyCommentStart
\ start='^\s*/\*'
\ end='^\s*\*/'
" TODO: Shouldn't we look for g:, b:, variables before defaulting to
" something?
if exists("g:autohotkey_syntax_sync_minlines")
let b:autohotkey_syntax_sync_minlines = g:autohotkey_syntax_sync_minlines
else
let b:autohotkey_syntax_sync_minlines = 50
endif
exec "syn sync ccomment autohotkeyComment minlines=" . b:autohotkey_syntax_sync_minlines
hi def link autohotkeyTodo Todo
hi def link autohotkeyComment Comment
hi def link autohotkeyCommentStart autohotkeyComment
hi def link autohotkeyEscape Special
hi def link autohotkeyHotkey Type
hi def link autohotkeyKey Type
hi def link autohotkeyDelimiter Delimiter
hi def link autohotkeyHotstringDefinition Type
hi def link autohotkeyHotstring Type
hi def link autohotkeyHotstringDelimiter autohotkeyDelimiter
hi def link autohotkeyHotstringOptions Special
hi def link autohotkeyString String
hi def link autohotkeyStringDelimiter autohotkeyString
hi def link autohotkeyVariable Identifier
hi def link autohotkeyVariableDelimiter autohotkeyVariable
hi def link autohotkeyBuiltinVariable Macro
hi def link autohotkeyCommand Keyword
hi def link autohotkeyFunction Function
hi def link autohotkeyStatement autohotkeyCommand
hi def link autohotkeyRepeat Repeat
hi def link autohotkeyConditional Conditional
hi def link autohotkeyPreProcStart PreProc
hi def link autohotkeyInclude Include
hi def link autohotkeyPreProc PreProc
hi def link autohotkeyMatchClass Typedef
hi def link autohotkeyNumber Number
hi def link autohotkeyInteger autohotkeyNumber
hi def link autohotkeyFloat autohotkeyNumber
hi def link autohotkeyType Type
hi def link autohotkeyBoolean Boolean
let b:current_syntax = "autohotkey"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

1128
syntax/autoit.vim Normal file

File diff suppressed because it is too large Load Diff

81
syntax/automake.vim Normal file
View File

@@ -0,0 +1,81 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: automake Makefile.am
" Maintainer: Debian VIM Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
" Former Maintainer: John Williams <jrw@pobox.com>
" Last Change: 2011-06-13
" URL: http://anonscm.debian.org/hg/pkg-vim/vim/raw-file/unstable/runtime/syntax/automake.vim
"
" XXX This file is in need of a new maintainer, Debian VIM Maintainers maintain
" it only because patches have been submitted for it by Debian users and the
" former maintainer was MIA (Missing In Action), taking over its
" maintenance was thus the only way to include those patches.
" If you care about this file, and have time to maintain it please do so!
"
" This script adds support for automake's Makefile.am format. It highlights
" Makefile variables significant to automake as well as highlighting
" autoconf-style @variable@ substitutions . Subsitutions are marked as errors
" when they are used in an inappropriate place, such as in defining
" EXTRA_SOURCES.
" Standard syntax initialization
if exists("b:current_syntax")
finish
endif
" Read the Makefile syntax to start with
runtime! syntax/make.vim
syn match automakePrimary "^\w\+\(_PROGRAMS\|_LIBRARIES\|_LISP\|_PYTHON\|_JAVA\|_SCRIPTS\|_DATA\|_HEADERS\|_MANS\|_TEXINFOS\|_LTLIBRARIES\)\s*\ze+\=="
syn match automakePrimary "^TESTS\s*\ze+\=="me=e-1
syn match automakeSecondary "^\w\+\(_SOURCES\|_LIBADD\|_LDADD\|_LDFLAGS\|_DEPENDENCIES\|_AR\|_CCASFLAGS\|_CFLAGS\|_CPPFLAGS\|_CXXFLAGS\|_FCFLAGS\|_FFLAGS\|_GCJFLAGS\|_LFLAGS\|_LIBTOOLFLAGS\|OBJCFLAGS\|RFLAGS\|UPCFLAGS\|YFLAGS\)\s*\ze+\=="
syn match automakeSecondary "^\(LDADD\|ARFLAGS\|OMIT_DEPENDENCIES\|AM_MAKEFLAGS\|\(AM_\)\=\(MAKEINFOFLAGS\|RUNTESTDEFAULTFLAGS\|ETAGSFLAGS\|CTAGSFLAGS\|JAVACFLAGS\)\)\s*\ze+\=="
syn match automakeExtra "^EXTRA_\w\+\s*\ze+\=="
syn match automakeOptions "^\(ACLOCAL_AMFLAGS\|AUTOMAKE_OPTIONS\|DISTCHECK_CONFIGURE_FLAGS\|ETAGS_ARGS\|TAGS_DEPENDENCIES\)\s*\ze+\=="
syn match automakeClean "^\(MOSTLY\|DIST\|MAINTAINER\)\=CLEANFILES\s*\ze+\=="
syn match automakeSubdirs "^\(DIST_\)\=SUBDIRS\s*\ze+\=="
syn match automakeConditional "^\(if\s*!\=\w\+\|else\|endif\)\s*$"
syn match automakeSubst "@\w\+@"
syn match automakeSubst "^\s*@\w\+@"
syn match automakeComment1 "#.*$" contains=automakeSubst
syn match automakeComment2 "##.*$"
syn match automakeMakeError "$[{(][^})]*[^a-zA-Z0-9_})][^})]*[})]" " GNU make function call
syn match automakeMakeError "^AM_LDADD\s*\ze+\==" " Common mistake
syn region automakeNoSubst start="^EXTRA_\w*\s*+\==" end="$" contains=ALLBUT,automakeNoSubst transparent
syn region automakeNoSubst start="^DIST_SUBDIRS\s*+\==" end="$" contains=ALLBUT,automakeNoSubst transparent
syn region automakeNoSubst start="^\w*_SOURCES\s*+\==" end="$" contains=ALLBUT,automakeNoSubst transparent
syn match automakeBadSubst "@\(\w*@\=\)\=" contained
syn region automakeMakeDString start=+"+ skip=+\\"+ end=+"+ contains=makeIdent,automakeSubstitution
syn region automakeMakeSString start=+'+ skip=+\\'+ end=+'+ contains=makeIdent,automakeSubstitution
syn region automakeMakeBString start=+`+ skip=+\\`+ end=+`+ contains=makeIdent,makeSString,makeDString,makeNextLine,automakeSubstitution
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link automakePrimary Statement
hi def link automakeSecondary Type
hi def link automakeExtra Special
hi def link automakeOptions Special
hi def link automakeClean Special
hi def link automakeSubdirs Statement
hi def link automakeConditional PreProc
hi def link automakeSubst PreProc
hi def link automakeComment1 makeComment
hi def link automakeComment2 makeComment
hi def link automakeMakeError makeError
hi def link automakeBadSubst makeError
hi def link automakeMakeDString makeDString
hi def link automakeMakeSString makeSString
hi def link automakeMakeBString makeBString
let b:current_syntax = "automake"
" vi: ts=8 sw=4 sts=4
endif

83
syntax/ave.vim Normal file
View File

@@ -0,0 +1,83 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Copyright by Jan-Oliver Wagner
" Language: avenue
" Maintainer: Jan-Oliver Wagner <Jan-Oliver.Wagner@intevation.de>
" Last change: 2001 May 10
" Avenue is the ArcView built-in language. ArcView is
" a desktop GIS by ESRI. Though it is a built-in language
" and a built-in editor is provided, the use of VIM increases
" development speed.
" I use some technologies to automatically load avenue scripts
" into ArcView.
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" Avenue is entirely case-insensitive.
syn case ignore
" The keywords
syn keyword aveStatement if then elseif else end break exit return
syn keyword aveStatement for each in continue while
" String
syn region aveString start=+"+ end=+"+
" Integer number
syn match aveNumber "[+-]\=\<[0-9]\+\>"
" Operator
syn keyword aveOperator or and max min xor mod by
" 'not' is a kind of a problem: It's an Operator as well as a method
" 'not' is only marked as an Operator if not applied as method
syn match aveOperator "[^\.]not[^a-zA-Z]"
" Variables
syn keyword aveFixVariables av nil self false true nl tab cr tab
syn match globalVariables "_[a-zA-Z][a-zA-Z0-9]*"
syn match aveVariables "[a-zA-Z][a-zA-Z0-9_]*"
syn match aveConst "#[A-Z][A-Z_]+"
" Comments
syn match aveComment "'.*"
" Typical Typos
" for C programmers:
syn match aveTypos "=="
syn match aveTypos "!="
" Define the default highlighting.
" Only when an item doesn't have highlighting+yet
hi def link aveStatement Statement
hi def link aveString String
hi def link aveNumber Number
hi def link aveFixVariables Special
hi def link aveVariables Identifier
hi def link globalVariables Special
hi def link aveConst Special
hi def link aveClassMethods Function
hi def link aveOperator Operator
hi def link aveComment Comment
hi def link aveTypos Error
let b:current_syntax = "ave"
endif

75
syntax/avra.vim Normal file
View File

@@ -0,0 +1,75 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: AVR Assembler (AVRA)
" AVRA Home: http://avra.sourceforge.net/index.html
" AVRA Version: 1.3.0
" Last Update: 2016 Oct 7
" Maintainer: Marius Ghita <mhitza@gmail.com>
let s:cpo_save = &cpo
set cpo&vim
syn case ignore
syn keyword avraRegister r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14
syn keyword avraRegister r15 r16 r17 r18 r19 r20 r21 r22 r23 r24 r25 r26 r27
syn keyword avraRegister r28 r29 r30 r31
syn keyword avraInstr add adc adiw sub subi sbc sbci sbiw and andi or ori eor
syn keyword avraInstr com neg sbr cbr inc dec tst clr ser mul muls mulsu fmul
syn keyword avraInstr fmuls fmulsu des rjmp ijmp eijmp jmp rcall icall eicall
syn keyword avraInstr call ret reti cpse cp cpc cpi sbrc sbrs sbic sbis brbs
syn keyword avraInstr brbc breq brne brcs brcc brsh brlo brmi brpl brge brlt
syn keyword avraInstr brhs brhc brts brtc brvs brvc brie brid mov movw ldi lds
syn keyword avraInstr ld ldd sts st std lpm elpm spm in out push pop xch las
syn keyword avraInstr lac lat lsl lsr rol ror asr swap bset bclr sbi cbi bst bld
syn keyword avraInstr sec clc sen cln sez clz sei cli ses cls sev clv set clt
syn keyword avraInstr seh clh break nop sleep wdr
syn keyword avraDirective .byte .cseg .db .def .device .dseg .dw .endmacro .equ
syn keyword avraDirective .eseg .exit .include .list .listmac .macro .nolist
syn keyword avraDirective .org .set .define .undef .ifdef .ifndef .if .else
syn keyword avraDirective .elif .elseif .warning
syn keyword avraOperator low high byte2 byte3 byte4 lwrd hwrd page exp2 log2
syn match avraNumericOperator "[-*/+]"
syn match avraUnaryOperator "!"
syn match avraBinaryOperator "<<\|>>\|<\|<=\|>\|>=\|==\|!="
syn match avraBitwiseOperator "[~&^|]\|&&\|||"
syn match avraBinaryNumber "\<0[bB][0-1]*\>"
syn match avraHexNumber "\<0[xX][0-9a-fA-F]\+\>"
syn match avraDecNumber "\<\(0\|[1-9]\d*\)\>"
syn region avraComment start=";" end="$"
syn region avraString start="\"" end="\"\|$"
syn match avraLabel "^\s*[^; \t]\+:"
hi def link avraBinaryNumber avraNumber
hi def link avraHexNumber avraNumber
hi def link avraDecNumber avraNumber
hi def link avraNumericOperator avraOperator
hi def link avraUnaryOperator avraOperator
hi def link avraBinaryOperator avraOperator
hi def link avraBitwiseOperator avraOperator
hi def link avraOperator operator
hi def link avraComment comment
hi def link avraDirective preproc
hi def link avraRegister type
hi def link avraNumber constant
hi def link avraString String
hi def link avraInstr keyword
hi def link avraLabel label
let b:current_syntax = "avra"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

213
syntax/awk.vim Normal file
View File

@@ -0,0 +1,213 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: awk, nawk, gawk, mawk
" Maintainer: Antonio Colombo <azc100@gmail.com>
" Last Change: 2016 Sep 05
" AWK ref. is: Alfred V. Aho, Brian W. Kernighan, Peter J. Weinberger
" The AWK Programming Language, Addison-Wesley, 1988
" GAWK ref. is: Arnold D. Robbins
" Effective AWK Programming, Third Edition, O'Reilly, 2001
" Effective AWK Programming, Fourth Edition, O'Reilly, 2015
" (also available and updated with the gawk source distribution)
" MAWK is a "new awk" meaning it implements AWK ref.
" mawk conforms to the Posix 1003.2 (draft 11.3)
" definition of the AWK language which contains a few features
" not described in the AWK book, and mawk provides a small number of extensions.
" TODO:
" Dig into the commented out syntax expressions below.
" Quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" A bunch of useful Awk keywords
" AWK ref. p. 188
syn keyword awkStatement break continue delete exit
syn keyword awkStatement function getline next
syn keyword awkStatement print printf return
" GAWK ref. Chapter 7-9
syn keyword awkStatement switch nextfile
syn keyword awkStatement func
"
" GAWK ref. Chapter 9, Functions
" Numeric Functions
syn keyword awkFunction atan2 cos exp int intdiv log rand sin sqrt srand
" String Manipulation Functions
syn keyword awkFunction asort asort1 gensub gsub index length match
syn keyword awkFunction patsplit split sprintf strtonum sub substr
syn keyword awkFunction tolower toupper
" Input Output Functions
syn keyword awkFunction close fflush system
" Time Functions
syn keyword awkFunction mktime strftime systime
" Bit Manipulation Functions
syn keyword awkFunction and compl lshift or rshift xor
" Getting Type Functions
syn keyword awkFunction isarray typeof
" String-Translation Functions
syn keyword awkFunction bindtextdomain dcgettext dcngetext
syn keyword awkConditional if else
syn keyword awkRepeat while for do
syn keyword awkTodo contained TODO
syn keyword awkPatterns BEGIN END BEGINFILE ENDFILE
" GAWK ref. Chapter 7
" Built-in Variables That Control awk
syn keyword awkVariables BINMODE CONVFMT FIELDWIDTHS FPAT FS
syn keyword awkVariables IGNORECASE LINT OFMT OFS ORS PREC
syn keyword awkVariables ROUNDMODE RS SUBSEP TEXTDOMAIN
" Built-in Variables That Convey Information
syn keyword awkVariables ARGC ARGV ARGIND ENVIRON ERRNO FILENAME
syn keyword awkVariables FNR NF FUNCTAB NR PROCINFO RLENGTH RSTART
syn keyword awkVariables RT SYMTAB
" Arithmetic operators: +, and - take care of ++, and --
syn match awkOperator "+\|-\|\*\|/\|%\|="
syn match awkOperator "+=\|-=\|\*=\|/=\|%="
syn match awkOperator "\^\|\^="
" Octal format character.
syn match awkSpecialCharacter display contained "\\[0-7]\{1,3\}"
" Hex format character.
syn match awkSpecialCharacter display contained "\\x[0-9A-Fa-f]\+"
syn match awkFieldVars "\$\d\+"
" catch errors caused by wrong parenthesis
syn region awkParen transparent start="(" end=")" contains=ALLBUT,awkParenError,awkSpecialCharacter,awkArrayElement,awkArrayArray,awkTodo,awkRegExp,awkBrktRegExp,awkBrackets,awkCharClass,awkComment
syn match awkParenError display ")"
"syn match awkInParen display contained "[{}]"
" 64 lines for complex &&'s, and ||'s in a big "if"
syn sync ccomment awkParen maxlines=64
" Search strings & Regular Expressions therein.
syn region awkSearch oneline start="^[ \t]*/"ms=e start="\(,\|!\=\~\)[ \t]*/"ms=e skip="\\\\\|\\/" end="/" contains=awkBrackets,awkRegExp,awkSpecialCharacter
syn region awkBrackets contained start="\[\^\]\="ms=s+2 start="\[[^\^]"ms=s+1 end="\]"me=e-1 contains=awkBrktRegExp,awkCharClass
syn region awkSearch oneline start="[ \t]*/"hs=e skip="\\\\\|\\/" end="/" contains=awkBrackets,awkRegExp,awkSpecialCharacter
syn match awkCharClass contained "\[:[^:\]]*:\]"
syn match awkBrktRegExp contained "\\.\|.\-[^]]"
syn match awkRegExp contained "/\^"ms=s+1
syn match awkRegExp contained "\$/"me=e-1
syn match awkRegExp contained "[?.*{}|+]"
" String and Character constants
" Highlight special characters (those which have a backslash) differently
syn region awkString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=@Spell,awkSpecialCharacter,awkSpecialPrintf
syn match awkSpecialCharacter contained "\\."
" Some of these combinations may seem weird, but they work.
syn match awkSpecialPrintf contained "%[-+ #]*\d*\.\=\d*[cdefgiosuxEGX%]"
" Numbers, allowing signs (both -, and +)
" Integer number.
syn match awkNumber display "[+-]\=\<\d\+\>"
" Floating point number.
syn match awkFloat display "[+-]\=\<\d\+\.\d+\>"
" Floating point number, starting with a dot.
syn match awkFloat display "[+-]\=\<.\d+\>"
syn case ignore
"floating point number, with dot, optional exponent
syn match awkFloat display "\<\d\+\.\d*\(e[-+]\=\d\+\)\=\>"
"floating point number, starting with a dot, optional exponent
syn match awkFloat display "\.\d\+\(e[-+]\=\d\+\)\=\>"
"floating point number, without dot, with exponent
syn match awkFloat display "\<\d\+e[-+]\=\d\+\>"
syn case match
"syn match awkIdentifier "\<[a-zA-Z_][a-zA-Z0-9_]*\>"
" Comparison expressions.
syn match awkExpression "==\|>=\|=>\|<=\|=<\|\!="
syn match awkExpression "\~\|\!\~"
syn match awkExpression "?\|:"
syn keyword awkExpression in
" Boolean Logic (OR, AND, NOT)
syn match awkBoolLogic "||\|&&\|\!"
" This is overridden by less-than & greater-than.
" Put this above those to override them.
" Put this in a 'match "\<printf\=\>.*;\="' to make it not override
" less/greater than (most of the time), but it won't work yet because
" keywords always have precedence over match & region.
" File I/O: (print foo, bar > "filename") & for nawk (getline < "filename")
"syn match awkFileIO contained ">"
"syn match awkFileIO contained "<"
" Expression separators: ';' and ','
syn match awkSemicolon ";"
syn match awkComma ","
syn match awkComment "#.*" contains=@Spell,awkTodo
syn match awkLineSkip "\\$"
" Highlight array element's (recursive arrays allowed).
" Keeps nested array names' separate from normal array elements.
" Keeps numbers separate from normal array elements (variables).
syn match awkArrayArray contained "[^][, \t]\+\["me=e-1
syn match awkArrayElement contained "[^][, \t]\+"
syn region awkArray transparent start="\[" end="\]" contains=awkArray,awkArrayElement,awkArrayArray,awkNumber,awkFloat
" 10 should be enough.
" (for the few instances where it would be more than "oneline")
syn sync ccomment awkArray maxlines=10
" Define the default highlighting.
hi def link awkConditional Conditional
hi def link awkFunction Function
hi def link awkRepeat Repeat
hi def link awkStatement Statement
hi def link awkString String
hi def link awkSpecialPrintf Special
hi def link awkSpecialCharacter Special
hi def link awkSearch String
hi def link awkBrackets awkRegExp
hi def link awkBrktRegExp awkNestRegExp
hi def link awkCharClass awkNestRegExp
hi def link awkNestRegExp Keyword
hi def link awkRegExp Special
hi def link awkNumber Number
hi def link awkFloat Float
hi def link awkFileIO Special
hi def link awkOperator Special
hi def link awkExpression Special
hi def link awkBoolLogic Special
hi def link awkPatterns Special
hi def link awkVariables Special
hi def link awkFieldVars Special
hi def link awkLineSkip Special
hi def link awkSemicolon Special
hi def link awkComma Special
hi def link awkIdentifier Identifier
hi def link awkComment Comment
hi def link awkTodo Todo
" Change this if you want nested array names to be highlighted.
hi def link awkArrayArray awkArray
hi def link awkArrayElement Special
hi def link awkParenError awkError
hi def link awkInParen awkError
hi def link awkError Error
let b:current_syntax = "awk"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8
endif

79
syntax/ayacc.vim Normal file
View File

@@ -0,0 +1,79 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: AYacc
" Maintainer: Mathieu Clabaut <mathieu.clabaut@free.fr>
" LastChange: 2011 Dec 25
" Original: Yacc, maintained by Dr. Charles E. Campbell, Jr.
" Comment: Replaced sourcing c.vim file by ada.vim and rename yacc*
" in ayacc*
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" Read the Ada syntax to start with
runtime! syntax/ada.vim
unlet b:current_syntax
let s:cpo_save = &cpo
set cpo&vim
" Clusters
syn cluster ayaccActionGroup contains=ayaccDelim,cInParen,cTodo,cIncluded,ayaccDelim,ayaccCurlyError,ayaccUnionCurly,ayaccUnion,cUserLabel,cOctalZero,cCppOut2,cCppSkip,cErrInBracket,cErrInParen,cOctalError
syn cluster ayaccUnionGroup contains=ayaccKey,cComment,ayaccCurly,cType,cStructure,cStorageClass,ayaccUnionCurly
" Yacc stuff
syn match ayaccDelim "^[ \t]*[:|;]"
syn match ayaccOper "@\d\+"
syn match ayaccKey "^[ \t]*%\(token\|type\|left\|right\|start\|ident\)\>"
syn match ayaccKey "[ \t]%\(prec\|expect\|nonassoc\)\>"
syn match ayaccKey "\$\(<[a-zA-Z_][a-zA-Z_0-9]*>\)\=[\$0-9]\+"
syn keyword ayaccKeyActn yyerrok yyclearin
syn match ayaccUnionStart "^%union" skipwhite skipnl nextgroup=ayaccUnion
syn region ayaccUnion contained matchgroup=ayaccCurly start="{" matchgroup=ayaccCurly end="}" contains=@ayaccUnionGroup
syn region ayaccUnionCurly contained matchgroup=ayaccCurly start="{" matchgroup=ayaccCurly end="}" contains=@ayaccUnionGroup
syn match ayaccBrkt contained "[<>]"
syn match ayaccType "<[a-zA-Z_][a-zA-Z0-9_]*>" contains=ayaccBrkt
syn match ayaccDefinition "^[A-Za-z][A-Za-z0-9_]*[ \t]*:"
" special Yacc separators
syn match ayaccSectionSep "^[ \t]*%%"
syn match ayaccSep "^[ \t]*%{"
syn match ayaccSep "^[ \t]*%}"
" I'd really like to highlight just the outer {}. Any suggestions???
syn match ayaccCurlyError "[{}]"
syn region ayaccAction matchgroup=ayaccCurly start="{" end="}" contains=ALLBUT,@ayaccActionGroup
" Internal ayacc highlighting links
hi def link ayaccBrkt ayaccStmt
hi def link ayaccKey ayaccStmt
hi def link ayaccOper ayaccStmt
hi def link ayaccUnionStart ayaccKey
" External ayacc highlighting links
hi def link ayaccCurly Delimiter
hi def link ayaccCurlyError Error
hi def link ayaccDefinition Function
hi def link ayaccDelim Function
hi def link ayaccKeyActn Special
hi def link ayaccSectionSep Todo
hi def link ayaccSep Delimiter
hi def link ayaccStmt Statement
hi def link ayaccType Type
" since Bram doesn't like my Delimiter :|
hi def link Delimiter Type
let b:current_syntax = "ayacc"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=15
endif

118
syntax/b.vim Normal file
View File

@@ -0,0 +1,118 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: B (A Formal Method with refinement and mathematical proof)
" Maintainer: Mathieu Clabaut <mathieu.clabaut@gmail.com>
" Contributor: Csaba Hoch
" LastChange: 8 Dec 2007
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" A bunch of useful B keywords
syn keyword bStatement MACHINE MODEL SEES OPERATIONS INCLUDES DEFINITIONS CONSTRAINTS CONSTANTS VARIABLES CONCRETE_CONSTANTS CONCRETE_VARIABLES ABSTRACT_CONSTANTS ABSTRACT_VARIABLES HIDDEN_CONSTANTS HIDDEN_VARIABLES ASSERT ASSERTIONS EXTENDS IMPLEMENTATION REFINEMENT IMPORTS USES INITIALISATION INVARIANT PROMOTES PROPERTIES REFINES SETS VALUES VARIANT VISIBLE_CONSTANTS VISIBLE_VARIABLES THEORY XLS THEOREMS LOCAL_OPERATIONS
syn keyword bLabel CASE IN EITHER OR CHOICE DO OF
syn keyword bConditional IF ELSE SELECT ELSIF THEN WHEN
syn keyword bRepeat WHILE FOR
syn keyword bOps bool card conc closure closure1 dom first fnc front not or id inter iseq iseq1 iterate last max min mod perm pred prj1 prj2 ran rel rev seq seq1 size skip succ tail union
syn keyword bKeywords LET VAR BE IN BEGIN END POW POW1 FIN FIN1 PRE SIGMA STRING UNION IS ANY WHERE
syn keyword bBoolean TRUE FALSE bfalse btrue
syn keyword bConstant PI MAXINT MININT User_Pass PatchProver PatchProverH0 PatchProverB0 FLAT ARI DED SUB RES
syn keyword bGuard binhyp band bnot bguard bsearch bflat bfresh bguardi bget bgethyp barith bgetresult bresult bgoal bmatch bmodr bnewv bnum btest bpattern bprintf bwritef bsubfrm bvrb blvar bcall bappend bclose
syn keyword bLogic or not
syn match bLogic "\(!\|#\|%\|&\|+->>\|+->\|-->>\|->>\|-->\|->\|/:\|/<:\|/<<:\|/=\|/\\\|/|\\\|::\|:\|;:\|<+\|<->\|<--\|<-\|<:\|<<:\|<<|\|<=>\|<|\|==\|=>\|>+>>\|>->\|>+>\|||\||->\)"
syn match bNothing /:=/
syn keyword cTodo contained TODO FIXME XXX
" String and Character constants
" Highlight special characters (those which have a backslash) differently
syn match bSpecial contained "\\[0-7][0-7][0-7]\=\|\\."
syn region bString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=bSpecial
syn match bCharacter "'[^\\]'"
syn match bSpecialCharacter "'\\.'"
syn match bSpecialCharacter "'\\[0-7][0-7]'"
syn match bSpecialCharacter "'\\[0-7][0-7][0-7]'"
"catch errors caused by wrong parenthesis
syn region bParen transparent start='(' end=')' contains=ALLBUT,bParenError,bIncluded,bSpecial,bTodo,bUserLabel,bBitField
syn match bParenError ")"
syn match bInParen contained "[{}]"
"integer number, or floating point number without a dot and with "f".
syn case ignore
syn match bNumber "\<[0-9]\+\>"
"syn match bIdentifier "\<[a-z_][a-z0-9_]*\>"
syn case match
syn region bComment start="/\*" end="\*/" contains=bTodo
syn match bComment "//.*" contains=bTodo
syntax match bCommentError "\*/"
syn keyword bType INT INTEGER BOOL NAT NATURAL NAT1 NATURAL1
syn region bPreCondit start="^\s*#\s*\(if\>\|ifdef\>\|ifndef\>\|elif\>\|else\>\|endif\>\)" skip="\\$" end="$" contains=bComment,bString,bCharacter,bNumber,bCommentError
syn region bIncluded contained start=+"+ skip=+\\\\\|\\"+ end=+"+
syn match bIncluded contained "<[^>]*>"
syn match bInclude "^\s*#\s*include\>\s*["<]" contains=bIncluded
syn region bDefine start="^\s*#\s*\(define\>\|undef\>\)" skip="\\$" end="$" contains=ALLBUT,bPreCondit,bIncluded,bInclude,bDefine,bInParen
syn region bPreProc start="^\s*#\s*\(pragma\>\|line\>\|warning\>\|warn\>\|error\>\)" skip="\\$" end="$" contains=ALLBUT,bPreCondit,bIncluded,bInclude,bDefine,bInParen
syn sync ccomment bComment minlines=10
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
" The default methods for highlighting. Can be overridden later
hi def link bLabel Label
hi def link bUserLabel Label
hi def link bConditional Conditional
hi def link bRepeat Repeat
hi def link bLogic Special
hi def link bCharacter Character
hi def link bSpecialCharacter bSpecial
hi def link bNumber Number
hi def link bFloat Float
hi def link bOctalError bError
hi def link bParenError bError
" hi def link bInParen bError
hi def link bCommentError bError
hi def link bBoolean Identifier
hi def link bConstant Identifier
hi def link bGuard Identifier
hi def link bOperator Operator
hi def link bKeywords Operator
hi def link bOps Identifier
hi def link bStructure Structure
hi def link bStorageClass StorageClass
hi def link bInclude Include
hi def link bPreProc PreProc
hi def link bDefine Macro
hi def link bIncluded bString
hi def link bError Error
hi def link bStatement Statement
hi def link bPreCondit PreCondit
hi def link bType Type
hi def link bCommentError bError
hi def link bCommentString bString
hi def link bComment2String bString
hi def link bCommentSkip bComment
hi def link bString String
hi def link bComment Comment
hi def link bSpecial SpecialChar
hi def link bTodo Todo
"hi link bIdentifier Identifier
let b:current_syntax = "b"
" vim: ts=8
endif

1921
syntax/baan.vim Normal file

File diff suppressed because it is too large Load Diff

170
syntax/basic.vim Normal file
View File

@@ -0,0 +1,170 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: BASIC
" Maintainer: Allan Kelly <allan@fruitloaf.co.uk>
" Last Change: 2011 Dec 25 by Thilo Six
" First version based on Micro$soft QBASIC circa 1989, as documented in
" 'Learn BASIC Now' by Halvorson&Rygmyr. Microsoft Press 1989.
" This syntax file not a complete implementation yet. Send suggestions to the
" maintainer.
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" A bunch of useful BASIC keywords
syn keyword basicStatement BEEP beep Beep BLOAD bload Bload BSAVE bsave Bsave
syn keyword basicStatement CALL call Call ABSOLUTE absolute Absolute
syn keyword basicStatement CHAIN chain Chain CHDIR chdir Chdir
syn keyword basicStatement CIRCLE circle Circle CLEAR clear Clear
syn keyword basicStatement CLOSE close Close CLS cls Cls COLOR color Color
syn keyword basicStatement COM com Com COMMON common Common
syn keyword basicStatement CONST const Const DATA data Data
syn keyword basicStatement DECLARE declare Declare DEF def Def
syn keyword basicStatement DEFDBL defdbl Defdbl DEFINT defint Defint
syn keyword basicStatement DEFLNG deflng Deflng DEFSNG defsng Defsng
syn keyword basicStatement DEFSTR defstr Defstr DIM dim Dim
syn keyword basicStatement DO do Do LOOP loop Loop
syn keyword basicStatement DRAW draw Draw END end End
syn keyword basicStatement ENVIRON environ Environ ERASE erase Erase
syn keyword basicStatement ERROR error Error EXIT exit Exit
syn keyword basicStatement FIELD field Field FILES files Files
syn keyword basicStatement FOR for For NEXT next Next
syn keyword basicStatement FUNCTION function Function GET get Get
syn keyword basicStatement GOSUB gosub Gosub GOTO goto Goto
syn keyword basicStatement IF if If THEN then Then ELSE else Else
syn keyword basicStatement INPUT input Input INPUT# input# Input#
syn keyword basicStatement IOCTL ioctl Ioctl KEY key Key
syn keyword basicStatement KILL kill Kill LET let Let
syn keyword basicStatement LINE line Line LOCATE locate Locate
syn keyword basicStatement LOCK lock Lock UNLOCK unlock Unlock
syn keyword basicStatement LPRINT lprint Lprint USING using Using
syn keyword basicStatement LSET lset Lset MKDIR mkdir Mkdir
syn keyword basicStatement NAME name Name ON on On
syn keyword basicStatement ERROR error Error OPEN open Open
syn keyword basicStatement OPTION option Option BASE base Base
syn keyword basicStatement OUT out Out PAINT paint Paint
syn keyword basicStatement PALETTE palette Palette PCOPY pcopy Pcopy
syn keyword basicStatement PEN pen Pen PLAY play Play
syn keyword basicStatement PMAP pmap Pmap POKE poke Poke
syn keyword basicStatement PRESET preset Preset PRINT print Print
syn keyword basicStatement PRINT# print# Print# USING using Using
syn keyword basicStatement PSET pset Pset PUT put Put
syn keyword basicStatement RANDOMIZE randomize Randomize READ read Read
syn keyword basicStatement REDIM redim Redim RESET reset Reset
syn keyword basicStatement RESTORE restore Restore RESUME resume Resume
syn keyword basicStatement RETURN return Return RMDIR rmdir Rmdir
syn keyword basicStatement RSET rset Rset RUN run Run
syn keyword basicStatement SEEK seek Seek SELECT select Select
syn keyword basicStatement CASE case Case SHARED shared Shared
syn keyword basicStatement SHELL shell Shell SLEEP sleep Sleep
syn keyword basicStatement SOUND sound Sound STATIC static Static
syn keyword basicStatement STOP stop Stop STRIG strig Strig
syn keyword basicStatement SUB sub Sub SWAP swap Swap
syn keyword basicStatement SYSTEM system System TIMER timer Timer
syn keyword basicStatement TROFF troff Troff TRON tron Tron
syn keyword basicStatement TYPE type Type UNLOCK unlock Unlock
syn keyword basicStatement VIEW view View WAIT wait Wait
syn keyword basicStatement WHILE while While WEND wend Wend
syn keyword basicStatement WIDTH width Width WINDOW window Window
syn keyword basicStatement WRITE write Write DATE$ date$ Date$
syn keyword basicStatement MID$ mid$ Mid$ TIME$ time$ Time$
syn keyword basicFunction ABS abs Abs ASC asc Asc
syn keyword basicFunction ATN atn Atn CDBL cdbl Cdbl
syn keyword basicFunction CINT cint Cint CLNG clng Clng
syn keyword basicFunction COS cos Cos CSNG csng Csng
syn keyword basicFunction CSRLIN csrlin Csrlin CVD cvd Cvd
syn keyword basicFunction CVDMBF cvdmbf Cvdmbf CVI cvi Cvi
syn keyword basicFunction CVL cvl Cvl CVS cvs Cvs
syn keyword basicFunction CVSMBF cvsmbf Cvsmbf EOF eof Eof
syn keyword basicFunction ERDEV erdev Erdev ERL erl Erl
syn keyword basicFunction ERR err Err EXP exp Exp
syn keyword basicFunction FILEATTR fileattr Fileattr FIX fix Fix
syn keyword basicFunction FRE fre Fre FREEFILE freefile Freefile
syn keyword basicFunction INP inp Inp INSTR instr Instr
syn keyword basicFunction INT int Int LBOUND lbound Lbound
syn keyword basicFunction LEN len Len LOC loc Loc
syn keyword basicFunction LOF lof Lof LOG log Log
syn keyword basicFunction LPOS lpos Lpos PEEK peek Peek
syn keyword basicFunction PEN pen Pen POINT point Point
syn keyword basicFunction POS pos Pos RND rnd Rnd
syn keyword basicFunction SADD sadd Sadd SCREEN screen Screen
syn keyword basicFunction SEEK seek Seek SETMEM setmem Setmem
syn keyword basicFunction SGN sgn Sgn SIN sin Sin
syn keyword basicFunction SPC spc Spc SQR sqr Sqr
syn keyword basicFunction STICK stick Stick STRIG strig Strig
syn keyword basicFunction TAB tab Tab TAN tan Tan
syn keyword basicFunction UBOUND ubound Ubound VAL val Val
syn keyword basicFunction VALPTR valptr Valptr VALSEG valseg Valseg
syn keyword basicFunction VARPTR varptr Varptr VARSEG varseg Varseg
syn keyword basicFunction CHR$ Chr$ chr$ COMMAND$ command$ Command$
syn keyword basicFunction DATE$ date$ Date$ ENVIRON$ environ$ Environ$
syn keyword basicFunction ERDEV$ erdev$ Erdev$ HEX$ hex$ Hex$
syn keyword basicFunction INKEY$ inkey$ Inkey$ INPUT$ input$ Input$
syn keyword basicFunction IOCTL$ ioctl$ Ioctl$ LCASES$ lcases$ Lcases$
syn keyword basicFunction LAFT$ laft$ Laft$ LTRIM$ ltrim$ Ltrim$
syn keyword basicFunction MID$ mid$ Mid$ MKDMBF$ mkdmbf$ Mkdmbf$
syn keyword basicFunction MKD$ mkd$ Mkd$ MKI$ mki$ Mki$
syn keyword basicFunction MKL$ mkl$ Mkl$ MKSMBF$ mksmbf$ Mksmbf$
syn keyword basicFunction MKS$ mks$ Mks$ OCT$ oct$ Oct$
syn keyword basicFunction RIGHT$ right$ Right$ RTRIM$ rtrim$ Rtrim$
syn keyword basicFunction SPACE$ space$ Space$ STR$ str$ Str$
syn keyword basicFunction STRING$ string$ String$ TIME$ time$ Time$
syn keyword basicFunction UCASE$ ucase$ Ucase$ VARPTR$ varptr$ Varptr$
syn keyword basicTodo contained TODO
"integer number, or floating point number without a dot.
syn match basicNumber "\<\d\+\>"
"floating point number, with dot
syn match basicNumber "\<\d\+\.\d*\>"
"floating point number, starting with a dot
syn match basicNumber "\.\d\+\>"
" String and Character contstants
syn match basicSpecial contained "\\\d\d\d\|\\."
syn region basicString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=basicSpecial
syn region basicComment start="REM" end="$" contains=basicTodo
syn region basicComment start="^[ \t]*'" end="$" contains=basicTodo
syn region basicLineNumber start="^\d" end="\s"
syn match basicTypeSpecifier "[a-zA-Z0-9][\$%&!#]"ms=s+1
" Used with OPEN statement
syn match basicFilenumber "#\d\+"
"syn sync ccomment basicComment
" syn match basicMathsOperator "[<>+\*^/\\=-]"
syn match basicMathsOperator "-\|=\|[:<>+\*^/\\]\|AND\|OR"
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link basicLabel Label
hi def link basicConditional Conditional
hi def link basicRepeat Repeat
hi def link basicLineNumber Comment
hi def link basicNumber Number
hi def link basicError Error
hi def link basicStatement Statement
hi def link basicString String
hi def link basicComment Comment
hi def link basicSpecial Special
hi def link basicTodo Todo
hi def link basicFunction Identifier
hi def link basicTypeSpecifier Type
hi def link basicFilenumber basicTypeSpecifier
"hi basicMathsOperator term=bold cterm=bold gui=bold
let b:current_syntax = "basic"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8
endif

70
syntax/bc.vim Normal file
View File

@@ -0,0 +1,70 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: bc - An arbitrary precision calculator language
" Maintainer: Vladimir Scholtz <vlado@gjh.sk>
" Last change: 2012 Jun 01
" (Dominique Pelle added @Spell)
" Available on: www.gjh.sk/~vlado/bc.vim
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case ignore
" Keywords
syn keyword bcKeyword if else while for break continue return limits halt quit
syn keyword bcKeyword define
syn keyword bcKeyword length read sqrt print
" Variable
syn keyword bcType auto
" Constant
syn keyword bcConstant scale ibase obase last
syn keyword bcConstant BC_BASE_MAX BC_DIM_MAX BC_SCALE_MAX BC_STRING_MAX
syn keyword bcConstant BC_ENV_ARGS BC_LINE_LENGTH
" Any other stuff
syn match bcIdentifier "[a-z_][a-z0-9_]*"
" String
syn match bcString "\"[^"]*\"" contains=@Spell
" Number
syn match bcNumber "[0-9]\+"
" Comment
syn match bcComment "\#.*" contains=@Spell
syn region bcComment start="/\*" end="\*/" contains=@Spell
" Parent ()
syn cluster bcAll contains=bcList,bcIdentifier,bcNumber,bcKeyword,bcType,bcConstant,bcString,bcParentError
syn region bcList matchgroup=Delimiter start="(" skip="|.\{-}|" matchgroup=Delimiter end=")" contains=@bcAll
syn region bcList matchgroup=Delimiter start="\[" skip="|.\{-}|" matchgroup=Delimiter end="\]" contains=@bcAll
syn match bcParenError "]"
syn match bcParenError ")"
syn case match
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link bcKeyword Statement
hi def link bcType Type
hi def link bcConstant Constant
hi def link bcNumber Number
hi def link bcComment Comment
hi def link bcString String
hi def link bcSpecialChar SpecialChar
hi def link bcParenError Error
let b:current_syntax = "bc"
" vim: ts=8
endif

101
syntax/bdf.vim Normal file
View File

@@ -0,0 +1,101 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: BDF font definition
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2006-04-19
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn region bdfFontDefinition transparent matchgroup=bdfKeyword
\ start='^STARTFONT\>' end='^ENDFONT\>'
\ contains=bdfComment,bdfFont,bdfSize,
\ bdfBoundingBox,bdfProperties,bdfChars,bdfChar
syn match bdfNumber contained display
\ '\<\%(\x\+\|[+-]\=\d\+\%(\.\d\+\)*\)'
syn keyword bdfTodo contained FIXME TODO XXX NOTE
syn region bdfComment contained start='^COMMENT\>' end='$'
\ contains=bdfTodo,@Spell
syn region bdfFont contained matchgroup=bdfKeyword
\ start='^FONT\>' end='$'
syn region bdfSize contained transparent matchgroup=bdfKeyword
\ start='^SIZE\>' end='$' contains=bdfNumber
syn region bdfBoundingBox contained transparent matchgroup=bdfKeyword
\ start='^FONTBOUNDINGBOX' end='$'
\ contains=bdfNumber
syn region bdfProperties contained transparent matchgroup=bdfKeyword
\ start='^STARTPROPERTIES' end='^ENDPROPERTIES'
\ contains=bdfNumber,bdfString,bdfProperty,
\ bdfXProperty
syn keyword bdfProperty contained FONT_ASCENT FONT_DESCENT DEFAULT_CHAR
syn match bdfProperty contained '^\S\+'
syn keyword bdfXProperty contained FONT_ASCENT FONT_DESCENT DEFAULT_CHAR
\ FONTNAME_REGISTRY FOUNDRY FAMILY_NAME
\ WEIGHT_NAME SLANT SETWIDTH_NAME PIXEL_SIZE
\ POINT_SIZE RESOLUTION_X RESOLUTION_Y SPACING
\ CHARSET_REGISTRY CHARSET_ENCODING COPYRIGHT
\ ADD_STYLE_NAME WEIGHT RESOLUTION X_HEIGHT
\ QUAD_WIDTH FONT AVERAGE_WIDTH
syn region bdfString contained start=+"+ skip=+""+ end=+"+
syn region bdfChars contained display transparent
\ matchgroup=bdfKeyword start='^CHARS' end='$'
\ contains=bdfNumber
syn region bdfChar transparent matchgroup=bdfKeyword
\ start='^STARTCHAR' end='^ENDCHAR'
\ contains=bdfEncoding,bdfWidth,bdfAttributes,
\ bdfBitmap
syn region bdfEncoding contained transparent matchgroup=bdfKeyword
\ start='^ENCODING' end='$' contains=bdfNumber
syn region bdfWidth contained transparent matchgroup=bdfKeyword
\ start='^SWIDTH\|DWIDTH\|BBX' end='$'
\ contains=bdfNumber
syn region bdfAttributes contained transparent matchgroup=bdfKeyword
\ start='^ATTRIBUTES' end='$'
syn keyword bdfBitmap contained BITMAP
if exists("bdf_minlines")
let b:bdf_minlines = bdf_minlines
else
let b:bdf_minlines = 30
endif
exec "syn sync ccomment bdfChar minlines=" . b:bdf_minlines
hi def link bdfKeyword Keyword
hi def link bdfNumber Number
hi def link bdfTodo Todo
hi def link bdfComment Comment
hi def link bdfFont String
hi def link bdfProperty Identifier
hi def link bdfXProperty Identifier
hi def link bdfString String
hi def link bdfChars Keyword
hi def link bdfBitmap Keyword
let b:current_syntax = "bdf"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

122
syntax/bib.vim Normal file
View File

@@ -0,0 +1,122 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: BibTeX (bibliographic database format for (La)TeX)
" Maintainer: Bernd Feige <Bernd.Feige@gmx.net>
" Filenames: *.bib
" Last Change: 2016 Sep 12
" Thanks to those who pointed out problems with this file or supplied fixes!
" Initialization
" ==============
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" Ignore case
syn case ignore
" Keywords
" ========
syn keyword bibType contained article book booklet conference inbook
syn keyword bibType contained incollection inproceedings manual
syn keyword bibType contained mastersthesis misc phdthesis
syn keyword bibType contained proceedings techreport unpublished
syn keyword bibType contained string preamble
syn keyword bibEntryKw contained address annote author booktitle chapter
syn keyword bibEntryKw contained crossref edition editor howpublished
syn keyword bibEntryKw contained institution journal key month note
syn keyword bibEntryKw contained number organization pages publisher
syn keyword bibEntryKw contained school series title type volume year
" biblatex keywords, cf. http://mirrors.ctan.org/macros/latex/contrib/biblatex/doc/biblatex.pdf
syn keyword bibType contained mvbook bookinbook suppbook collection mvcollection suppcollection
syn keyword bibType contained online patent periodical suppperiodical mvproceedings reference
syn keyword bibType contained mvreference inreference report set thesis xdata customa customb
syn keyword bibType contained customc customd custome customf electronic www artwork audio bibnote
syn keyword bibType contained commentary image jurisdiction legislation legal letter movie music
syn keyword bibType contained performance review software standard video
syn keyword bibEntryKw contained abstract isbn issn keywords url
syn keyword bibEntryKw contained addendum afterwordannotation annotation annotator authortype
syn keyword bibEntryKw contained bookauthor bookpagination booksubtitle booktitleaddon
syn keyword bibEntryKw contained commentator date doi editora editorb editorc editortype
syn keyword bibEntryKw contained editoratype editorbtype editorctype eid entrysubtype
syn keyword bibEntryKw contained eprint eprintclass eprinttype eventdate eventtitle
syn keyword bibEntryKw contained eventtitleaddon file foreword holder indextitle
syn keyword bibEntryKw contained introduction isan ismn isrn issue issuesubtitle
syn keyword bibEntryKw contained issuetitle iswc journalsubtitle journaltitle label
syn keyword bibEntryKw contained language library location mainsubtitle maintitle
syn keyword bibEntryKw contained maintitleaddon nameaddon origdate origlanguage
syn keyword bibEntryKw contained origlocation origpublisher origtitle pagetotal
syn keyword bibEntryKw contained pagination part pubstate reprinttitle shortauthor
syn keyword bibEntryKw contained shorteditor shorthand shorthandintro shortjournal
syn keyword bibEntryKw contained shortseries shorttitle subtitle titleaddon translator
syn keyword bibEntryKw contained urldate venue version volumes entryset execute gender
syn keyword bibEntryKw contained langid langidopts ids indexsorttitle options presort
syn keyword bibEntryKw contained related relatedoptions relatedtype relatedstring
syn keyword bibEntryKw contained sortkey sortname sortshorthand sorttitle sortyear xdata
syn keyword bibEntryKw contained xref namea nameb namec nameatype namebtype namectype
syn keyword bibEntryKw contained lista listb listc listd liste listf usera userb userc
syn keyword bibEntryKw contained userd usere userf verba verbb verbc archiveprefix pdf
syn keyword bibEntryKw contained primaryclass
" Non-standard:
" AMS mref http://www.ams.org/mref
syn keyword bibNSEntryKw contained mrclass mrnumber mrreviewer fjournal coden
" Clusters
" ========
syn cluster bibVarContents contains=bibUnescapedSpecial,bibBrace,bibParen,bibMath
" This cluster is empty but things can be added externally:
"syn cluster bibCommentContents
" Matches
" =======
syn match bibUnescapedSpecial contained /[^\\][%&]/hs=s+1
syn match bibKey contained /\s*[^ \t}="]\+,/hs=s,he=e-1 nextgroup=bibField
syn match bibVariable contained /[^{}," \t=]/
syn region bibComment start=/./ end=/^\s*@/me=e-1 contains=@bibCommentContents nextgroup=bibEntry
syn region bibMath contained start=/\$/ end=/\$/ skip=/\(\\\$\)/
syn region bibQuote contained start=/"/ end=/"/ skip=/\(\\"\)/ contains=@bibVarContents
syn region bibBrace contained start=/{/ end=/}/ skip=/\(\\[{}]\)/ contains=@bibVarContents
syn region bibParen contained start=/(/ end=/)/ skip=/\(\\[()]\)/ contains=@bibVarContents
syn region bibField contained start="\S\+\s*=\s*" end=/[}),]/me=e-1 contains=bibEntryKw,bibNSEntryKw,bibBrace,bibParen,bibQuote,bibVariable
syn region bibEntryData contained start=/[{(]/ms=e+1 end=/[})]/me=e-1 contains=bibKey,bibField
" Actually, 5.8 <= Vim < 6.0 would ignore the `fold' keyword anyway, but Vim<5.8 would produce
" an error, so we explicitly distinguish versions with and without folding functionality:
syn region bibEntry start=/@\S\+\s*[{(]/ end=/^\s*[})]/ transparent fold contains=bibType,bibEntryData nextgroup=bibComment
syn region bibComment2 start=/@Comment\s*[{(]/ end=/^\s*[})]/me=e-1 contains=@bibCommentContents nextgroup=bibEntry
" Synchronization
" ===============
syn sync match All grouphere bibEntry /^\s*@/
syn sync maxlines=200
syn sync minlines=50
" Highlighting defaults
" =====================
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link bibType Identifier
hi def link bibEntryKw Statement
hi def link bibNSEntryKw PreProc
hi def link bibKey Special
hi def link bibVariable Constant
hi def link bibUnescapedSpecial Error
hi def link bibComment Comment
hi def link bibComment2 Comment
let b:current_syntax = "bib"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

101
syntax/bindzone.vim Normal file
View File

@@ -0,0 +1,101 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: BIND zone files (RFC 1035)
" Maintainer: Julian Mehnle <julian@mehnle.net>
" URL: http://www.mehnle.net/source/odds+ends/vim/syntax/
" Last Change: Thu 2011-07-16 20:42:00 UTC
"
" Based on an earlier version by Вячеслав Горбанев (Slava Gorbanev), with
" heavy modifications.
"
" $Id: bindzone.vim 12 2011-07-16 21:09:57Z julian $
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case match
" Directives
syn region zoneRRecord start=/^/ end=/$/ contains=zoneOwnerName,zoneSpecial,zoneTTL,zoneClass,zoneRRType,zoneComment,zoneUnknown
syn match zoneDirective /^\$ORIGIN\s\+/ nextgroup=zoneOrigin,zoneUnknown
syn match zoneDirective /^\$TTL\s\+/ nextgroup=zoneTTL,zoneUnknown
syn match zoneDirective /^\$INCLUDE\s\+/ nextgroup=zoneText,zoneUnknown
syn match zoneDirective /^\$GENERATE\s/
syn match zoneUnknown contained /\S\+/
syn match zoneOwnerName contained /^[^[:space:]!"#$%&'()*+,\/:;<=>?@[\]\^`{|}~]\+\(\s\|;\)\@=/ nextgroup=zoneTTL,zoneClass,zoneRRType skipwhite
syn match zoneOrigin contained /[^[:space:]!"#$%&'()*+,\/:;<=>?@[\]\^`{|}~]\+\(\s\|;\|$\)\@=/
syn match zoneDomain contained /[^[:space:]!"#$%&'()*+,\/:;<=>?@[\]\^`{|}~]\+\(\s\|;\|$\)\@=/
syn match zoneSpecial contained /^[@*.]\s/
syn match zoneTTL contained /\s\@<=\d[0-9WwDdHhMmSs]*\(\s\|$\)\@=/ nextgroup=zoneClass,zoneRRType skipwhite
syn keyword zoneClass contained IN CHAOS nextgroup=zoneRRType,zoneTTL skipwhite
syn keyword zoneRRType contained A AAAA CNAME DNAME HINFO MX NS PTR SOA SRV TXT SPF nextgroup=zoneRData skipwhite
syn match zoneRData contained /[^;]*/ contains=zoneDomain,zoneIPAddr,zoneIP6Addr,zoneText,zoneNumber,zoneParen,zoneUnknown
syn match zoneIPAddr contained /\<[0-9]\{1,3}\(\.[0-9]\{1,3}\)\{,3}\>/
" Plain IPv6 address IPv6-embedded-IPv4 address
" 1111:2:3:4:5:6:7:8 1111:2:3:4:5:6:127.0.0.1
syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{6}\(\x\{1,4}:\x\{1,4}\|\([0-2]\?\d\{1,2}\.\)\{3}[0-2]\?\d\{1,2}\)\>/
" ::[...:]8 ::[...:]127.0.0.1
syn match zoneIP6Addr contained /\s\@<=::\(\(\x\{1,4}:\)\{,6}\x\{1,4}\|\(\x\{1,4}:\)\{,5}\([0-2]\?\d\{1,2}\.\)\{3}[0-2]\?\d\{1,2}\)\>/
" 1111::[...:]8 1111::[...:]127.0.0.1
syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{1}:\(\(\x\{1,4}:\)\{,5}\x\{1,4}\|\(\x\{1,4}:\)\{,4}\([0-2]\?\d\{1,2}\.\)\{3}[0-2]\?\d\{1,2}\)\>/
" 1111:2::[...:]8 1111:2::[...:]127.0.0.1
syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{2}:\(\(\x\{1,4}:\)\{,4}\x\{1,4}\|\(\x\{1,4}:\)\{,3}\([0-2]\?\d\{1,2}\.\)\{3}[0-2]\?\d\{1,2}\)\>/
" 1111:2:3::[...:]8 1111:2:3::[...:]127.0.0.1
syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{3}:\(\(\x\{1,4}:\)\{,3}\x\{1,4}\|\(\x\{1,4}:\)\{,2}\([0-2]\?\d\{1,2}\.\)\{3}[0-2]\?\d\{1,2}\)\>/
" 1111:2:3:4::[...:]8 1111:2:3:4::[...:]127.0.0.1
syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{4}:\(\(\x\{1,4}:\)\{,2}\x\{1,4}\|\(\x\{1,4}:\)\{,1}\([0-2]\?\d\{1,2}\.\)\{3}[0-2]\?\d\{1,2}\)\>/
" 1111:2:3:4:5::[...:]8 1111:2:3:4:5::127.0.0.1
syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{5}:\(\(\x\{1,4}:\)\{,1}\x\{1,4}\|\([0-2]\?\d\{1,2}\.\)\{3}[0-2]\?\d\{1,2}\)\>/
" 1111:2:3:4:5:6::8 -
syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{6}:\x\{1,4}\>/
" 1111[:...]:: -
syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{1,7}:\(\s\|;\|$\)\@=/
syn match zoneText contained /"\([^"\\]\|\\.\)*"\(\s\|;\|$\)\@=/
syn match zoneNumber contained /\<[0-9]\+\(\s\|;\|$\)\@=/
syn match zoneSerial contained /\<[0-9]\{9,10}\(\s\|;\|$\)\@=/
syn match zoneErrParen /)/
syn region zoneParen contained start="(" end=")" contains=zoneSerial,zoneTTL,zoneNumber,zoneComment
syn match zoneComment /;.*/
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link zoneDirective Macro
hi def link zoneUnknown Error
hi def link zoneOrigin Statement
hi def link zoneOwnerName Statement
hi def link zoneDomain Identifier
hi def link zoneSpecial Special
hi def link zoneTTL Constant
hi def link zoneClass Include
hi def link zoneRRType Type
hi def link zoneIPAddr Number
hi def link zoneIP6Addr Number
hi def link zoneText String
hi def link zoneNumber Number
hi def link zoneSerial Special
hi def link zoneErrParen Error
hi def link zoneComment Comment
let b:current_syntax = "bindzone"
" vim:sts=2 sw=2
endif

43
syntax/blank.vim Normal file
View File

@@ -0,0 +1,43 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Blank 1.4.1
" Maintainer: Rafal M. Sulejman <unefunge@friko2.onet.pl>
" Last change: 2011 Dec 28 by Thilo Six
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn case ignore
" Blank instructions
syn match blankInstruction "{[:;,\.+\-*$#@/\\`'"!\|><{}\[\]()?xspo\^&\~=_%]}"
" Common strings
syn match blankString "\~[^}]"
" Numbers
syn match blankNumber "\[[0-9]\+\]"
syn case match
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link blankInstruction Statement
hi def link blankNumber Number
hi def link blankString String
let b:current_syntax = "blank"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8
endif

74
syntax/bst.vim Normal file
View File

@@ -0,0 +1,74 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: BibTeX Bibliography Style
" Maintainer: Tim Pope <vimNOSPAM@tpope.info>
" Filenames: *.bst
" $Id: bst.vim,v 1.2 2007/05/05 18:24:42 vimboss Exp $
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
setlocal iskeyword=48-57,#,$,',.,A-Z,a-z
syn case ignore
syn match bstString +"[^"]*\%("\|$\)+ contains=bstField,bstType,bstError
" Highlight the last character of an unclosed string, but only when the cursor
" is not beyond it (i.e., it is still being edited). Imperfect.
syn match bstError '[^"]\%#\@!$' contained
syn match bstNumber "#-\=\d\+\>"
syn keyword bstNumber entry.max$ global.max$
syn match bstComment "%.*"
syn keyword bstCommand ENTRY FUNCTION INTEGERS MACRO STRINGS
syn keyword bstCommand READ EXECUTE ITERATE REVERSE SORT
syn match bstBuiltIn "\s[-<>=+*]\|\s:="
syn keyword bstBuiltIn add.period$
syn keyword bstBuiltIn call.type$ change.case$ chr.to.int$ cite$
syn keyword bstBuiltIn duplicate$ empty$ format.name$
syn keyword bstBuiltIn if$ int.to.chr$ int.to.str$
syn keyword bstBuiltIn missing$
syn keyword bstBuiltIn newline$ num.names$
syn keyword bstBuiltIn pop$ preamble$ purify$ quote$
syn keyword bstBuiltIn skip$ stack$ substring$ swap$
syn keyword bstBuiltIn text.length$ text.prefix$ top$ type$
syn keyword bstBuiltIn warning$ while$ width$ write$
syn match bstIdentifier "'\k*"
syn keyword bstType article book booklet conference
syn keyword bstType inbook incollection inproceedings
syn keyword bstType manual mastersthesis misc
syn keyword bstType phdthesis proceedings
syn keyword bstType techreport unpublished
syn keyword bstField abbr address annote author
syn keyword bstField booktitle chapter crossref comment
syn keyword bstField edition editor
syn keyword bstField howpublished institution journal key month
syn keyword bstField note number
syn keyword bstField organization
syn keyword bstField pages publisher
syn keyword bstField school series
syn keyword bstField title type
syn keyword bstField volume year
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link bstComment Comment
hi def link bstString String
hi def link bstCommand PreProc
hi def link bstBuiltIn Statement
hi def link bstField Special
hi def link bstNumber Number
hi def link bstType Type
hi def link bstIdentifier Identifier
hi def link bstError Error
let b:current_syntax = "bst"
" vim:set ft=vim sts=4 sw=4:
endif

220
syntax/btm.vim Normal file
View File

@@ -0,0 +1,220 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: 4Dos batch file
" Maintainer: John Leo Spetz <jls11@po.cwru.edu>
" Last Change: 2001 May 09
"//Issues to resolve:
"//- Boolean operators surrounded by period are recognized but the
"// periods are not highlighted. The only way to do that would
"// be separate synmatches for each possibility otherwise a more
"// general \.\i\+\. will highlight anything delimited by dots.
"//- After unary operators like "defined" can assume token type.
"// Should there be more of these?
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case ignore
syn keyword btmStatement call off
syn keyword btmConditional if iff endiff then else elseiff not errorlevel
syn keyword btmConditional gt lt eq ne ge le
syn match btmConditional transparent "\.\i\+\." contains=btmDotBoolOp
syn keyword btmDotBoolOp contained and or xor
syn match btmConditional "=="
syn match btmConditional "!="
syn keyword btmConditional defined errorlevel exist isalias
syn keyword btmConditional isdir direxist isinternal islabel
syn keyword btmRepeat for in do enddo
syn keyword btmTodo contained TODO
" String
syn cluster btmVars contains=btmVariable,btmArgument,btmBIFMatch
syn region btmString start=+"+ end=+"+ contains=@btmVars
syn match btmNumber "\<\d\+\>"
"syn match btmIdentifier "\<\h\w*\>"
" If you don't like tabs
"syn match btmShowTab "\t"
"syn match btmShowTabc "\t"
"syn match btmComment "^\ *rem.*$" contains=btmTodo,btmShowTabc
" Some people use this as a comment line
" In fact this is a Label
"syn match btmComment "^\ *:\ \+.*$" contains=btmTodo
syn match btmComment "^\ *rem.*$" contains=btmTodo
syn match btmComment "^\ *::.*$" contains=btmTodo
syn match btmLabelMark "^\ *:[0-9a-zA-Z_\-]\+\>"
syn match btmLabelMark "goto [0-9a-zA-Z_\-]\+\>"lc=5
syn match btmLabelMark "gosub [0-9a-zA-Z_\-]\+\>"lc=6
" syn match btmCmdDivider ">[>&][>&]\="
syn match btmCmdDivider ">[>&]*"
syn match btmCmdDivider ">>&>"
syn match btmCmdDivider "|&\="
syn match btmCmdDivider "%+"
syn match btmCmdDivider "\^"
syn region btmEcho start="echo" skip="echo" matchgroup=btmCmdDivider end="%+" end="$" end="|&\=" end="\^" end=">[>&]*" contains=@btmEchos oneline
syn cluster btmEchos contains=@btmVars,btmEchoCommand,btmEchoParam
syn keyword btmEchoCommand contained echo echoerr echos echoserr
syn keyword btmEchoParam contained on off
" this is also a valid Label. I don't use it.
"syn match btmLabelMark "^\ *:\ \+[0-9a-zA-Z_\-]\+\>"
" //Environment variable can be expanded using notation %var in 4DOS
syn match btmVariable "%[0-9a-z_\-]\+" contains=@btmSpecialVars
" //Environment variable can be expanded using notation %var%
syn match btmVariable "%[0-9a-z_\-]*%" contains=@btmSpecialVars
" //The following are special variable in 4DOS
syn match btmVariable "%[=#]" contains=@btmSpecialVars
syn match btmVariable "%??\=" contains=@btmSpecialVars
" //Environment variable can be expanded using notation %[var] in 4DOS
syn match btmVariable "%\[[0-9a-z_\-]*\]"
" //After some keywords next word should be an environment variable
syn match btmVariable "defined\s\i\+"lc=8
syn match btmVariable "set\s\i\+"lc=4
" //Parameters to batchfiles take the format %<digit>
syn match btmArgument "%\d\>"
" //4DOS allows format %<digit>& meaning batchfile parameters digit and up
syn match btmArgument "%\d\>&"
" //Variable used by FOR loops sometimes use %%<letter> in batchfiles
syn match btmArgument "%%\a\>"
" //Show 4DOS built-in functions specially
syn match btmBIFMatch "%@\w\+\["he=e-1 contains=btmBuiltInFunc
syn keyword btmBuiltInFunc contained alias ascii attrib cdrom
syn keyword btmBuiltInFunc contained char clip comma convert
syn keyword btmBuiltInFunc contained date day dec descript
syn keyword btmBuiltInFunc contained device diskfree disktotal
syn keyword btmBuiltInFunc contained diskused dosmem dow dowi
syn keyword btmBuiltInFunc contained doy ems eval exec execstr
syn keyword btmBuiltInFunc contained expand ext extended
syn keyword btmBuiltInFunc contained fileage fileclose filedate
syn keyword btmBuiltInFunc contained filename fileopen fileread
syn keyword btmBuiltInFunc contained files fileseek fileseekl
syn keyword btmBuiltInFunc contained filesize filetime filewrite
syn keyword btmBuiltInFunc contained filewriteb findclose
syn keyword btmBuiltInFunc contained findfirst findnext format
syn keyword btmBuiltInFunc contained full if inc index insert
syn keyword btmBuiltInFunc contained instr int label left len
syn keyword btmBuiltInFunc contained lfn line lines lower lpt
syn keyword btmBuiltInFunc contained makeage makedate maketime
syn keyword btmBuiltInFunc contained master month name numeric
syn keyword btmBuiltInFunc contained path random readscr ready
syn keyword btmBuiltInFunc contained remote removable repeat
syn keyword btmBuiltInFunc contained replace right search
syn keyword btmBuiltInFunc contained select sfn strip substr
syn keyword btmBuiltInFunc contained time timer trim truename
syn keyword btmBuiltInFunc contained unique upper wild word
syn keyword btmBuiltInFunc contained words xms year
syn cluster btmSpecialVars contains=btmBuiltInVar,btmSpecialVar
" //Show specialized variables specially
" syn match btmSpecialVar contained "+"
syn match btmSpecialVar contained "="
syn match btmSpecialVar contained "#"
syn match btmSpecialVar contained "??\="
syn keyword btmSpecialVar contained cmdline colordir comspec
syn keyword btmSpecialVar contained copycmd dircmd temp temp4dos
syn keyword btmSpecialVar contained filecompletion path prompt
" //Show 4DOS built-in variables specially specially
syn keyword btmBuiltInVar contained _4ver _alias _ansi
syn keyword btmBuiltInVar contained _apbatt _aplife _apmac _batch
syn keyword btmBuiltInVar contained _batchline _batchname _bg
syn keyword btmBuiltInVar contained _boot _ci _cmdproc _co
syn keyword btmBuiltInVar contained _codepage _column _columns
syn keyword btmBuiltInVar contained _country _cpu _cwd _cwds _cwp
syn keyword btmBuiltInVar contained _cwps _date _day _disk _dname
syn keyword btmBuiltInVar contained _dos _dosver _dow _dowi _doy
syn keyword btmBuiltInVar contained _dpmi _dv _env _fg _hlogfile
syn keyword btmBuiltInVar contained _hour _kbhit _kstack _lastdisk
syn keyword btmBuiltInVar contained _logfile _minute _monitor
syn keyword btmBuiltInVar contained _month _mouse _ndp _row _rows
syn keyword btmBuiltInVar contained _second _shell _swapping
syn keyword btmBuiltInVar contained _syserr _time _transient
syn keyword btmBuiltInVar contained _video _win _wintitle _year
" //Commands in 4DOS and/or DOS
syn match btmCommand "\s?"
syn match btmCommand "^?"
syn keyword btmCommand alias append assign attrib
syn keyword btmCommand backup beep break cancel case
syn keyword btmCommand cd cdd cdpath chcp chdir
syn keyword btmCommand chkdsk cls color comp copy
syn keyword btmCommand ctty date debug default defrag
syn keyword btmCommand del delay describe dir
syn keyword btmCommand dirhistory dirs diskcomp
syn keyword btmCommand diskcopy doskey dosshell
syn keyword btmCommand drawbox drawhline drawvline
"syn keyword btmCommand echo echoerr echos echoserr
syn keyword btmCommand edit edlin emm386 endlocal
syn keyword btmCommand endswitch erase eset except
syn keyword btmCommand exe2bin exit expand fastopen
syn keyword btmCommand fc fdisk ffind find format
syn keyword btmCommand free global gosub goto
syn keyword btmCommand graftabl graphics help history
syn keyword btmCommand inkey input join keyb keybd
syn keyword btmCommand keystack label lh list loadbtm
syn keyword btmCommand loadhigh lock log md mem
syn keyword btmCommand memory mirror mkdir mode more
syn keyword btmCommand move nlsfunc on option path
syn keyword btmCommand pause popd print prompt pushd
syn keyword btmCommand quit rd reboot recover ren
syn keyword btmCommand rename replace restore return
syn keyword btmCommand rmdir scandisk screen scrput
syn keyword btmCommand select set setdos setlocal
syn keyword btmCommand setver share shift sort subst
syn keyword btmCommand swapping switch sys tee text
syn keyword btmCommand time timer touch tree truename
syn keyword btmCommand type unalias undelete unformat
syn keyword btmCommand unlock unset ver verify vol
syn keyword btmCommand vscrput y
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link btmLabel Special
hi def link btmLabelMark Special
hi def link btmCmdDivider Special
hi def link btmConditional btmStatement
hi def link btmDotBoolOp btmStatement
hi def link btmRepeat btmStatement
hi def link btmEchoCommand btmStatement
hi def link btmEchoParam btmStatement
hi def link btmStatement Statement
hi def link btmTodo Todo
hi def link btmString String
hi def link btmNumber Number
hi def link btmComment Comment
hi def link btmArgument Identifier
hi def link btmVariable Identifier
hi def link btmEcho String
hi def link btmBIFMatch btmStatement
hi def link btmBuiltInFunc btmStatement
hi def link btmBuiltInVar btmStatement
hi def link btmSpecialVar btmStatement
hi def link btmCommand btmStatement
"optional highlighting
"hi def link btmShowTab Error
"hi def link btmShowTabc Error
"hi def link btmIdentifier Identifier
let b:current_syntax = "btm"
" vim: ts=8
endif

20
syntax/bzl.vim Normal file
View File

@@ -0,0 +1,20 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Bazel (http://bazel.io)
" Maintainer: David Barnett (https://github.com/google/vim-ft-bzl)
" Last Change: 2015 Aug 11
if exists('b:current_syntax')
finish
endif
runtime! syntax/python.vim
let b:current_syntax = 'bzl'
syn region bzlRule start='^\w\+($' end='^)\n*' transparent fold
syn region bzlList start='\[' end='\]' transparent fold
endif

54
syntax/bzr.vim Normal file
View File

@@ -0,0 +1,54 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Bazaar (bzr) commit file
" Maintainer: Dmitry Vasiliev <dima at hlabs dot org>
" URL: https://github.com/hdima/vim-scripts/blob/master/syntax/bzr.vim
" Last Change: 2012-02-11
" Filenames: bzr_log.*
" Version: 1.2.2
"
" Thanks:
"
" Gioele Barabucci
" for idea of diff highlighting
" quit when a syntax file was already loaded.
if exists("b:current_syntax")
finish
endif
if exists("bzr_highlight_diff")
syn include @Diff syntax/diff.vim
endif
syn match bzrRemoved "^removed:$" contained
syn match bzrAdded "^added:$" contained
syn match bzrRenamed "^renamed:$" contained
syn match bzrModified "^modified:$" contained
syn match bzrUnchanged "^unchanged:$" contained
syn match bzrUnknown "^unknown:$" contained
syn cluster Statuses contains=bzrRemoved,bzrAdded,bzrRenamed,bzrModified,bzrUnchanged,bzrUnknown
if exists("bzr_highlight_diff")
syn cluster Statuses add=@Diff
endif
syn region bzrRegion start="^-\{14} This line and the following will be ignored -\{14}$" end="\%$" contains=@NoSpell,@Statuses
" Synchronization.
syn sync clear
syn sync match bzrSync grouphere bzrRegion "^-\{14} This line and the following will be ignored -\{14}$"me=s-1
" Define the default highlighting.
" Only when an item doesn't have highlighting yet.
hi def link bzrRemoved Constant
hi def link bzrAdded Identifier
hi def link bzrModified Special
hi def link bzrRenamed Special
hi def link bzrUnchanged Special
hi def link bzrUnknown Special
let b:current_syntax = "bzr"
endif

View File

@@ -1,3 +1,484 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: C
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2017 Apr 30
" Quit when a (custom) syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
let s:ft = matchstr(&ft, '^\([^.]\)\+')
" A bunch of useful C keywords
syn keyword cStatement goto break return continue asm
syn keyword cLabel case default
syn keyword cConditional if else switch
syn keyword cRepeat while for do
syn keyword cTodo contained TODO FIXME XXX
" It's easy to accidentally add a space after a backslash that was intended
" for line continuation. Some compilers allow it, which makes it
" unpredictable and should be avoided.
syn match cBadContinuation contained "\\\s\+$"
" cCommentGroup allows adding matches for special things in comments
syn cluster cCommentGroup contains=cTodo,cBadContinuation
" String and Character constants
" Highlight special characters (those which have a backslash) differently
syn match cSpecial display contained "\\\(x\x\+\|\o\{1,3}\|.\|$\)"
if !exists("c_no_utf")
syn match cSpecial display contained "\\\(u\x\{4}\|U\x\{8}\)"
endif
if !exists("c_no_cformat")
" Highlight % items in strings.
if !exists("c_no_c99") " ISO C99
syn match cFormat display "%\(\d\+\$\)\=[-+' #0*]*\(\d*\|\*\|\*\d\+\$\)\(\.\(\d*\|\*\|\*\d\+\$\)\)\=\([hlLjzt]\|ll\|hh\)\=\([aAbdiuoxXDOUfFeEgGcCsSpn]\|\[\^\=.[^]]*\]\)" contained
else
syn match cFormat display "%\(\d\+\$\)\=[-+' #0*]*\(\d*\|\*\|\*\d\+\$\)\(\.\(\d*\|\*\|\*\d\+\$\)\)\=\([hlL]\|ll\)\=\([bdiuoxXDOUfeEgGcCsSpn]\|\[\^\=.[^]]*\]\)" contained
endif
syn match cFormat display "%%" contained
endif
" cCppString: same as cString, but ends at end of line
if s:ft ==# "cpp" && !exists("cpp_no_cpp11") && !exists("c_no_cformat")
" ISO C++11
syn region cString start=+\(L\|u\|u8\|U\|R\|LR\|u8R\|uR\|UR\)\="+ skip=+\\\\\|\\"+ end=+"+ contains=cSpecial,cFormat,@Spell extend
syn region cCppString start=+\(L\|u\|u8\|U\|R\|LR\|u8R\|uR\|UR\)\="+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end='$' contains=cSpecial,cFormat,@Spell
elseif s:ft ==# "c" && !exists("c_no_c11") && !exists("c_no_cformat")
" ISO C99
syn region cString start=+\%(L\|U\|u8\)\="+ skip=+\\\\\|\\"+ end=+"+ contains=cSpecial,cFormat,@Spell extend
syn region cCppString start=+\%(L\|U\|u8\)\="+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end='$' contains=cSpecial,cFormat,@Spell
else
" older C or C++
syn match cFormat display "%%" contained
syn region cString start=+L\="+ skip=+\\\\\|\\"+ end=+"+ contains=cSpecial,cFormat,@Spell extend
syn region cCppString start=+L\="+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end='$' contains=cSpecial,cFormat,@Spell
endif
syn region cCppSkip contained start="^\s*\(%:\|#\)\s*\(if\>\|ifdef\>\|ifndef\>\)" skip="\\$" end="^\s*\(%:\|#\)\s*endif\>" contains=cSpaceError,cCppSkip
syn cluster cStringGroup contains=cCppString,cCppSkip
syn match cCharacter "L\='[^\\]'"
syn match cCharacter "L'[^']*'" contains=cSpecial
if exists("c_gnu")
syn match cSpecialError "L\='\\[^'\"?\\abefnrtv]'"
syn match cSpecialCharacter "L\='\\['\"?\\abefnrtv]'"
else
syn match cSpecialError "L\='\\[^'\"?\\abfnrtv]'"
syn match cSpecialCharacter "L\='\\['\"?\\abfnrtv]'"
endif
syn match cSpecialCharacter display "L\='\\\o\{1,3}'"
syn match cSpecialCharacter display "'\\x\x\{1,2}'"
syn match cSpecialCharacter display "L'\\x\x\+'"
if (s:ft ==# "c" && !exists("c_no_c11")) || (s:ft ==# "cpp" && !exists("cpp_no_cpp11"))
" ISO C11 or ISO C++ 11
if exists("c_no_cformat")
syn region cString start=+\%(U\|u8\=\)"+ skip=+\\\\\|\\"+ end=+"+ contains=cSpecial,@Spell extend
else
syn region cString start=+\%(U\|u8\=\)"+ skip=+\\\\\|\\"+ end=+"+ contains=cSpecial,cFormat,@Spell extend
endif
syn match cCharacter "[Uu]'[^\\]'"
syn match cCharacter "[Uu]'[^']*'" contains=cSpecial
if exists("c_gnu")
syn match cSpecialError "[Uu]'\\[^'\"?\\abefnrtv]'"
syn match cSpecialCharacter "[Uu]'\\['\"?\\abefnrtv]'"
else
syn match cSpecialError "[Uu]'\\[^'\"?\\abfnrtv]'"
syn match cSpecialCharacter "[Uu]'\\['\"?\\abfnrtv]'"
endif
syn match cSpecialCharacter display "[Uu]'\\\o\{1,3}'"
syn match cSpecialCharacter display "[Uu]'\\x\x\+'"
endif
"when wanted, highlight trailing white space
if exists("c_space_errors")
if !exists("c_no_trail_space_error")
syn match cSpaceError display excludenl "\s\+$"
endif
if !exists("c_no_tab_space_error")
syn match cSpaceError display " \+\t"me=e-1
endif
endif
" This should be before cErrInParen to avoid problems with #define ({ xxx })
if exists("c_curly_error")
syn match cCurlyError "}"
syn region cBlock start="{" end="}" contains=ALLBUT,cBadBlock,cCurlyError,@cParenGroup,cErrInParen,cCppParen,cErrInBracket,cCppBracket,@cStringGroup,@Spell fold
else
syn region cBlock start="{" end="}" transparent fold
endif
" Catch errors caused by wrong parenthesis and brackets.
" Also accept <% for {, %> for }, <: for [ and :> for ] (C99)
" But avoid matching <::.
syn cluster cParenGroup contains=cParenError,cIncluded,cSpecial,cCommentSkip,cCommentString,cComment2String,@cCommentGroup,cCommentStartError,cUserLabel,cBitField,cOctalZero,@cCppOutInGroup,cFormat,cNumber,cFloat,cOctal,cOctalError,cNumbersCom
if exists("c_no_curly_error")
if s:ft ==# 'cpp' && !exists("cpp_no_cpp11")
syn region cParen transparent start='(' end=')' contains=ALLBUT,@cParenGroup,cCppParen,@cStringGroup,@Spell
" cCppParen: same as cParen but ends at end-of-line; used in cDefine
syn region cCppParen transparent start='(' skip='\\$' excludenl end=')' end='$' contained contains=ALLBUT,@cParenGroup,cParen,cString,@Spell
syn match cParenError display ")"
syn match cErrInParen display contained "^^<%\|^%>"
else
syn region cParen transparent start='(' end=')' end='}'me=s-1 contains=ALLBUT,cBlock,@cParenGroup,cCppParen,@cStringGroup,@Spell
" cCppParen: same as cParen but ends at end-of-line; used in cDefine
syn region cCppParen transparent start='(' skip='\\$' excludenl end=')' end='$' contained contains=ALLBUT,@cParenGroup,cParen,cString,@Spell
syn match cParenError display ")"
syn match cErrInParen display contained "^[{}]\|^<%\|^%>"
endif
elseif exists("c_no_bracket_error")
if s:ft ==# 'cpp' && !exists("cpp_no_cpp11")
syn region cParen transparent start='(' end=')' contains=ALLBUT,@cParenGroup,cCppParen,@cStringGroup,@Spell
" cCppParen: same as cParen but ends at end-of-line; used in cDefine
syn region cCppParen transparent start='(' skip='\\$' excludenl end=')' end='$' contained contains=ALLBUT,@cParenGroup,cParen,cString,@Spell
syn match cParenError display ")"
syn match cErrInParen display contained "<%\|%>"
else
syn region cParen transparent start='(' end=')' end='}'me=s-1 contains=ALLBUT,cBlock,@cParenGroup,cCppParen,@cStringGroup,@Spell
" cCppParen: same as cParen but ends at end-of-line; used in cDefine
syn region cCppParen transparent start='(' skip='\\$' excludenl end=')' end='$' contained contains=ALLBUT,@cParenGroup,cParen,cString,@Spell
syn match cParenError display ")"
syn match cErrInParen display contained "[{}]\|<%\|%>"
endif
else
if s:ft ==# 'cpp' && !exists("cpp_no_cpp11")
syn region cParen transparent start='(' end=')' contains=ALLBUT,@cParenGroup,cCppParen,cErrInBracket,cCppBracket,@cStringGroup,@Spell
" cCppParen: same as cParen but ends at end-of-line; used in cDefine
syn region cCppParen transparent start='(' skip='\\$' excludenl end=')' end='$' contained contains=ALLBUT,@cParenGroup,cErrInBracket,cParen,cBracket,cString,@Spell
syn match cParenError display "[\])]"
syn match cErrInParen display contained "<%\|%>"
syn region cBracket transparent start='\[\|<::\@!' end=']\|:>' contains=ALLBUT,@cParenGroup,cErrInParen,cCppParen,cCppBracket,@cStringGroup,@Spell
else
syn region cParen transparent start='(' end=')' end='}'me=s-1 contains=ALLBUT,cBlock,@cParenGroup,cCppParen,cErrInBracket,cCppBracket,@cStringGroup,@Spell
" cCppParen: same as cParen but ends at end-of-line; used in cDefine
syn region cCppParen transparent start='(' skip='\\$' excludenl end=')' end='$' contained contains=ALLBUT,@cParenGroup,cErrInBracket,cParen,cBracket,cString,@Spell
syn match cParenError display "[\])]"
syn match cErrInParen display contained "[\]{}]\|<%\|%>"
syn region cBracket transparent start='\[\|<::\@!' end=']\|:>' end='}'me=s-1 contains=ALLBUT,cBlock,@cParenGroup,cErrInParen,cCppParen,cCppBracket,@cStringGroup,@Spell
endif
" cCppBracket: same as cParen but ends at end-of-line; used in cDefine
syn region cCppBracket transparent start='\[\|<::\@!' skip='\\$' excludenl end=']\|:>' end='$' contained contains=ALLBUT,@cParenGroup,cErrInParen,cParen,cBracket,cString,@Spell
syn match cErrInBracket display contained "[);{}]\|<%\|%>"
endif
if s:ft ==# 'c' || exists("cpp_no_cpp11")
syn region cBadBlock keepend start="{" end="}" contained containedin=cParen,cBracket,cBadBlock transparent fold
endif
"integer number, or floating point number without a dot and with "f".
syn case ignore
syn match cNumbers display transparent "\<\d\|\.\d" contains=cNumber,cFloat,cOctalError,cOctal
" Same, but without octal error (for comments)
syn match cNumbersCom display contained transparent "\<\d\|\.\d" contains=cNumber,cFloat,cOctal
syn match cNumber display contained "\d\+\(u\=l\{0,2}\|ll\=u\)\>"
"hex number
syn match cNumber display contained "0x\x\+\(u\=l\{0,2}\|ll\=u\)\>"
" Flag the first zero of an octal number as something special
syn match cOctal display contained "0\o\+\(u\=l\{0,2}\|ll\=u\)\>" contains=cOctalZero
syn match cOctalZero display contained "\<0"
syn match cFloat display contained "\d\+f"
"floating point number, with dot, optional exponent
syn match cFloat display contained "\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\="
"floating point number, starting with a dot, optional exponent
syn match cFloat display contained "\.\d\+\(e[-+]\=\d\+\)\=[fl]\=\>"
"floating point number, without dot, with exponent
syn match cFloat display contained "\d\+e[-+]\=\d\+[fl]\=\>"
if !exists("c_no_c99")
"hexadecimal floating point number, optional leading digits, with dot, with exponent
syn match cFloat display contained "0x\x*\.\x\+p[-+]\=\d\+[fl]\=\>"
"hexadecimal floating point number, with leading digits, optional dot, with exponent
syn match cFloat display contained "0x\x\+\.\=p[-+]\=\d\+[fl]\=\>"
endif
" flag an octal number with wrong digits
syn match cOctalError display contained "0\o*[89]\d*"
syn case match
if exists("c_comment_strings")
" A comment can contain cString, cCharacter and cNumber.
" But a "*/" inside a cString in a cComment DOES end the comment! So we
" need to use a special type of cString: cCommentString, which also ends on
" "*/", and sees a "*" at the start of the line as comment again.
" Unfortunately this doesn't very well work for // type of comments :-(
syn match cCommentSkip contained "^\s*\*\($\|\s\+\)"
syn region cCommentString contained start=+L\=\\\@<!"+ skip=+\\\\\|\\"+ end=+"+ end=+\*/+me=s-1 contains=cSpecial,cCommentSkip
syn region cComment2String contained start=+L\=\\\@<!"+ skip=+\\\\\|\\"+ end=+"+ end="$" contains=cSpecial
syn region cCommentL start="//" skip="\\$" end="$" keepend contains=@cCommentGroup,cComment2String,cCharacter,cNumbersCom,cSpaceError,@Spell
if exists("c_no_comment_fold")
" Use "extend" here to have preprocessor lines not terminate halfway a
" comment.
syn region cComment matchgroup=cCommentStart start="/\*" end="\*/" contains=@cCommentGroup,cCommentStartError,cCommentString,cCharacter,cNumbersCom,cSpaceError,@Spell extend
else
syn region cComment matchgroup=cCommentStart start="/\*" end="\*/" contains=@cCommentGroup,cCommentStartError,cCommentString,cCharacter,cNumbersCom,cSpaceError,@Spell fold extend
endif
else
syn region cCommentL start="//" skip="\\$" end="$" keepend contains=@cCommentGroup,cSpaceError,@Spell
if exists("c_no_comment_fold")
syn region cComment matchgroup=cCommentStart start="/\*" end="\*/" contains=@cCommentGroup,cCommentStartError,cSpaceError,@Spell extend
else
syn region cComment matchgroup=cCommentStart start="/\*" end="\*/" contains=@cCommentGroup,cCommentStartError,cSpaceError,@Spell fold extend
endif
endif
" keep a // comment separately, it terminates a preproc. conditional
syn match cCommentError display "\*/"
syn match cCommentStartError display "/\*"me=e-1 contained
syn keyword cOperator sizeof
if exists("c_gnu")
syn keyword cStatement __asm__
syn keyword cOperator typeof __real__ __imag__
endif
syn keyword cType int long short char void
syn keyword cType signed unsigned float double
if !exists("c_no_ansi") || exists("c_ansi_typedefs")
syn keyword cType size_t ssize_t off_t wchar_t ptrdiff_t sig_atomic_t fpos_t
syn keyword cType clock_t time_t va_list jmp_buf FILE DIR div_t ldiv_t
syn keyword cType mbstate_t wctrans_t wint_t wctype_t
endif
if !exists("c_no_c99") " ISO C99
syn keyword cType _Bool bool _Complex complex _Imaginary imaginary
syn keyword cType int8_t int16_t int32_t int64_t
syn keyword cType uint8_t uint16_t uint32_t uint64_t
if !exists("c_no_bsd")
" These are BSD specific.
syn keyword cType u_int8_t u_int16_t u_int32_t u_int64_t
endif
syn keyword cType int_least8_t int_least16_t int_least32_t int_least64_t
syn keyword cType uint_least8_t uint_least16_t uint_least32_t uint_least64_t
syn keyword cType int_fast8_t int_fast16_t int_fast32_t int_fast64_t
syn keyword cType uint_fast8_t uint_fast16_t uint_fast32_t uint_fast64_t
syn keyword cType intptr_t uintptr_t
syn keyword cType intmax_t uintmax_t
endif
if exists("c_gnu")
syn keyword cType __label__ __complex__ __volatile__
endif
syn keyword cStructure struct union enum typedef
syn keyword cStorageClass static register auto volatile extern const
if exists("c_gnu")
syn keyword cStorageClass inline __attribute__
endif
if !exists("c_no_c99") && s:ft !=# 'cpp'
syn keyword cStorageClass inline restrict
endif
if !exists("c_no_c11")
syn keyword cStorageClass _Alignas alignas
syn keyword cOperator _Alignof alignof
syn keyword cStorageClass _Atomic
syn keyword cOperator _Generic
syn keyword cStorageClass _Noreturn noreturn
syn keyword cOperator _Static_assert static_assert
syn keyword cStorageClass _Thread_local thread_local
syn keyword cType char16_t char32_t
endif
if !exists("c_no_ansi") || exists("c_ansi_constants") || exists("c_gnu")
if exists("c_gnu")
syn keyword cConstant __GNUC__ __FUNCTION__ __PRETTY_FUNCTION__ __func__
endif
syn keyword cConstant __LINE__ __FILE__ __DATE__ __TIME__ __STDC__
syn keyword cConstant __STDC_VERSION__
syn keyword cConstant CHAR_BIT MB_LEN_MAX MB_CUR_MAX
syn keyword cConstant UCHAR_MAX UINT_MAX ULONG_MAX USHRT_MAX
syn keyword cConstant CHAR_MIN INT_MIN LONG_MIN SHRT_MIN
syn keyword cConstant CHAR_MAX INT_MAX LONG_MAX SHRT_MAX
syn keyword cConstant SCHAR_MIN SINT_MIN SLONG_MIN SSHRT_MIN
syn keyword cConstant SCHAR_MAX SINT_MAX SLONG_MAX SSHRT_MAX
if !exists("c_no_c99")
syn keyword cConstant __func__ __VA_ARGS__
syn keyword cConstant LLONG_MIN LLONG_MAX ULLONG_MAX
syn keyword cConstant INT8_MIN INT16_MIN INT32_MIN INT64_MIN
syn keyword cConstant INT8_MAX INT16_MAX INT32_MAX INT64_MAX
syn keyword cConstant UINT8_MAX UINT16_MAX UINT32_MAX UINT64_MAX
syn keyword cConstant INT_LEAST8_MIN INT_LEAST16_MIN INT_LEAST32_MIN INT_LEAST64_MIN
syn keyword cConstant INT_LEAST8_MAX INT_LEAST16_MAX INT_LEAST32_MAX INT_LEAST64_MAX
syn keyword cConstant UINT_LEAST8_MAX UINT_LEAST16_MAX UINT_LEAST32_MAX UINT_LEAST64_MAX
syn keyword cConstant INT_FAST8_MIN INT_FAST16_MIN INT_FAST32_MIN INT_FAST64_MIN
syn keyword cConstant INT_FAST8_MAX INT_FAST16_MAX INT_FAST32_MAX INT_FAST64_MAX
syn keyword cConstant UINT_FAST8_MAX UINT_FAST16_MAX UINT_FAST32_MAX UINT_FAST64_MAX
syn keyword cConstant INTPTR_MIN INTPTR_MAX UINTPTR_MAX
syn keyword cConstant INTMAX_MIN INTMAX_MAX UINTMAX_MAX
syn keyword cConstant PTRDIFF_MIN PTRDIFF_MAX SIG_ATOMIC_MIN SIG_ATOMIC_MAX
syn keyword cConstant SIZE_MAX WCHAR_MIN WCHAR_MAX WINT_MIN WINT_MAX
endif
syn keyword cConstant FLT_RADIX FLT_ROUNDS FLT_DIG FLT_MANT_DIG FLT_EPSILON DBL_DIG DBL_MANT_DIG DBL_EPSILON
syn keyword cConstant LDBL_DIG LDBL_MANT_DIG LDBL_EPSILON FLT_MIN FLT_MAX FLT_MIN_EXP FLT_MAX_EXP FLT_MIN_10_EXP FLT_MAX_10_EXP
syn keyword cConstant DBL_MIN DBL_MAX DBL_MIN_EXP DBL_MAX_EXP DBL_MIN_10_EXP DBL_MAX_10_EXP LDBL_MIN LDBL_MAX LDBL_MIN_EXP LDBL_MAX_EXP
syn keyword cConstant LDBL_MIN_10_EXP LDBL_MAX_10_EXP HUGE_VAL CLOCKS_PER_SEC NULL LC_ALL LC_COLLATE LC_CTYPE LC_MONETARY
syn keyword cConstant LC_NUMERIC LC_TIME SIG_DFL SIG_ERR SIG_IGN SIGABRT SIGFPE SIGILL SIGHUP SIGINT SIGSEGV SIGTERM
" Add POSIX signals as well...
syn keyword cConstant SIGABRT SIGALRM SIGCHLD SIGCONT SIGFPE SIGHUP SIGILL SIGINT SIGKILL SIGPIPE SIGQUIT SIGSEGV
syn keyword cConstant SIGSTOP SIGTERM SIGTRAP SIGTSTP SIGTTIN SIGTTOU SIGUSR1 SIGUSR2
syn keyword cConstant _IOFBF _IOLBF _IONBF BUFSIZ EOF WEOF FOPEN_MAX FILENAME_MAX L_tmpnam
syn keyword cConstant SEEK_CUR SEEK_END SEEK_SET TMP_MAX stderr stdin stdout EXIT_FAILURE EXIT_SUCCESS RAND_MAX
" POSIX 2001
syn keyword cConstant SIGBUS SIGPOLL SIGPROF SIGSYS SIGURG SIGVTALRM SIGXCPU SIGXFSZ
" non-POSIX signals
syn keyword cConstant SIGWINCH SIGINFO
" Add POSIX errors as well. List comes from:
" http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/errno.h.html
syn keyword cConstant E2BIG EACCES EADDRINUSE EADDRNOTAVAIL EAFNOSUPPORT EAGAIN EALREADY EBADF
syn keyword cConstant EBADMSG EBUSY ECANCELED ECHILD ECONNABORTED ECONNREFUSED ECONNRESET EDEADLK
syn keyword cConstant EDESTADDRREQ EDOM EDQUOT EEXIST EFAULT EFBIG EHOSTUNREACH EIDRM EILSEQ
syn keyword cConstant EINPROGRESS EINTR EINVAL EIO EISCONN EISDIR ELOOP EMFILE EMLINK EMSGSIZE
syn keyword cConstant EMULTIHOP ENAMETOOLONG ENETDOWN ENETRESET ENETUNREACH ENFILE ENOBUFS ENODATA
syn keyword cConstant ENODEV ENOENT ENOEXEC ENOLCK ENOLINK ENOMEM ENOMSG ENOPROTOOPT ENOSPC ENOSR
syn keyword cConstant ENOSTR ENOSYS ENOTCONN ENOTDIR ENOTEMPTY ENOTRECOVERABLE ENOTSOCK ENOTSUP
syn keyword cConstant ENOTTY ENXIO EOPNOTSUPP EOVERFLOW EOWNERDEAD EPERM EPIPE EPROTO
syn keyword cConstant EPROTONOSUPPORT EPROTOTYPE ERANGE EROFS ESPIPE ESRCH ESTALE ETIME ETIMEDOUT
syn keyword cConstant ETXTBSY EWOULDBLOCK EXDEV
" math.h
syn keyword cConstant M_E M_LOG2E M_LOG10E M_LN2 M_LN10 M_PI M_PI_2 M_PI_4
syn keyword cConstant M_1_PI M_2_PI M_2_SQRTPI M_SQRT2 M_SQRT1_2
endif
if !exists("c_no_c99") " ISO C99
syn keyword cConstant true false
endif
" Accept %: for # (C99)
syn region cPreCondit start="^\s*\zs\(%:\|#\)\s*\(if\|ifdef\|ifndef\|elif\)\>" skip="\\$" end="$" keepend contains=cComment,cCommentL,cCppString,cCharacter,cCppParen,cParenError,cNumbers,cCommentError,cSpaceError
syn match cPreConditMatch display "^\s*\zs\(%:\|#\)\s*\(else\|endif\)\>"
if !exists("c_no_if0")
syn cluster cCppOutInGroup contains=cCppInIf,cCppInElse,cCppInElse2,cCppOutIf,cCppOutIf2,cCppOutElse,cCppInSkip,cCppOutSkip
syn region cCppOutWrapper start="^\s*\zs\(%:\|#\)\s*if\s\+0\+\s*\($\|//\|/\*\|&\)" end=".\@=\|$" contains=cCppOutIf,cCppOutElse,@NoSpell fold
syn region cCppOutIf contained start="0\+" matchgroup=cCppOutWrapper end="^\s*\(%:\|#\)\s*endif\>" contains=cCppOutIf2,cCppOutElse
if !exists("c_no_if0_fold")
syn region cCppOutIf2 contained matchgroup=cCppOutWrapper start="0\+" end="^\s*\(%:\|#\)\s*\(else\>\|elif\s\+\(0\+\s*\($\|//\|/\*\|&\)\)\@!\|endif\>\)"me=s-1 contains=cSpaceError,cCppOutSkip,@Spell fold
else
syn region cCppOutIf2 contained matchgroup=cCppOutWrapper start="0\+" end="^\s*\(%:\|#\)\s*\(else\>\|elif\s\+\(0\+\s*\($\|//\|/\*\|&\)\)\@!\|endif\>\)"me=s-1 contains=cSpaceError,cCppOutSkip,@Spell
endif
syn region cCppOutElse contained matchgroup=cCppOutWrapper start="^\s*\(%:\|#\)\s*\(else\|elif\)" end="^\s*\(%:\|#\)\s*endif\>"me=s-1 contains=TOP,cPreCondit
syn region cCppInWrapper start="^\s*\zs\(%:\|#\)\s*if\s\+0*[1-9]\d*\s*\($\|//\|/\*\||\)" end=".\@=\|$" contains=cCppInIf,cCppInElse fold
syn region cCppInIf contained matchgroup=cCppInWrapper start="\d\+" end="^\s*\(%:\|#\)\s*endif\>" contains=TOP,cPreCondit
if !exists("c_no_if0_fold")
syn region cCppInElse contained start="^\s*\(%:\|#\)\s*\(else\>\|elif\s\+\(0*[1-9]\d*\s*\($\|//\|/\*\||\)\)\@!\)" end=".\@=\|$" containedin=cCppInIf contains=cCppInElse2 fold
else
syn region cCppInElse contained start="^\s*\(%:\|#\)\s*\(else\>\|elif\s\+\(0*[1-9]\d*\s*\($\|//\|/\*\||\)\)\@!\)" end=".\@=\|$" containedin=cCppInIf contains=cCppInElse2
endif
syn region cCppInElse2 contained matchgroup=cCppInWrapper start="^\s*\(%:\|#\)\s*\(else\|elif\)\([^/]\|/[^/*]\)*" end="^\s*\(%:\|#\)\s*endif\>"me=s-1 contains=cSpaceError,cCppOutSkip,@Spell
syn region cCppOutSkip contained start="^\s*\(%:\|#\)\s*\(if\>\|ifdef\>\|ifndef\>\)" skip="\\$" end="^\s*\(%:\|#\)\s*endif\>" contains=cSpaceError,cCppOutSkip
syn region cCppInSkip contained matchgroup=cCppInWrapper start="^\s*\(%:\|#\)\s*\(if\s\+\(\d\+\s*\($\|//\|/\*\||\|&\)\)\@!\|ifdef\>\|ifndef\>\)" skip="\\$" end="^\s*\(%:\|#\)\s*endif\>" containedin=cCppOutElse,cCppInIf,cCppInSkip contains=TOP,cPreProc
endif
syn region cIncluded display contained start=+"+ skip=+\\\\\|\\"+ end=+"+
syn match cIncluded display contained "<[^>]*>"
syn match cInclude display "^\s*\zs\(%:\|#\)\s*include\>\s*["<]" contains=cIncluded
"syn match cLineSkip "\\$"
syn cluster cPreProcGroup contains=cPreCondit,cIncluded,cInclude,cDefine,cErrInParen,cErrInBracket,cUserLabel,cSpecial,cOctalZero,cCppOutWrapper,cCppInWrapper,@cCppOutInGroup,cFormat,cNumber,cFloat,cOctal,cOctalError,cNumbersCom,cString,cCommentSkip,cCommentString,cComment2String,@cCommentGroup,cCommentStartError,cParen,cBracket,cMulti,cBadBlock
syn region cDefine start="^\s*\zs\(%:\|#\)\s*\(define\|undef\)\>" skip="\\$" end="$" keepend contains=ALLBUT,@cPreProcGroup,@Spell
syn region cPreProc start="^\s*\zs\(%:\|#\)\s*\(pragma\>\|line\>\|warning\>\|warn\>\|error\>\)" skip="\\$" end="$" keepend contains=ALLBUT,@cPreProcGroup,@Spell
" Highlight User Labels
syn cluster cMultiGroup contains=cIncluded,cSpecial,cCommentSkip,cCommentString,cComment2String,@cCommentGroup,cCommentStartError,cUserCont,cUserLabel,cBitField,cOctalZero,cCppOutWrapper,cCppInWrapper,@cCppOutInGroup,cFormat,cNumber,cFloat,cOctal,cOctalError,cNumbersCom,cCppParen,cCppBracket,cCppString
if s:ft ==# 'c' || exists("cpp_no_cpp11")
syn region cMulti transparent start='?' skip='::' end=':' contains=ALLBUT,@cMultiGroup,@Spell,@cStringGroup
endif
" Avoid matching foo::bar() in C++ by requiring that the next char is not ':'
syn cluster cLabelGroup contains=cUserLabel
syn match cUserCont display "^\s*\zs\I\i*\s*:$" contains=@cLabelGroup
syn match cUserCont display ";\s*\zs\I\i*\s*:$" contains=@cLabelGroup
if s:ft ==# 'cpp'
syn match cUserCont display "^\s*\zs\%(class\|struct\|enum\)\@!\I\i*\s*:[^:]"me=e-1 contains=@cLabelGroup
syn match cUserCont display ";\s*\zs\%(class\|struct\|enum\)\@!\I\i*\s*:[^:]"me=e-1 contains=@cLabelGroup
else
syn match cUserCont display "^\s*\zs\I\i*\s*:[^:]"me=e-1 contains=@cLabelGroup
syn match cUserCont display ";\s*\zs\I\i*\s*:[^:]"me=e-1 contains=@cLabelGroup
endif
syn match cUserLabel display "\I\i*" contained
" Avoid recognizing most bitfields as labels
syn match cBitField display "^\s*\zs\I\i*\s*:\s*[1-9]"me=e-1 contains=cType
syn match cBitField display ";\s*\zs\I\i*\s*:\s*[1-9]"me=e-1 contains=cType
if exists("c_minlines")
let b:c_minlines = c_minlines
else
if !exists("c_no_if0")
let b:c_minlines = 50 " #if 0 constructs can be long
else
let b:c_minlines = 15 " mostly for () constructs
endif
endif
if exists("c_curly_error")
syn sync fromstart
else
exec "syn sync ccomment cComment minlines=" . b:c_minlines
endif
" Define the default highlighting.
" Only used when an item doesn't have highlighting yet
hi def link cFormat cSpecial
hi def link cCppString cString
hi def link cCommentL cComment
hi def link cCommentStart cComment
hi def link cLabel Label
hi def link cUserLabel Label
hi def link cConditional Conditional
hi def link cRepeat Repeat
hi def link cCharacter Character
hi def link cSpecialCharacter cSpecial
hi def link cNumber Number
hi def link cOctal Number
hi def link cOctalZero PreProc " link this to Error if you want
hi def link cFloat Float
hi def link cOctalError cError
hi def link cParenError cError
hi def link cErrInParen cError
hi def link cErrInBracket cError
hi def link cCommentError cError
hi def link cCommentStartError cError
hi def link cSpaceError cError
hi def link cSpecialError cError
hi def link cCurlyError cError
hi def link cOperator Operator
hi def link cStructure Structure
hi def link cStorageClass StorageClass
hi def link cInclude Include
hi def link cPreProc PreProc
hi def link cDefine Macro
hi def link cIncluded cString
hi def link cError Error
hi def link cStatement Statement
hi def link cCppInWrapper cCppOutWrapper
hi def link cCppOutWrapper cPreCondit
hi def link cPreConditMatch cPreCondit
hi def link cPreCondit PreCondit
hi def link cType Type
hi def link cConstant Constant
hi def link cCommentString cString
hi def link cComment2String cString
hi def link cCommentSkip cComment
hi def link cString String
hi def link cComment Comment
hi def link cSpecial SpecialChar
hi def link cTodo Todo
hi def link cBadContinuation Error
hi def link cCppOutSkip cCppOutIf2
hi def link cCppInElse2 cCppOutIf2
hi def link cCppOutIf2 cCppOut
hi def link cCppOut Comment
let b:current_syntax = "c"
unlet s:ft
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8
endif
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'c/c++') == -1
" Vim syntax file

View File

@@ -1,3 +1,126 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Haskell Cabal Build file
" Maintainer: Vincent Berthoux <twinside@gmail.com>
" File Types: .cabal
" Last Change: 2010 May 18
" v1.3: Updated to the last version of cabal
" Added more highlighting for cabal function, true/false
" and version number. Also added missing comment highlighting.
" Cabal known compiler are highlighted too.
"
" V1.2: Added cpp-options which was missing. Feature implemented
" by GHC, found with a GHC warning, but undocumented.
" Whatever...
"
" v1.1: Fixed operator problems and added ftdetect file
" (thanks to Sebastian Schwarz)
"
" v1.0: Cabal syntax in vimball format
" (thanks to Magnus Therning)
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn keyword cabalCategory Library library Executable executable Flag flag
syn keyword cabalCategory source-repository Source-Repository
syn keyword cabalConditional if else
syn match cabalOperator "&&\|||\|!\|==\|>=\|<="
syn keyword cabalFunction os arche impl flag
syn match cabalComment /--.*$/
syn match cabalVersion "\d\+\(.\(\d\)\+\)\+"
syn match cabalTruth "\ctrue"
syn match cabalTruth "\cfalse"
syn match cabalCompiler "\cghc"
syn match cabalCompiler "\cnhc"
syn match cabalCompiler "\cyhc"
syn match cabalCompiler "\chugs"
syn match cabalCompiler "\chbc"
syn match cabalCompiler "\chelium"
syn match cabalCompiler "\cjhc"
syn match cabalCompiler "\clhc"
syn match cabalStatement "\cauthor"
syn match cabalStatement "\cbranch"
syn match cabalStatement "\cbug-reports"
syn match cabalStatement "\cbuild-depends"
syn match cabalStatement "\cbuild-tools"
syn match cabalStatement "\cbuild-type"
syn match cabalStatement "\cbuildable"
syn match cabalStatement "\cc-sources"
syn match cabalStatement "\ccabal-version"
syn match cabalStatement "\ccategory"
syn match cabalStatement "\ccc-options"
syn match cabalStatement "\ccopyright"
syn match cabalStatement "\ccpp-options"
syn match cabalStatement "\cdata-dir"
syn match cabalStatement "\cdata-files"
syn match cabalStatement "\cdefault"
syn match cabalStatement "\cdescription"
syn match cabalStatement "\cexecutable"
syn match cabalStatement "\cexposed-modules"
syn match cabalStatement "\cexposed"
syn match cabalStatement "\cextensions"
syn match cabalStatement "\cextra-lib-dirs"
syn match cabalStatement "\cextra-libraries"
syn match cabalStatement "\cextra-source-files"
syn match cabalStatement "\cextra-tmp-files"
syn match cabalStatement "\cfor example"
syn match cabalStatement "\cframeworks"
syn match cabalStatement "\cghc-options"
syn match cabalStatement "\cghc-prof-options"
syn match cabalStatement "\cghc-shared-options"
syn match cabalStatement "\chomepage"
syn match cabalStatement "\chs-source-dirs"
syn match cabalStatement "\chugs-options"
syn match cabalStatement "\cinclude-dirs"
syn match cabalStatement "\cincludes"
syn match cabalStatement "\cinstall-includes"
syn match cabalStatement "\cld-options"
syn match cabalStatement "\clicense-file"
syn match cabalStatement "\clicense"
syn match cabalStatement "\clocation"
syn match cabalStatement "\cmain-is"
syn match cabalStatement "\cmaintainer"
syn match cabalStatement "\cmodule"
syn match cabalStatement "\cname"
syn match cabalStatement "\cnhc98-options"
syn match cabalStatement "\cother-modules"
syn match cabalStatement "\cpackage-url"
syn match cabalStatement "\cpkgconfig-depends"
syn match cabalStatement "\cstability"
syn match cabalStatement "\csubdir"
syn match cabalStatement "\csynopsis"
syn match cabalStatement "\ctag"
syn match cabalStatement "\ctested-with"
syn match cabalStatement "\ctype"
syn match cabalStatement "\cversion"
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link cabalVersion Number
hi def link cabalTruth Boolean
hi def link cabalComment Comment
hi def link cabalStatement Statement
hi def link cabalCategory Type
hi def link cabalFunction Function
hi def link cabalConditional Conditional
hi def link cabalOperator Operator
hi def link cabalCompiler Constant
let b:current_syntax = "cabal"
" vim: ts=8
endif
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'haskell') == -1
" syntax highlighting for cabal

114
syntax/calendar.vim Normal file
View File

@@ -0,0 +1,114 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: calendar(1) input file
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2006-04-19
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn keyword calendarTodo contained TODO FIXME XXX NOTE
syn region calendarComment start='/\*' end='\*/'
\ contains=calendarTodo,@Spell
syn region calendarCppString start=+L\="+ skip=+\\\\\|\\"\|\\$+ excludenl
\ end=+"+ end='$' contains=calendarSpecial
syn match calendarSpecial display contained '\\\%(x\x\+\|\o\{1,3}\|.\|$\)'
syn match calendarSpecial display contained "\\\(u\x\{4}\|U\x\{8}\)"
syn region calendarPreCondit start='^\s*#\s*\%(if\|ifdef\|ifndef\|elif\)\>'
\ skip='\\$' end='$'
\ contains=calendarComment,calendarCppString
syn match calendarPreCondit display '^\s*#\s*\%(else\|endif\)\>'
syn region calendarCppOut start='^\s*#\s*if\s\+0\+' end='.\@=\|$'
\ contains=calendarCppOut2
syn region calendarCppOut2 contained start='0'
\ end='^\s*#\s*\%(endif\|else\|elif\)\>'
\ contains=calendarSpaceError,calendarCppSkip
syn region calendarCppSkip contained
\ start='^\s*#\s*\%(if\|ifdef\|ifndef\)\>'
\ skip='\\$' end='^\s*#\s*endif\>'
\ contains=calendarSpaceError,calendarCppSkip
syn region calendarIncluded display contained start=+"+ skip=+\\\\\|\\"+
\ end=+"+
syn match calendarIncluded display contained '<[^>]*>'
syn match calendarInclude display '^\s*#\s*include\>\s*["<]'
\ contains=calendarIncluded
syn cluster calendarPreProcGroup contains=calendarPreCondit,calendarIncluded,
\ calendarInclude,calendarDefine,
\ calendarCppOut,calendarCppOut2,
\ calendarCppSkip,calendarString,
\ calendarSpecial,calendarTodo
syn region calendarDefine start='^\s*#\s*\%(define\|undef\)\>'
\ skip='\\$' end='$'
\ contains=ALLBUT,@calendarPreProcGroup
syn region calendarPreProc start='^\s*#\s*\%(pragma\|line\|warning\|warn\|error\)\>'
\ skip='\\$' end='$' keepend
\ contains=ALLBUT,@calendarPreProcGroup
syn keyword calendarKeyword CHARSET BODUN LANG
syn case ignore
syn keyword calendarKeyword Easter Pashka
syn case match
syn case ignore
syn match calendarNumber display '\<\d\+\>'
syn keyword calendarMonth Jan[uary] Feb[ruary] Mar[ch] Apr[il] May
\ Jun[e] Jul[y] Aug[ust] Sep[tember]
\ Oct[ober] Nov[ember] Dec[ember]
syn match calendarMonth display '\<\%(Jan\|Feb\|Mar\|Apr\|May\|Jun\|Jul\|Aug\|Sep\|Oct\|Nov\|Dec\)\.'
syn keyword calendarWeekday Mon[day] Tue[sday] Wed[nesday] Thu[rsday]
syn keyword calendarWeekday Fri[day] Sat[urday] Sun[day]
syn match calendarWeekday display '\<\%(Mon\|Tue\|Wed\|Thu\|Fri\|Sat\|Sun\)\.'
\ nextgroup=calendarWeekdayMod
syn match calendarWeekdayMod display '[+-]\d\+\>'
syn case match
syn match calendarTime display '\<\%([01]\=\d\|2[0-3]\):[0-5]\d\%(:[0-5]\d\)\='
syn match calendarTime display '\<\%(0\=[1-9]\|1[0-2]\):[0-5]\d\%(:[0-5]\d\)\=\s*[AaPp][Mm]'
syn match calendarVariable '\*'
if exists("c_minlines")
let b:c_minlines = c_minlines
else
if !exists("c_no_if0")
let b:c_minlines = 50 " #if 0 constructs can be long
else
let b:c_minlines = 15 " mostly for () constructs
endif
endif
exec "syn sync ccomment calendarComment minlines=" . b:c_minlines
hi def link calendarTodo Todo
hi def link calendarComment Comment
hi def link calendarCppString String
hi def link calendarSpecial SpecialChar
hi def link calendarPreCondit PreCondit
hi def link calendarCppOut Comment
hi def link calendarCppOut2 calendarCppOut
hi def link calendarCppSkip calendarCppOut
hi def link calendarIncluded String
hi def link calendarInclude Include
hi def link calendarDefine Macro
hi def link calendarPreProc PreProc
hi def link calendarKeyword Keyword
hi def link calendarNumber Number
hi def link calendarMonth String
hi def link calendarWeekday String
hi def link calendarWeekdayMod Special
hi def link calendarTime Number
hi def link calendarVariable Identifier
let b:current_syntax = "calendar"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

34
syntax/catalog.vim Normal file
View File

@@ -0,0 +1,34 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: sgml catalog file
" Maintainer: Johannes Zellner <johannes@zellner.org>
" Last Change: Fr, 04 Nov 2005 12:46:45 CET
" Filenames: /etc/sgml.catalog
" $Id: catalog.vim,v 1.2 2005/11/23 21:11:10 vimboss Exp $
" Quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case ignore
" strings
syn region catalogString start=+"+ skip=+\\\\\|\\"+ end=+"+ keepend
syn region catalogString start=+'+ skip=+\\\\\|\\'+ end=+'+ keepend
syn region catalogComment start=+--+ end=+--+ contains=catalogTodo
syn keyword catalogTodo TODO FIXME XXX NOTE contained
syn keyword catalogKeyword DOCTYPE OVERRIDE PUBLIC DTDDECL ENTITY CATALOG
" The default highlighting.
hi def link catalogString String
hi def link catalogComment Comment
hi def link catalogTodo Todo
hi def link catalogKeyword Statement
let b:current_syntax = "catalog"
endif

82
syntax/cdl.vim Normal file
View File

@@ -0,0 +1,82 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Comshare Dimension Definition Language
" Maintainer: Raul Segura Acevedo <raulseguraaceved@netscape.net>
" Last change: 2016 Sep 20
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
sy case ignore
sy sync fromstart
sy keyword cdlStatement dimension hierarchy group grouphierarchy schedule class
sy keyword cdlType add update file category main altername removeall required notrequired
sy keyword cdlConditional if then elseif else endif and or not cons rpt xlt
sy keyword cdlFunction ChildOf IChildOf LeafChildOf DescendantOf IDescendantOf LeafDescendantOf MemberIs CountOf
sy keyword cdlIdentifier contained id name desc description xlttype precision symbol curr_ name group_name rate_name
sy keyword cdlIdentifier contained xcheck endbal accounttype natsign consolidate formula pctown usage periodicity
sy match cdlIdentifier contained 'child\s*name'
sy match cdlIdentifier contained 'parent\s*name'
sy match cdlIdentifier contained 'grp\s*description'
sy match cdlIdentifier contained 'grpchild\s*name'
sy match cdlIdentifier contained 'grpparent\s*name'
sy match cdlIdentifier contained 'preceding\s*member'
sy match cdlIdentifier contained 'unit\s*name'
sy match cdlIdentifier contained 'unit\s*id'
sy match cdlIdentifier contained 'schedule\s*name'
sy match cdlIdentifier contained 'schedule\s*id'
sy match cdlString /\[[^]]*]/ contains=cdlRestricted,cdlNotSupported
sy match cdlRestricted contained /[&*,_]/
" not supported
sy match cdlNotSupported contained /[:"!']/
sy keyword cdlTodo contained TODO FIXME XXX
sy cluster cdlCommentGroup contains=cdlTodo
sy match cdlComment '//.*' contains=@cdlCommentGroup
sy region cdlComment start="/\*" end="\*/" contains=@cdlCommentGroup fold
sy match cdlCommentE "\*/"
sy region cdlParen transparent start='(' end=')' contains=ALLBUT,cdlParenE,cdlRestricted,cdlNotSupported
"sy region cdlParen transparent start='(' end=')' contains=cdlIdentifier,cdlComment,cdlParenWordE
sy match cdlParenE ")"
"sy match cdlParenWordE contained "\k\+"
sy keyword cdlFxType allocation downfoot expr xltgain
"sy keyword cdlFxType contained allocation downfoot expr xltgain
"sy region cdlFx transparent start='\k\+(' end=')' contains=cdlConditional,cdlFunction,cdlString,cdlComment,cdlFxType
set foldmethod=expr
set foldexpr=(getline(v:lnum+1)=~'{'\|\|getline(v:lnum)=~'//\\s\\*\\{5}.*table')?'>1':1
%foldo!
set foldmethod=manual
let b:match_words='\<if\>:\<then\>:\<elseif\>:\<else\>:\<endif\>'
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link cdlStatement Statement
hi def link cdlType Type
hi def link cdlFxType Type
hi def link cdlIdentifier Identifier
hi def link cdlString String
hi def link cdlRestricted WarningMsg
hi def link cdlNotSupported ErrorMsg
hi def link cdlTodo Todo
hi def link cdlComment Comment
hi def link cdlCommentE ErrorMsg
hi def link cdlParenE ErrorMsg
hi def link cdlParenWordE ErrorMsg
hi def link cdlFunction Function
hi def link cdlConditional Conditional
let b:current_syntax = "cdl"
" vim: ts=8
endif

143
syntax/cdrdaoconf.vim Normal file
View File

@@ -0,0 +1,143 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: cdrdao(1) configuration file
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2007-09-02
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn keyword cdrdaoconfTodo
\ TODO FIXME XXX NOTE
syn match cdrdaoconfBegin
\ display
\ nextgroup=@cdrdaoconfKeyword,cdrdaoconfComment
\ '^'
syn cluster cdrdaoconfKeyword
\ contains=cdrdaoconfIntegerKeyword,
\ cdrdaoconfDriverKeyword,
\ cdrdaoconfDeviceKeyword,
\ cdrdaoconfPathKeyword
syn keyword cdrdaoconfIntegerKeyword
\ contained
\ nextgroup=cdrdaoconfIntegerDelimiter
\ write_speed
\ write_buffers
\ user_capacity
\ full_burn
\ read_speed
\ cddb_timeout
syn keyword cdrdaoconfIntegerKeyword
\ contained
\ nextgroup=cdrdaoconfParanoiaModeDelimiter
\ read_paranoia_mode
syn keyword cdrdaoconfDriverKeyword
\ contained
\ nextgroup=cdrdaoconfDriverDelimiter
\ write_driver
\ read_driver
syn keyword cdrdaoconfDeviceKeyword
\ contained
\ nextgroup=cdrdaoconfDeviceDelimiter
\ write_device
\ read_device
syn keyword cdrdaoconfPathKeyword
\ contained
\ nextgroup=cdrdaoconfPathDelimiter
\ cddb_directory
\ tmp_file_dir
syn match cdrdaoconfIntegerDelimiter
\ contained
\ nextgroup=cdrdaoconfInteger
\ skipwhite
\ ':'
syn match cdrdaoconfParanoiaModeDelimiter
\ contained
\ nextgroup=cdrdaoconfParanoiaMode
\ skipwhite
\ ':'
syn match cdrdaoconfDriverDelimiter
\ contained
\ nextgroup=cdrdaoconfDriver
\ skipwhite
\ ':'
syn match cdrdaoconfDeviceDelimiter
\ contained
\ nextgroup=cdrdaoconfDevice
\ skipwhite
\ ':'
syn match cdrdaoconfPathDelimiter
\ contained
\ nextgroup=cdrdaoconfPath
\ skipwhite
\ ':'
syn match cdrdaoconfInteger
\ contained
\ '\<\d\+\>'
syn match cdrdaoParanoiaMode
\ contained
\ '[0123]'
syn match cdrdaoconfDriver
\ contained
\ '\<\(cdd2600\|generic-mmc\%(-raw\)\=\|plextor\%(-scan\)\|ricoh-mp6200\|sony-cdu9\%(20\|48\)\|taiyo-yuden\|teac-cdr55\|toshiba\|yamaha-cdr10x\)\>'
syn region cdrdaoconfDevice
\ contained
\ matchgroup=cdrdaoconfDevice
\ start=+"+
\ end=+"+
syn region cdrdaoconfPath
\ contained
\ matchgroup=cdrdaoconfPath
\ start=+"+
\ end=+"+
syn match cdrdaoconfComment
\ contains=cdrdaoconfTodo,@Spell
\ '^.*#.*$'
hi def link cdrdaoconfTodo Todo
hi def link cdrdaoconfComment Comment
hi def link cdrdaoconfKeyword Keyword
hi def link cdrdaoconfIntegerKeyword cdrdaoconfKeyword
hi def link cdrdaoconfDriverKeyword cdrdaoconfKeyword
hi def link cdrdaoconfDeviceKeyword cdrdaoconfKeyword
hi def link cdrdaoconfPathKeyword cdrdaoconfKeyword
hi def link cdrdaoconfDelimiter Delimiter
hi def link cdrdaoconfIntegerDelimiter cdrdaoconfDelimiter
hi def link cdrdaoconfDriverDelimiter cdrdaoconfDelimiter
hi def link cdrdaoconfDeviceDelimiter cdrdaoconfDelimiter
hi def link cdrdaoconfPathDelimiter cdrdaoconfDelimiter
hi def link cdrdaoconfInteger Number
hi def link cdrdaoconfParanoiaMode Number
hi def link cdrdaoconfDriver Identifier
hi def link cdrdaoconfDevice cdrdaoconfPath
hi def link cdrdaoconfPath String
let b:current_syntax = "cdrdaoconf"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

541
syntax/cdrtoc.vim Normal file
View File

@@ -0,0 +1,541 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: cdrdao(1) TOC file
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2007-05-10
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn keyword cdrtocTodo
\ contained
\ TODO
\ FIXME
\ XXX
\ NOTE
syn cluster cdrtocCommentContents
\ contains=
\ cdrtocTodo,
\ @Spell
syn cluster cdrtocHeaderFollowsInitial
\ contains=
\ cdrtocHeaderCommentInitial,
\ cdrtocHeaderCatalog,
\ cdrtocHeaderTOCType,
\ cdrtocHeaderCDText,
\ cdrtocTrack
syn match cdrtocHeaderBegin
\ nextgroup=@cdrtocHeaderFollowsInitial
\ skipwhite skipempty
\ '\%^'
let s:mmssff_pattern = '\%([0-5]\d\|\d\):\%([0-5]\d\|\d\):\%([0-6]\d\|7[0-5]\|\d\)\>'
let s:byte_pattern = '\<\%([01]\=\d\{1,2}\|2\%([0-4]\d\|5[0-5]\)\)\>'
let s:length_pattern = '\%(\%([0-5]\d\|\d\):\%([0-5]\d\|\d\):\%([0-6]\d\|7[0-5]\|\d\)\|\d\+\)\>'
function s:def_comment(name, nextgroup)
execute 'syn match' a:name
\ 'nextgroup=' . a:nextgroup . ',' . a:name
\ 'skipwhite skipempty'
\ 'contains=@cdrtocCommentContents'
\ 'contained'
\ "'//.*$'"
execute 'hi def link' a:name 'cdrtocComment'
endfunction
function s:def_keywords(name, nextgroup, keywords)
let comment_group = a:name . 'FollowComment'
execute 'syn keyword' a:name
\ 'nextgroup=' . a:nextgroup . ',' . comment_group
\ 'skipwhite skipempty'
\ 'contained'
\ join(a:keywords)
call s:def_comment(comment_group, a:nextgroup)
endfunction
function s:def_keyword(name, nextgroup, keyword)
call s:def_keywords(a:name, a:nextgroup, [a:keyword])
endfunction
" NOTE: Pattern needs to escape any “@”s.
function s:def_match(name, nextgroup, pattern)
let comment_group = a:name . 'FollowComment'
execute 'syn match' a:name
\ 'nextgroup=' . a:nextgroup . ',' . comment_group
\ 'skipwhite skipempty'
\ 'contained'
\ '@' . a:pattern . '@'
call s:def_comment(comment_group, a:nextgroup)
endfunction
function s:def_region(name, nextgroup, start, skip, end, matchgroup, contains)
let comment_group = a:name . 'FollowComment'
execute 'syn region' a:name
\ 'nextgroup=' . a:nextgroup . ',' . comment_group
\ 'skipwhite skipempty'
\ 'contained'
\ 'matchgroup=' . a:matchgroup
\ 'contains=' . a:contains
\ 'start=@' . a:start . '@'
\ (a:skip != "" ? ('skip=@' . a:skip . '@') : "")
\ 'end=@' . a:end . '@'
call s:def_comment(comment_group, a:nextgroup)
endfunction
call s:def_comment('cdrtocHeaderCommentInitial', '@cdrtocHeaderFollowsInitial')
call s:def_keyword('cdrtocHeaderCatalog', 'cdrtocHeaderCatalogNumber', 'CATALOG')
call s:def_match('cdrtocHeaderCatalogNumber', '@cdrtocHeaderFollowsInitial', '"\d\{13\}"')
call s:def_keywords('cdrtocHeaderTOCType', '@cdrtocHeaderFollowsInitial', ['CD_DA', 'CD_ROM', 'CD_ROM_XA'])
call s:def_keyword('cdrtocHeaderCDText', 'cdrtocHeaderCDTextStart', 'CD_TEXT')
" TODO: Actually, language maps arent required by TocParser.g, but lets keep
" things simple (and in agreement with what the manual page says).
call s:def_match('cdrtocHeaderCDTextStart', 'cdrtocHeaderCDTextLanguageMap', '{')
call s:def_keyword('cdrtocHeaderCDTextLanguageMap', 'cdrtocHeaderLanguageMapStart', 'LANGUAGE_MAP')
call s:def_match('cdrtocHeaderLanguageMapStart', 'cdrtocHeaderLanguageMapLanguageNumber', '{')
call s:def_match('cdrtocHeaderLanguageMapLanguageNumber', 'cdrtocHeaderLanguageMapColon', '\<[0-7]\>')
call s:def_match('cdrtocHeaderLanguageMapColon', 'cdrtocHeaderLanguageMapCountryCode,cdrtocHeaderLanguageMapCountryCodeName', ':')
syn cluster cdrtocHeaderLanguageMapCountryCodeFollow
\ contains=
\ cdrtocHeaderLanguageMapLanguageNumber,
\ cdrtocHeaderLanguageMapEnd
call s:def_match('cdrtocHeaderLanguageMapCountryCode',
\ '@cdrtocHeaderLanguageMapCountryCodeFollow',
\ s:byte_pattern)
call s:def_keyword('cdrtocHeaderLanguageMapCountryCodeName',
\ '@cdrtocHeaderLanguageMapCountryCodeFollow',
\ 'EN')
call s:def_match('cdrtocHeaderLanguageMapEnd',
\ 'cdrtocHeaderLanguage,cdrtocHeaderCDTextEnd',
\ '}')
call s:def_keyword('cdrtocHeaderLanguage', 'cdrtocHeaderLanguageNumber', 'LANGUAGE')
call s:def_match('cdrtocHeaderLanguageNumber', 'cdrtocHeaderLanguageStart', '\<[0-7]\>')
call s:def_match('cdrtocHeaderLanguageStart',
\ 'cdrtocHeaderCDTextItem,cdrtocHeaderLanguageEnd',
\ '{')
syn cluster cdrtocHeaderCDTextData
\ contains=
\ cdrtocHeaderCDTextDataString,
\ cdrtocHeaderCDTextDataBinaryStart
call s:def_keywords('cdrtocHeaderCDTextItem',
\ '@cdrtocHeaderCDTextData',
\ ['TITLE', 'PERFORMER', 'SONGWRITER', 'COMPOSER',
\ 'ARRANGER', 'MESSAGE', 'DISC_ID', 'GENRE', 'TOC_INFO1',
\ 'TOC_INFO2', 'UPC_EAN', 'ISRC', 'SIZE_INFO'])
call s:def_region('cdrtocHeaderCDTextDataString',
\ 'cdrtocHeaderCDTextItem,cdrtocHeaderLanguageEnd',
\ '"',
\ '\\\\\|\\"',
\ '"',
\ 'cdrtocHeaderCDTextDataStringDelimiters',
\ 'cdrtocHeaderCDTextDataStringSpecialChar')
syn match cdrtocHeaderCDTextDataStringSpecialChar
\ contained
\ display
\ '\\\%(\o\o\o\|["\\]\)'
call s:def_match('cdrtocHeaderCDTextDataBinaryStart',
\ 'cdrtocHeaderCDTextDataBinaryInteger',
\ '{')
call s:def_match('cdrtocHeaderCDTextDataBinaryInteger',
\ 'cdrtocHeaderCDTextDataBinarySeparator,cdrtocHeaderCDTextDataBinaryEnd',
\ s:byte_pattern)
call s:def_match('cdrtocHeaderCDTextDataBinarySeparator',
\ 'cdrtocHeaderCDTextDataBinaryInteger',
\ ',')
call s:def_match('cdrtocHeaderCDTextDataBinaryEnd',
\ 'cdrtocHeaderCDTextItem,cdrtocHeaderLanguageEnd',
\ '}')
call s:def_match('cdrtocHeaderLanguageEnd',
\ 'cdrtocHeaderLanguage,cdrtocHeaderCDTextEnd',
\ '}')
call s:def_match('cdrtocHeaderCDTextEnd',
\ 'cdrtocTrack',
\ '}')
syn cluster cdrtocTrackFollow
\ contains=
\ @cdrtocTrackFlags,
\ cdrtocTrackCDText,
\ cdrtocTrackPregap,
\ @cdrtocTrackContents
call s:def_keyword('cdrtocTrack', 'cdrtocTrackMode', 'TRACK')
call s:def_keywords('cdrtocTrackMode',
\ 'cdrtocTrackSubChannelMode,@cdrtocTrackFollow',
\ ['AUDIO', 'MODE1', 'MODE1_RAW', 'MODE2', 'MODE2_FORM1',
\ 'MODE2_FORM2', 'MODE2_FORM_MIX', 'MODE2_RAW'])
call s:def_keywords('cdrtocTrackSubChannelMode',
\ '@cdrtocTrackFollow',
\ ['RW', 'RW_RAW'])
syn cluster cdrtocTrackFlags
\ contains=
\ cdrtocTrackFlagNo,
\ cdrtocTrackFlagCopy,
\ cdrtocTrackFlagPreEmphasis,
\ cdrtocTrackFlag
call s:def_keyword('cdrtocTrackFlagNo',
\ 'cdrtocTrackFlagCopy,cdrtocTrackFlagPreEmphasis',
\ 'NO')
call s:def_keyword('cdrtocTrackFlagCopy', '@cdrtocTrackFollow', 'COPY')
call s:def_keyword('cdrtocTrackFlagPreEmphasis', '@cdrtocTrackFollow', 'PRE_EMPHASIS')
call s:def_keywords('cdrtocTrackFlag',
\ '@cdrtocTrackFollow',
\ ['TWO_CHANNEL_AUDIO', 'FOUR_CHANNEL_AUDIO'])
call s:def_keyword('cdrtocTrackFlag', 'cdrtocTrackISRC', 'ISRC')
call s:def_match('cdrtocTrackISRC',
\ '@cdrtocTrackFollow',
\ '"[[:upper:][:digit:]]\{5}\d\{7}"')
call s:def_keyword('cdrtocTrackCDText', 'cdrtocTrackCDTextStart', 'CD_TEXT')
call s:def_match('cdrtocTrackCDTextStart', 'cdrtocTrackCDTextLanguage', '{')
call s:def_keyword('cdrtocTrackCDTextLanguage', 'cdrtocTrackCDTextLanguageNumber', 'LANGUAGE')
call s:def_match('cdrtocTrackCDTextLanguageNumber', 'cdrtocTrackCDTextLanguageStart', '\<[0-7]\>')
call s:def_match('cdrtocTrackCDTextLanguageStart',
\ 'cdrtocTrackCDTextItem,cdrtocTrackCDTextLanguageEnd',
\ '{')
syn cluster cdrtocTrackCDTextData
\ contains=
\ cdrtocTrackCDTextDataString,
\ cdrtocTrackCDTextDataBinaryStart
call s:def_keywords('cdrtocTrackCDTextItem',
\ '@cdrtocTrackCDTextData',
\ ['TITLE', 'PERFORMER', 'SONGWRITER', 'COMPOSER', 'ARRANGER',
\ 'MESSAGE', 'ISRC'])
call s:def_region('cdrtocTrackCDTextDataString',
\ 'cdrtocTrackCDTextItem,cdrtocTrackCDTextLanguageEnd',
\ '"',
\ '\\\\\|\\"',
\ '"',
\ 'cdrtocTrackCDTextDataStringDelimiters',
\ 'cdrtocTrackCDTextDataStringSpecialChar')
syn match cdrtocTrackCDTextDataStringSpecialChar
\ contained
\ display
\ '\\\%(\o\o\o\|["\\]\)'
call s:def_match('cdrtocTrackCDTextDataBinaryStart',
\ 'cdrtocTrackCDTextDataBinaryInteger',
\ '{')
call s:def_match('cdrtocTrackCDTextDataBinaryInteger',
\ 'cdrtocTrackCDTextDataBinarySeparator,cdrtocTrackCDTextDataBinaryEnd',
\ s:byte_pattern)
call s:def_match('cdrtocTrackCDTextDataBinarySeparator',
\ 'cdrtocTrackCDTextDataBinaryInteger',
\ ',')
call s:def_match('cdrtocTrackCDTextDataBinaryEnd',
\ 'cdrtocTrackCDTextItem,cdrtocTrackCDTextLanguageEnd',
\ '}')
call s:def_match('cdrtocTrackCDTextLanguageEnd',
\ 'cdrtocTrackCDTextLanguage,cdrtocTrackCDTextEnd',
\ '}')
call s:def_match('cdrtocTrackCDTextEnd',
\ 'cdrtocTrackPregap,@cdrtocTrackContents',
\ '}')
call s:def_keyword('cdrtocTrackPregap', 'cdrtocTrackPregapMMSSFF', 'PREGAP')
call s:def_match('cdrtocTrackPregapMMSSFF',
\ '@cdrtocTrackContents',
\ s:mmssff_pattern)
syn cluster cdrtocTrackContents
\ contains=
\ cdrtocTrackSubTrack,
\ cdrtocTrackMarker
syn cluster cdrtocTrackContentsFollow
\ contains=
\ @cdrtocTrackContents,
\ cdrtocTrackIndex,
\ cdrtocTrack
call s:def_keywords('cdrtocTrackSubTrack',
\ 'cdrtocTrackSubTrackFileFilename',
\ ['FILE', 'AUDIOFILE'])
call s:def_region('cdrtocTrackSubTrackFileFilename',
\ 'cdrtocTrackSubTrackFileStart',
\ '"',
\ '\\\\\|\\"',
\ '"',
\ 'cdrtocTrackSubTrackFileFilenameDelimiters',
\ 'cdrtocTrackSubTrackFileFilenameSpecialChar')
syn match cdrtocTrackSubTrackFileFilenameSpecialChar
\ contained
\ display
\ '\\\%(\o\o\o\|["\\]\)'
call s:def_match('cdrtocTrackSubTrackFileStart',
\ 'cdrtocTrackSubTrackFileLength,@cdrtocTrackContentsFollow',
\ s:length_pattern)
call s:def_match('cdrtocTrackSubTrackFileLength',
\ '@cdrtocTrackContentsFollow',
\ s:length_pattern)
call s:def_keyword('cdrtocTrackSubTrack', 'cdrtocTrackContentDatafileFilename', 'DATAFILE')
call s:def_region('cdrtocTrackSubTrackDatafileFilename',
\ 'cdrtocTrackSubTrackDatafileLength',
\ '"',
\ '\\\\\|\\"',
\ '"',
\ 'cdrtocTrackSubTrackDatafileFilenameDelimiters',
\ 'cdrtocTrackSubTrackDatafileFilenameSpecialChar')
syn match cdrtocTrackSubTrackdatafileFilenameSpecialChar
\ contained
\ display
\ '\\\%(\o\o\o\|["\\]\)'
call s:def_match('cdrtocTrackDatafileLength',
\ '@cdrtocTrackContentsFollow',
\ s:length_pattern)
call s:def_keyword('cdrtocTrackSubTrack', 'cdrtocTrackContentFifoFilename', 'DATAFILE')
call s:def_region('cdrtocTrackSubTrackFifoFilename',
\ 'cdrtocTrackSubTrackFifoLength',
\ '"',
\ '\\\\\|\\"',
\ '"',
\ 'cdrtocTrackSubTrackFifoFilenameDelimiters',
\ 'cdrtocTrackSubTrackFifoFilenameSpecialChar')
syn match cdrtocTrackSubTrackdatafileFilenameSpecialChar
\ contained
\ display
\ '\\\%(\o\o\o\|["\\]\)'
call s:def_match('cdrtocTrackFifoLength',
\ '@cdrtocTrackContentsFollow',
\ s:length_pattern)
call s:def_keyword('cdrtocTrackSubTrack', 'cdrtocTrackSilenceLength', 'SILENCE')
call s:def_match('cdrtocTrackSilenceLength',
\ '@cdrtocTrackContentsFollow',
\ s:length_pattern)
call s:def_keyword('cdrtocTrackSubTrack',
\ 'cdrtocTrackSubTrackZeroDataMode,' .
\ 'cdrtocTrackSubTrackZeroDataSubChannelMode,' .
\ 'cdrtocTrackSubTrackZeroDataLength',
\ 'ZERO')
call s:def_keywords('cdrtocTrackSubTrackZeroDataMode',
\ 'cdrtocTrackSubTrackZeroSubChannelMode,cdrtocTrackSubTrackZeroDataLength',
\ ['AUDIO', 'MODE1', 'MODE1_RAW', 'MODE2', 'MODE2_FORM1',
\ 'MODE2_FORM2', 'MODE2_FORM_MIX', 'MODE2_RAW'])
call s:def_keywords('cdrtocTrackSubTrackZeroDataSubChannelMode',
\ 'cdrtocTrackSubTrackZeroDataLength',
\ ['RW', 'RW_RAW'])
call s:def_match('cdrtocTrackSubTrackZeroDataLength',
\ '@cdrtocTrackContentsFollow',
\ s:length_pattern)
call s:def_keyword('cdrtocTrackMarker',
\ '@cdrtocTrackContentsFollow,cdrtocTrackMarkerStartMMSSFF',
\ 'START')
call s:def_match('cdrtocTrackMarkerStartMMSSFF',
\ '@cdrtocTrackContentsFollow',
\ s:mmssff_pattern)
call s:def_keyword('cdrtocTrackMarker',
\ '@cdrtocTrackContentsFollow,cdrtocTrackMarkerEndMMSSFF',
\ 'END')
call s:def_match('cdrtocTrackMarkerEndMMSSFF',
\ '@cdrtocTrackContentsFollow',
\ s:mmssff_pattern)
call s:def_keyword('cdrtocTrackIndex', 'cdrtocTrackIndexMMSSFF', 'INDEX')
call s:def_match('cdrtocTrackIndexMMSSFF',
\ 'cdrtocTrackIndex,cdrtocTrack',
\ s:mmssff_pattern)
delfunction s:def_region
delfunction s:def_match
delfunction s:def_keyword
delfunction s:def_keywords
delfunction s:def_comment
syn sync fromstart
hi def link cdrtocKeyword Keyword
hi def link cdrtocHeaderKeyword cdrtocKeyword
hi def link cdrtocHeaderCDText cdrtocHeaderKeyword
hi def link cdrtocDelimiter Delimiter
hi def link cdrtocCDTextDataBinaryEnd cdrtocDelimiter
hi def link cdrtocHeaderCDTextDataBinaryEnd cdrtocHeaderCDTextDataBinaryEnd
hi def link cdrtocNumber Number
hi def link cdrtocCDTextDataBinaryInteger cdrtocNumber
hi def link cdrtocHeaderCDTextDataBinaryInteger cdrtocCDTextDataBinaryInteger
hi def link cdrtocCDTextDataBinarySeparator cdrtocDelimiter
hi def link cdrtocHeaderCDTextDataBinarySeparator cdrtocCDTextDataBinarySeparator
hi def link cdrtocCDTextDataBinaryStart cdrtocDelimiter
hi def link cdrtocHeaderCDTextDataBinaryStart cdrtocCDTextDataBinaryStart
hi def link cdrtocString String
hi def link cdrtocCDTextDataString cdrtocString
hi def link cdrtocHeaderCDTextDataString cdrtocCDTextDataString
hi def link cdrtocCDTextDataStringDelimiters cdrtocDelimiter
hi def link cdrtocHeaderCDTextDataStringDelimiters cdrtocCDTextDataStringDelimiters
hi def link cdrtocCDTextDataStringSpecialChar SpecialChar
hi def link cdrtocHeaderCDTextDataStringSpecialChar cdrtocCDTextDataStringSpecialChar
hi def link cdrtocCDTextEnd cdrtocDelimiter
hi def link cdrtocHeaderCDTextEnd cdrtocCDTextEnd
hi def link cdrtocType Type
hi def link cdrtocCDTextItem cdrtocType
hi def link cdrtocHeaderCDTextItem cdrtocCDTextItem
hi def link cdrtocHeaderCDTextLanguageMap cdrtocHeaderKeyword
hi def link cdrtocCDTextStart cdrtocDelimiter
hi def link cdrtocHeaderCDTextStart cdrtocCDTextStart
hi def link cdrtocHeaderCatalog cdrtocHeaderKeyword
hi def link cdrtocHeaderCatalogNumber cdrtocString
hi def link cdrtocComment Comment
hi def link cdrtocHeaderCommentInitial cdrtocComment
hi def link cdrtocHeaderLanguage cdrtocKeyword
hi def link cdrtocLanguageEnd cdrtocDelimiter
hi def link cdrtocHeaderLanguageEnd cdrtocLanguageEnd
hi def link cdrtocHeaderLanguageMapColon cdrtocDelimiter
hi def link cdrtocIdentifier Identifier
hi def link cdrtocHeaderLanguageMapCountryCode cdrtocNumber
hi def link cdrtocHeaderLanguageMapCountryCodeName cdrtocIdentifier
hi def link cdrtocHeaderLanguageMapEnd cdrtocDelimiter
hi def link cdrtocHeaderLanguageMapLanguageNumber cdrtocNumber
hi def link cdrtocHeaderLanguageMapStart cdrtocDelimiter
hi def link cdrtocLanguageNumber cdrtocNumber
hi def link cdrtocHeaderLanguageNumber cdrtocLanguageNumber
hi def link cdrtocLanguageStart cdrtocDelimiter
hi def link cdrtocHeaderLanguageStart cdrtocLanguageStart
hi def link cdrtocHeaderTOCType cdrtocType
hi def link cdrtocTodo Todo
hi def link cdrtocTrackKeyword cdrtocKeyword
hi def link cdrtocTrack cdrtocTrackKeyword
hi def link cdrtocTrackCDText cdrtocTrackKeyword
hi def link cdrtocTrackCDTextDataBinaryEnd cdrtocHeaderCDTextDataBinaryEnd
hi def link cdrtocTrackCDTextDataBinaryInteger cdrtocHeaderCDTextDataBinaryInteger
hi def link cdrtocTrackCDTextDataBinarySeparator cdrtocHeaderCDTextDataBinarySeparator
hi def link cdrtocTrackCDTextDataBinaryStart cdrtocHeaderCDTextDataBinaryStart
hi def link cdrtocTrackCDTextDataString cdrtocHeaderCDTextDataString
hi def link cdrtocTrackCDTextDataStringDelimiters cdrtocCDTextDataStringDelimiters
hi def link cdrtocTrackCDTextDataStringSpecialChar cdrtocCDTextDataStringSpecialChar
hi def link cdrtocTrackCDTextEnd cdrtocCDTextEnd
hi def link cdrtocTrackCDTextItem cdrtocCDTextItem
hi def link cdrtocTrackCDTextStart cdrtocCDTextStart
hi def link cdrtocLength cdrtocNumber
hi def link cdrtocTrackDatafileLength cdrtocLength
hi def link cdrtocTrackFifoLength cdrtocLength
hi def link cdrtocPreProc PreProc
hi def link cdrtocTrackFlag cdrtocPreProc
hi def link cdrtocTrackFlagCopy cdrtocTrackFlag
hi def link cdrtocSpecial Special
hi def link cdrtocTrackFlagNo cdrtocSpecial
hi def link cdrtocTrackFlagPreEmphasis cdrtocTrackFlag
hi def link cdrtocTrackISRC cdrtocTrackFlag
hi def link cdrtocTrackIndex cdrtocTrackKeyword
hi def link cdrtocMMSSFF cdrtocLength
hi def link cdrtocTrackIndexMMSSFF cdrtocMMSSFF
hi def link cdrtocTrackCDTextLanguage cdrtocTrackKeyword
hi def link cdrtocTrackCDTextLanguageEnd cdrtocLanguageEnd
hi def link cdrtocTrackCDTextLanguageNumber cdrtocLanguageNumber
hi def link cdrtocTrackCDTextLanguageStart cdrtocLanguageStart
hi def link cdrtocTrackContents StorageClass
hi def link cdrtocTrackMarker cdrtocTrackContents
hi def link cdrtocTrackMarkerEndMMSSFF cdrtocMMSSFF
hi def link cdrtocTrackMarkerStartMMSSFF cdrtocMMSSFF
hi def link cdrtocTrackMode Type
hi def link cdrtocTrackPregap cdrtocTrackContents
hi def link cdrtocTrackPregapMMSSFF cdrtocMMSSFF
hi def link cdrtocTrackSilenceLength cdrtocLength
hi def link cdrtocTrackSubChannelMode cdrtocPreProc
hi def link cdrtocTrackSubTrack cdrtocTrackContents
hi def link cdrtocFilename cdrtocString
hi def link cdrtocTrackSubTrackDatafileFilename cdrtocFilename
hi def link cdrtocTrackSubTrackDatafileFilenameDelimiters cdrtocTrackSubTrackDatafileFilename
hi def link cdrtocSpecialChar SpecialChar
hi def link cdrtocTrackSubTrackDatafileFilenameSpecialChar cdrtocSpecialChar
hi def link cdrtocTrackSubTrackDatafileLength cdrtocLength
hi def link cdrtocTrackSubTrackFifoFilename cdrtocFilename
hi def link cdrtocTrackSubTrackFifoFilenameDelimiters cdrtocTrackSubTrackFifoFilename
hi def link cdrtocTrackSubTrackFifoFilenameSpecialChar cdrtocSpecialChar
hi def link cdrtocTrackSubTrackFifoLength cdrtocLength
hi def link cdrtocTrackSubTrackFileFilename cdrtocFilename
hi def link cdrtocTrackSubTrackFileFilenameDelimiters cdrtocTrackSubTrackFileFilename
hi def link cdrtocTrackSubTrackFileFilenameSpecialChar cdrtocSpecialChar
hi def link cdrtocTrackSubTrackFileLength cdrtocLength
hi def link cdrtocTrackSubTrackFileStart cdrtocLength
hi def link cdrtocTrackSubTrackZeroDataLength cdrtocLength
hi def link cdrtocTrackSubTrackZeroDataMode Type
hi def link cdrtocTrackSubTrackZeroDataSubChannelMode cdrtocPreProc
hi def link cdrtocTrackSubTrackdatafileFilenameSpecialChar cdrtocSpecialChar
let b:current_syntax = "cdrtoc"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

441
syntax/cf.vim Normal file
View File

@@ -0,0 +1,441 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: CFML
" Maintainer: Toby Woodwark (toby.woodwark+vim@gmail.com)
" Last Change: 2010-03-02
" Filenames: *.cfc *.cfm
" Version: Adobe ColdFusion 9
" Usage: This file contains both syntax definitions
" and a list of known builtin tags, functions and keywords.
" Refs -
" http://help.adobe.com/en_US/ColdFusion/9.0/Developing/WS8f0cc78011fffa71866534d11cdad96e4e-8000.html
" http://help.adobe.com/en_US/ColdFusion/9.0/CFMLRef/WSc3ff6d0ea77859461172e0811cbec17324-8000.html
" TODO:
" Support the limited array literal and struct literal syntax in CF8+.
" Highlight namespaced tags fom cfimport.
" Complete CF9+ cfscript support.
" Railo support.
" Options:
" d_noinclude_html - set to prevent HTML highlighting. Use this if you are not working on HTML.
" Quit if a syntax file is already loaded.
if exists("b:current_syntax")
finish
endif
if exists("d_noinclude_html")
" Define alternatives to the HTML syntax file.
" Copied from html.vim - the rules for matching a CF tag match those for HTML/SGML.
" CFML syntax is more permissive when it comes to superfluous <> chars.
syn region htmlString contained start=+"+ end=+"+ contains=@htmlPreproc
syn region htmlString contained start=+'+ end=+'+ contains=@htmlPreproc
syn match htmlValue contained "=[\t ]*[^'" \t>][^ \t>]*"hs=s+1 contains=@htmlPreproc
" Hacked htmlTag so that it only matches cf tags and not random <> chars.
syn region htmlEndTag start=+</cf+ end=+>+ contains=htmlTagN,htmlTagError
syn region htmlTag start=+<\s*cf[^/]+ end=+>+ contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,@htmlPreproc,@htmlArgCluster
syn match htmlTagN contained +<\s*[-a-zA-Z0-9]\++hs=s+1 contains=htmlTagName,@htmlTagNameCluster
syn match htmlTagN contained +</\s*[-a-zA-Z0-9]\++hs=s+2 contains=htmlTagName,@htmlTagNameCluster
syn match htmlTagError contained "[^>]<"ms=s+1
else
" Use all the stuff from the HTML syntax file.
" This means eg HTML comments are highlighted as comments, even if they include cf tags.
runtime! syntax/html.vim
endif
syn sync fromstart
syn sync maxlines=200
syn case ignore
" Scopes and keywords.
syn keyword cfScope contained cgi cffile cookie request caller this thistag
syn keyword cfScope contained cfcatch variables application server session client form url local
syn keyword cfScope contained arguments super cfhttp attributes error
syn keyword cfBool contained yes no true false
" Operator strings.
" ColdFusion <=7:
syn keyword cfOperator contained xor eqv and or lt le lte gt ge gte equal eq neq not is mod contains
syn match cfOperatorMatch contained "+"
syn match cfOperatorMatch contained "\-"
syn match cfOperatorMatch contained "[\*\/\\\^\&][\+\-\*\/\\\^\&]\@!"
syn match cfOperatorMatch contained "\<\(not\_s\+\)\?equal\>"
syn match cfOperatorMatch contained "\<does\_s\+not\_s\+contain\>"
syn match cfOperatorMatch contained "\<\(greater\|less\)\_s\+than\(\_s\+or\_s\+equal\_s\+to\)\?\>"
" ColdFusion 8:
syn keyword cfOperator contained imp
syn match cfOperatorMatch contained "[?%:!]"
syn match cfOperatorMatch contained "[\+\-\*\/\&]="
syn match cfOperatorMatch contained "++"
syn match cfOperatorMatch contained "--"
syn match cfOperatorMatch contained "&&"
syn match cfOperatorMatch contained "||"
syn cluster cfOperatorCluster contains=cfOperator,cfOperatorMatch
" Custom tags called with the <cf_xxx> syntax.
syn match cfCustomTagName contained "\<cf_[a-zA-Z0-9_]\+\>"
" (TODO match namespaced tags imported using cfimport, similarly.)
" Tag names.
" ColdFusion <=7:
syn keyword cfTagName contained cfabort cfapplet cfapplication cfargument cfassociate
syn keyword cfTagName contained cfbreak cfcache cfcalendar cfcase cfcatch
syn keyword cfTagName contained cfchart cfchartdata cfchartseries cfcol cfcollection
syn keyword cfTagName contained cfcomponent cfcontent cfcookie cfdefaultcase cfdirectory
syn keyword cfTagName contained cfdocument cfdocumentitem cfdocumentsection cfdump cfelse
syn keyword cfTagName contained cfelseif cferror cfexecute cfexit cffile cfflush cfform
syn keyword cfTagName contained cfformgroup cfformitem cfftp cffunction
syn keyword cfTagName contained cfgrid cfgridcolumn cfgridrow cfgridupdate cfheader
syn keyword cfTagName contained cfhtmlhead cfhttp cfhttpparam cfif cfimport
syn keyword cfTagName contained cfinclude cfindex cfinput cfinsert cfinvoke cfinvokeargument
syn keyword cfTagName contained cfldap cflocation cflock cflog cflogin cfloginuser cflogout
syn keyword cfTagName contained cfloop cfmail cfmailparam cfmailpart cfmodule
syn keyword cfTagName contained cfNTauthenticate cfobject cfobjectcache cfoutput cfparam
syn keyword cfTagName contained cfpop cfprocessingdirective cfprocparam cfprocresult
syn keyword cfTagName contained cfproperty cfquery cfqueryparam cfregistry cfreport
syn keyword cfTagName contained cfreportparam cfrethrow cfreturn cfsavecontent cfschedule
syn keyword cfTagName contained cfscript cfsearch cfselect cfservletparam cfset
syn keyword cfTagName contained cfsetting cfsilent cfslider cfstoredproc cfswitch cftable
syn keyword cfTagName contained cftextarea cftextinput cfthrow cftimer cftrace cftransaction
syn keyword cfTagName contained cftree cftreeitem cftry cfupdate cfwddx cfxml
" ColdFusion 8:
syn keyword cfTagName contained cfajaximport cfajaxproxy cfdbinfo cfdiv cfexchangecalendar
syn keyword cfTagName contained cfexchangeconnection cfexchangecontact cfexchangefilter
syn keyword cfTagName contained cfexchangemail cfexchangetask cffeed
syn keyword cfTagName contained cfinterface cflayout cflayoutarea cfmenu cfmenuitem
syn keyword cfTagName contained cfpdf cfpdfform cfpdfformparam cfpdfparam cfpdfsubform cfpod
syn keyword cfTagName contained cfpresentation cfpresentationslide cfpresenter cfprint
syn keyword cfTagName contained cfsprydataset cfthread cftooltip cfwindow cfzip cfzipparam
" ColdFusion 9:
syn keyword cfTagName contained cfcontinue cffileupload cffinally
syn keyword cfTagName contained cfimage cfimap
syn keyword cfTagName contained cfmap cfmapitem cfmediaplayer cfmessagebox
syn keyword cfTagName contained cfprocparam cfprogressbar
syn keyword cfTagName contained cfsharepoint cfspreadsheet
" Tag attributes.
" XXX Not updated for ColdFusion 8/9.
" These are becoming a headache to maintain, so might be removed.
syn keyword cfArg contained abort accept access accessible action addnewline addtoken
syn keyword cfArg contained agentname align appendkey appletsource application
syn keyword cfArg contained applicationtimeout applicationtoken archive
syn keyword cfArg contained argumentcollection arguments asciiextensionlist
syn keyword cfArg contained attachmentpath attributecollection attributes autowidth
syn keyword cfArg contained backgroundvisible basetag bcc bgcolor bind bindingname
syn keyword cfArg contained blockfactor body bold border branch cachedafter cachedwithin
syn keyword cfArg contained casesensitive category categorytree cc cfsqltype charset
syn keyword cfArg contained chartheight chartwidth checked class clientmanagement
syn keyword cfArg contained clientstorage codebase colheaderalign colheaderbold
syn keyword cfArg contained colheaderfont colheaderfontsize colheaderitalic colheaders
syn keyword cfArg contained colheadertextcolor collection colorlist colspacing columns
syn keyword cfArg contained completepath component condition connection contentid
syn keyword cfArg contained context contextbytes contexthighlightbegin
syn keyword cfArg contained contexthighlightend contextpassages cookiedomain criteria
syn keyword cfArg contained custom1 custom2 custom3 custom4 data dataalign
syn keyword cfArg contained databackgroundcolor datacollection datasource daynames
syn keyword cfArg contained dbname dbserver dbtype dbvarname debug default delete
syn keyword cfArg contained deletebutton deletefile delimiter delimiters description
syn keyword cfArg contained destination detail directory disabled display displayname
syn keyword cfArg contained disposition dn domain editable enablecab enablecfoutputonly
syn keyword cfArg contained enabled encoded encryption enctype enddate endrange endtime
syn keyword cfArg contained entry errorcode exception existing expand expires expireurl
syn keyword cfArg contained expression extendedinfo extends extensions external
syn keyword cfArg contained failifexists failto file filefield filename filter
syn keyword cfArg contained firstdayofweek firstrowasheaders fixnewline font fontbold
syn keyword cfArg contained fontembed fontitalic fontsize foregroundcolor format
syn keyword cfArg contained formfields formula from generateuniquefilenames getasbinary
syn keyword cfArg contained grid griddataalign gridlines groovecolor group
syn keyword cfArg contained groupcasesensitive header headeralign headerbold headerfont
syn keyword cfArg contained headerfontsize headeritalic headerlines headertextcolor
syn keyword cfArg contained height highlighthref hint href hrefkey hscroll hspace html
syn keyword cfArg contained htmltable id idletimeout img imgopen imgstyle index inline
syn keyword cfArg contained input insert insertbutton interval isolation italic item
syn keyword cfArg contained itemcolumn key keyonly label labelformat language list
syn keyword cfArg contained listgroups locale localfile log loginstorage lookandfeel
syn keyword cfArg contained mailerid mailto marginbottom marginleft marginright
syn keyword cfArg contained margintop markersize markerstyle mask max maxlength maxrows
syn keyword cfArg contained message messagenumber method mimeattach mimetype min mode
syn keyword cfArg contained modifytype monthnames multipart multiple name nameconflict
syn keyword cfArg contained namespace new newdirectory notsupported null numberformat
syn keyword cfArg contained object omit onblur onchange onclick onerror onfocus
syn keyword cfArg contained onkeydown onkeyup onload onmousedown onmouseup onreset
syn keyword cfArg contained onsubmit onvalidate operation orderby orientation output
syn keyword cfArg contained outputfile overwrite ownerpassword pageencoding pageheight
syn keyword cfArg contained pagetype pagewidth paintstyle param_1 param_2 param_3
syn keyword cfArg contained param_4 param_5 param_6 param_7 param_8 param_9 parent
syn keyword cfArg contained parrent passive passthrough password path pattern
syn keyword cfArg contained permissions picturebar pieslicestyle port porttypename
syn keyword cfArg contained prefix preloader preservedata previouscriteria procedure
syn keyword cfArg contained protocol provider providerdsn proxybypass proxypassword
syn keyword cfArg contained proxyport proxyserver proxyuser publish query queryasroot
syn keyword cfArg contained queryposition range rebind recurse redirect referral
syn keyword cfArg contained refreshlabel remotefile replyto report requesttimeout
syn keyword cfArg contained required reset resoleurl resolveurl result resultset
syn keyword cfArg contained retrycount returnasbinary returncode returntype
syn keyword cfArg contained returnvariable roles rotated rowheaderalign rowheaderbold
syn keyword cfArg contained rowheaderfont rowheaderfontsize rowheaderitalic rowheaders
syn keyword cfArg contained rowheadertextcolor rowheaderwidth rowheight scale scalefrom
syn keyword cfArg contained scaleto scope scriptprotect scriptsrc secure securitycontext
syn keyword cfArg contained select selectcolor selected selecteddate selectedindex
syn keyword cfArg contained selectmode separator seriescolor serieslabel seriesplacement
syn keyword cfArg contained server serviceport serviceportname sessionmanagement
syn keyword cfArg contained sessiontimeout setclientcookies setcookie setdomaincookies
syn keyword cfArg contained show3d showborder showdebugoutput showerror showlegend
syn keyword cfArg contained showmarkers showxgridlines showygridlines size skin sort
syn keyword cfArg contained sortascendingbutton sortcontrol sortdescendingbutton
syn keyword cfArg contained sortxaxis source spoolenable sql src srcfile start startdate
syn keyword cfArg contained startrange startrow starttime status statuscode statustext
syn keyword cfArg contained step stoponerror style subject suggestions
syn keyword cfArg contained suppresswhitespace tablename tableowner tablequalifier
syn keyword cfArg contained taglib target task template text textcolor textqualifier
syn keyword cfArg contained throwonerror throwonerror throwonfailure throwontimeout
syn keyword cfArg contained timeout timespan tipbgcolor tipstyle title to tooltip
syn keyword cfArg contained toplevelvariable transfermode type uid unit url urlpath
syn keyword cfArg contained useragent username userpassword usetimezoneinfo validate
syn keyword cfArg contained validateat value valuecolumn values valuesdelimiter
syn keyword cfArg contained valuesdisplay var variable vertical visible vscroll vspace
syn keyword cfArg contained webservice width wmode wraptext wsdlfile xaxistitle
syn keyword cfArg contained xaxistype xoffset yaxistitle yaxistype yoffset
" Functions.
" ColdFusion <=7:
syn keyword cfFunctionName contained ACos ASin Abs AddSOAPRequestHeader AddSOAPResponseHeader
syn keyword cfFunctionName contained ArrayAppend ArrayAvg ArrayClear ArrayDeleteAt ArrayInsertAt
syn keyword cfFunctionName contained ArrayIsEmpty ArrayLen ArrayMax ArrayMin ArrayNew
syn keyword cfFunctionName contained ArrayPrepend ArrayResize ArraySet ArraySort ArraySum
syn keyword cfFunctionName contained ArraySwap ArrayToList Asc Atn AuthenticatedContext
syn keyword cfFunctionName contained AuthenticatedUser BinaryDecode BinaryEncode BitAnd
syn keyword cfFunctionName contained BitMaskClear BitMaskRead BitMaskSet BitNot BitOr BitSHLN
syn keyword cfFunctionName contained BitSHRN BitXor CJustify Ceiling CharsetDecode CharsetEncode
syn keyword cfFunctionName contained Chr Compare CompareNoCase Cos CreateDate CreateDateTime
syn keyword cfFunctionName contained CreateODBCDate CreateODBCDateTime CreateODBCTime
syn keyword cfFunctionName contained CreateObject CreateTime CreateTimeSpan CreateUUID DE DateAdd
syn keyword cfFunctionName contained DateCompare DateConvert DateDiff DateFormat DatePart Day
syn keyword cfFunctionName contained DayOfWeek DayOfWeekAsString DayOfYear DaysInMonth DaysInYear
syn keyword cfFunctionName contained DecimalFormat DecrementValue Decrypt DecryptBinary
syn keyword cfFunctionName contained DeleteClientVariable DirectoryExists DollarFormat Duplicate
syn keyword cfFunctionName contained Encrypt EncryptBinary Evaluate Exp ExpandPath FileExists
syn keyword cfFunctionName contained Find FindNoCase FindOneOf FirstDayOfMonth Fix FormatBaseN
syn keyword cfFunctionName contained GenerateSecretKey GetAuthUser GetBaseTagData GetBaseTagList
syn keyword cfFunctionName contained GetBaseTemplatePath GetClientVariablesList GetContextRoot
syn keyword cfFunctionName contained GetCurrentTemplatePath GetDirectoryFromPath GetEncoding
syn keyword cfFunctionName contained GetException GetFileFromPath GetFunctionList
syn keyword cfFunctionName contained GetGatewayHelper GetHttpRequestData GetHttpTimeString
syn keyword cfFunctionName contained GetLocalHostIP
syn keyword cfFunctionName contained GetLocale GetLocaleDisplayName GetMetaData GetMetricData
syn keyword cfFunctionName contained GetPageContext GetProfileSections GetProfileString
syn keyword cfFunctionName contained GetSOAPRequest GetSOAPRequestHeader GetSOAPResponse
syn keyword cfFunctionName contained GetSOAPResponseHeader GetTempDirectory GetTempFile
syn keyword cfFunctionName contained GetTickCount GetTimeZoneInfo GetToken
syn keyword cfFunctionName contained HTMLCodeFormat HTMLEditFormat Hash Hour IIf IncrementValue
syn keyword cfFunctionName contained InputBaseN Insert Int IsArray IsAuthenticated IsAuthorized
syn keyword cfFunctionName contained IsBinary IsBoolean IsCustomFunction IsDate IsDebugMode
syn keyword cfFunctionName contained IsDefined
syn keyword cfFunctionName contained IsLeapYear IsLocalHost IsNumeric
syn keyword cfFunctionName contained IsNumericDate IsObject IsProtected IsQuery IsSOAPRequest
syn keyword cfFunctionName contained IsSimpleValue IsStruct IsUserInRole IsValid IsWDDX IsXML
syn keyword cfFunctionName contained IsXmlAttribute IsXmlDoc IsXmlElem IsXmlNode IsXmlRoot
syn keyword cfFunctionName contained JSStringFormat JavaCast LCase LJustify LSCurrencyFormat
syn keyword cfFunctionName contained LSDateFormat LSEuroCurrencyFormat LSIsCurrency LSIsDate
syn keyword cfFunctionName contained LSIsNumeric LSNumberFormat LSParseCurrency LSParseDateTime
syn keyword cfFunctionName contained LSParseEuroCurrency LSParseNumber LSTimeFormat LTrim Left
syn keyword cfFunctionName contained Len ListAppend ListChangeDelims ListContains
syn keyword cfFunctionName contained ListContainsNoCase ListDeleteAt ListFind ListFindNoCase
syn keyword cfFunctionName contained ListFirst ListGetAt ListInsertAt ListLast ListLen
syn keyword cfFunctionName contained ListPrepend ListQualify ListRest ListSetAt ListSort
syn keyword cfFunctionName contained ListToArray ListValueCount ListValueCountNoCase Log Log10
syn keyword cfFunctionName contained Max Mid Min Minute Month MonthAsString Now NumberFormat
syn keyword cfFunctionName contained ParagraphFormat ParseDateTime Pi
syn keyword cfFunctionName contained PreserveSingleQuotes Quarter QueryAddColumn QueryAddRow
syn keyword cfFunctionName contained QueryNew QuerySetCell QuotedValueList REFind REFindNoCase
syn keyword cfFunctionName contained REReplace REReplaceNoCase RJustify RTrim Rand RandRange
syn keyword cfFunctionName contained Randomize ReleaseComObject RemoveChars RepeatString Replace
syn keyword cfFunctionName contained ReplaceList ReplaceNoCase Reverse Right Round Second
syn keyword cfFunctionName contained SendGatewayMessage SetEncoding SetLocale SetProfileString
syn keyword cfFunctionName contained SetVariable Sgn Sin SpanExcluding SpanIncluding Sqr StripCR
syn keyword cfFunctionName contained StructAppend StructClear StructCopy StructCount StructDelete
syn keyword cfFunctionName contained StructFind StructFindKey StructFindValue StructGet
syn keyword cfFunctionName contained StructInsert StructIsEmpty StructKeyArray StructKeyExists
syn keyword cfFunctionName contained StructKeyList StructNew StructSort StructUpdate Tan
syn keyword cfFunctionName contained TimeFormat ToBase64 ToBinary ToScript ToString Trim UCase
syn keyword cfFunctionName contained URLDecode URLEncodedFormat URLSessionFormat Val ValueList
syn keyword cfFunctionName contained Week Wrap WriteOutput XmlChildPos XmlElemNew XmlFormat
syn keyword cfFunctionName contained XmlGetNodeType XmlNew XmlParse XmlSearch XmlTransform
syn keyword cfFunctionName contained XmlValidate Year YesNoFormat
" ColdFusion 8:
syn keyword cfFunctionName contained AjaxLink AjaxOnLoad ArrayIsDefined BinaryDecode BinaryEncode CharsetDecode CharsetEncode
syn keyword cfFunctionName contained DecryptBinary DeserializeJSON DotNetToCFType EncryptBinary FileClose FileCopy FileDelete
syn keyword cfFunctionName contained FileIsEOF FileMove FileOpen FileRead FileReadBinary FileReadLine FileSetAccessMode FileSetAttribute
syn keyword cfFunctionName contained FileSetLastModified FileWrite GenerateSecretKey GetGatewayHelper GetAuthUser GetComponentMetaData
syn keyword cfFunctionName contained GetContextRoot GetEncoding GetFileInfo GetLocaleDisplayName GetLocalHostIP GetMetaData
syn keyword cfFunctionName contained GetPageContext GetPrinterInfo GetProfileSections GetReadableImageFormats GetSOAPRequest
syn keyword cfFunctionName contained GetSOAPRequestHeader GetSOAPResponse GetSOAPResponseHeader GetUserRoles GetWriteableImageFormats
syn keyword cfFunctionName contained ImageAddBorder ImageBlur ImageClearRect ImageCopy ImageCrop ImageDrawArc ImageDrawBeveledRect
syn keyword cfFunctionName contained ImageDrawCubicCurve ImageDrawPoint ImageDrawLine ImageDrawLines ImageDrawOval
syn keyword cfFunctionName contained ImageDrawQuadraticCurve ImageDrawRect ImageDrawRoundRect ImageDrawText ImageFlip ImageGetBlob
syn keyword cfFunctionName contained ImageGetBufferedImage ImageGetEXIFMetadata ImageGetEXIFTag ImageGetHeight ImageGetIPTCMetadata
syn keyword cfFunctionName contained ImageGetIPTCTag ImageGetWidth ImageGrayscale ImageInfo ImageNegative ImageNew ImageOverlay
syn keyword cfFunctionName contained ImagePaste ImageRead ImageReadBase64 ImageResize ImageRotate ImageRotateDrawingAxis ImageScaleToFit
" ColdFusion 9:
syn keyword cfFunctionName contained ApplicationStop ArrayContains ArrayDelete ArrayFind ArrayFindNoCase IsSpreadsheetFile
syn keyword cfFunctionName contained IsSpreadsheetObject FileSkipBytes Location ObjectLoad SpreadsheetFormatColumn
syn keyword cfFunctionName contained SpreadsheetFormatColumns SpreadsheetFormatRow SpreadsheetFormatRows SpreadsheetGetCellComment
syn keyword cfFunctionName contained CacheGetAllIds CacheGetMetadata CacheGetProperties CacheGet CachePut ObjectSave ORMClearSession
syn keyword cfFunctionName contained ORMCloseSession ORMEvictQueries ORMEvictCollection SpreadsheetGetCellFormula SpreadsheetGetCellValue
syn keyword cfFunctionName contained SpreadsheetInfo SpreadsheetMergeCells SpreadsheetNew CacheRemove CacheSetProperties DirectoryCreate
syn keyword cfFunctionName contained DirectoryDelete DirectoryExists ORMEvictEntity ORMEvictQueries ORMExecuteQuery ORMFlush
syn keyword cfFunctionName contained ORMGetSession SpreadsheetRead SpreadsheetReadBinary SpreadsheetSetActiveSheetNumber
syn keyword cfFunctionName contained SpreadsheetSetCellComment SpreadsheetSetCellFormula DirectoryList DirectoryRename EntityDelete
syn keyword cfFunctionName contained EntityLoad EntityLoadByExample ORMGetSessionFactory ORMReload ObjectEquals SpreadsheetAddColumn
syn keyword cfFunctionName contained SpreadsheetAddFreezePane SpreadsheetSetCellValue SpreadsheetSetActiveSheet SpreadsheetSetFooter
syn keyword cfFunctionName contained SpreadsheetSetHeader SpreadsheetSetColumnWidth EntityLoadByPK EntityMerge EntityNew EntityReload
syn keyword cfFunctionName contained EntitySave SpreadsheetAddImage SpreadsheetAddInfo SpreadsheetAddRow SpreadsheetAddRows
syn keyword cfFunctionName contained SpreadsheetAddSplitPane SpreadsheetShiftColumns SpreadsheetShiftRows SpreadsheetSetRowHeight
syn keyword cfFunctionName contained SpreadsheetWrite Trace FileDelete FileSeek FileWriteLine GetFunctionCalledName GetVFSMetaData IsIPv6
syn keyword cfFunctionName contained IsNull SpreadsheetCreateSheet SpreadsheetDeleteColumn SpreadsheetDeleteColumns SpreadsheetDeleteRow
syn keyword cfFunctionName contained SpreadsheetDeleteRows SpreadsheetFormatCell TransactionCommit TransactionRollback
syn keyword cfFunctionName contained TransactionSetSavePoint ThreadTerminate ThreadJoin Throw Writedump Writelog
" Deprecated or obsoleted tags and functions.
syn keyword cfDeprecatedTag contained cfauthenticate cfimpersonate cfgraph cfgraphdata
syn keyword cfDeprecatedTag contained cfservlet cfservletparam cftextinput
syn keyword cfDeprecatedTag contained cfinternaladminsecurity cfnewinternaladminsecurity
syn keyword cfDeprecatedFunction contained GetK2ServerDocCount GetK2ServerDocCountLimit GetTemplatePath
syn keyword cfDeprecatedFunction contained IsK2ServerABroker IsK2ServerDocCountExceeded IsK2ServerOnline
syn keyword cfDeprecatedFunction contained ParameterExists AuthenticatedContext AuthenticatedUser
syn keyword cfDeprecatedFunction contained isAuthenticated isAuthorized isProtected
" Add to the HTML clusters.
syn cluster htmlTagNameCluster add=cfTagName,cfCustomTagName,cfDeprecatedTag
syn cluster htmlArgCluster add=cfArg,cfHashRegion,cfScope
syn cluster htmlPreproc add=cfHashRegion
syn cluster cfExpressionCluster contains=cfFunctionName,cfScope,@cfOperatorCluster,cfScriptStringD,cfScriptStringS,cfScriptNumber,cfBool,cfComment
" Evaluation; skip strings ( this helps with cases like nested IIf() )
" containedin to add to the TOP of cfOutputRegion.
syn region cfHashRegion start=+#+ skip=+"[^"]*"\|'[^']*'+ end=+#+ contained containedin=cfOutputRegion contains=@cfExpressionCluster,cfScriptParenError
" Hashmarks are significant inside cfoutput tags.
" cfoutput tags may be nested indefinitely.
syn region cfOutputRegion matchgroup=NONE transparent start=+<cfoutput>+ end=+</cfoutput>+ contains=TOP
" <cfset>, <cfif>, <cfelseif>, <cfreturn> are analogous to hashmarks (implicit
" evaluation) and have 'var'
syn region cfSetRegion start="<cfset\>" start="<cfreturn\>" start="<cfelseif\>" start="<cfif\>" end='>' keepend contains=@cfExpressionCluster,cfSetLHSRegion,cfSetTagEnd,cfScriptStatement
syn region cfSetLHSRegion contained start="<cfreturn" start="<cfelseif" start="<cfif" start="<cfset" end="." keepend contains=cfTagName,htmlTag
syn match cfSetTagEnd contained '>'
" CF comments: similar to SGML comments, but can be nested.
syn region cfComment start='<!---' end='--->' contains=cfCommentTodo,cfComment
syn keyword cfCommentTodo contained TODO FIXME XXX TBD WTF
" CFscript
" TODO better support for new component/function def syntax
" TODO better support for 'new'
" TODO highlight metadata (@ ...) inside comments.
syn match cfScriptLineComment contained "\/\/.*$" contains=cfCommentTodo
syn region cfScriptComment contained start="/\*" end="\*/" contains=cfCommentTodo
syn match cfScriptBraces contained "[{}]"
syn keyword cfScriptStatement contained return var
" in CF, quotes are escaped by doubling
syn region cfScriptStringD contained start=+"+ skip=+\\\\\|""+ end=+"+ extend contains=@htmlPreproc,cfHashRegion
syn region cfScriptStringS contained start=+'+ skip=+\\\\\|''+ end=+'+ extend contains=@htmlPreproc,cfHashRegion
syn match cfScriptNumber contained "\<\d\+\>"
syn keyword cfScriptConditional contained if else
syn keyword cfScriptRepeat contained while for in
syn keyword cfScriptBranch contained break switch case default try catch continue finally
syn keyword cfScriptKeyword contained function
" argumentCollection is a special argument to function calls
syn keyword cfScriptSpecial contained argumentcollection
" ColdFusion 9:
syn keyword cfScriptStatement contained new import
" CFscript equivalents of some tags
syn keyword cfScriptKeyword contained abort component exit import include
syn keyword cfScriptKeyword contained interface param pageencoding property rethrow thread transaction
" function/component syntax
syn keyword cfScriptSpecial contained required extends
syn cluster cfScriptCluster contains=cfScriptParen,cfScriptLineComment,cfScriptComment,cfScriptStringD,cfScriptStringS,cfScriptFunction,cfScriptNumber,cfScriptRegexpString,cfScriptBoolean,cfScriptBraces,cfHashRegion,cfFunctionName,cfDeprecatedFunction,cfScope,@cfOperatorCluster,cfScriptConditional,cfScriptRepeat,cfScriptBranch,@cfExpressionCluster,cfScriptStatement,cfScriptSpecial,cfScriptKeyword
" Errors caused by wrong parenthesis; skip strings
syn region cfScriptParen contained transparent skip=+"[^"]*"\|'[^']*'+ start=+(+ end=+)+ contains=@cfScriptCluster
syn match cfScrParenError contained +)+
syn region cfscriptBlock matchgroup=NONE start="<cfscript>" end="<\/cfscript>"me=s-1 keepend contains=@cfScriptCluster,cfscriptTag,cfScrParenError
syn region cfscriptTag contained start='<cfscript' end='>' keepend contains=cfTagName,htmlTag
" CFML
syn cluster cfmlCluster contains=cfComment,@htmlTagNameCluster,@htmlPreproc,cfSetRegion,cfscriptBlock,cfOutputRegion
" cfquery = sql syntax
if exists("b:current_syntax")
unlet b:current_syntax
endif
syn include @cfSql $VIMRUNTIME/syntax/sql.vim
unlet b:current_syntax
syn region cfqueryTag contained start=+<cfquery+ end=+>+ keepend contains=cfTagName,htmlTag
syn region cfSqlregion start=+<cfquery\_[^>]*>+ keepend end=+</cfquery>+me=s-1 matchgroup=NONE contains=@cfSql,cfComment,@htmlTagNameCluster,cfqueryTag,cfHashRegion
" Define the highlighting.
if exists("d_noinclude_html")
" The default html-style highlighting copied from html.vim.
hi def link htmlTag Function
hi def link htmlEndTag Identifier
hi def link htmlArg Type
hi def link htmlTagName htmlStatement
hi def link htmlValue String
hi def link htmlPreProc PreProc
hi def link htmlString String
hi def link htmlStatement Statement
hi def link htmlValue String
hi def link htmlTagError htmlError
hi def link htmlError Error
endif
hi def link cfTagName Statement
hi def link cfCustomTagName Statement
hi def link cfArg Type
hi def link cfFunctionName Function
hi def link cfHashRegion PreProc
hi def link cfComment Comment
hi def link cfCommentTodo Todo
hi def link cfOperator Operator
hi def link cfOperatorMatch Operator
hi def link cfScope Title
hi def link cfBool Constant
hi def link cfscriptBlock Special
hi def link cfscriptTag htmlTag
hi def link cfSetRegion PreProc
hi def link cfSetLHSRegion htmlTag
hi def link cfSetTagEnd htmlTag
hi def link cfScriptLineComment Comment
hi def link cfScriptComment Comment
hi def link cfScriptStringS String
hi def link cfScriptStringD String
hi def link cfScriptNumber cfScriptValue
hi def link cfScriptConditional Conditional
hi def link cfScriptRepeat Repeat
hi def link cfScriptBranch Conditional
hi def link cfScriptSpecial Type
hi def link cfScriptStatement Statement
hi def link cfScriptBraces Function
hi def link cfScriptKeyword Function
hi def link cfScriptError Error
hi def link cfDeprecatedTag Error
hi def link cfDeprecatedFunction Error
hi def link cfScrParenError cfScriptError
hi def link cfqueryTag htmlTag
let b:current_syntax = "cf"
" vim: nowrap sw=2 ts=8 noet
endif

52
syntax/cfg.vim Normal file
View File

@@ -0,0 +1,52 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Good old CFG files
" Maintainer: Igor N. Prischepoff (igor@tyumbit.ru, pri_igor@mail.ru)
" Last change: 2012 Aug 11
" quit when a syntax file was already loaded
if exists ("b:current_syntax")
finish
endif
" case off
syn case ignore
syn keyword CfgOnOff ON OFF YES NO TRUE FALSE contained
syn match UncPath "\\\\\p*" contained
"Dos Drive:\Path
syn match CfgDirectory "[a-zA-Z]:\\\p*" contained
"Parameters
syn match CfgParams ".\{0}="me=e-1 contains=CfgComment
"... and their values (don't want to highlight '=' sign)
syn match CfgValues "=.*"hs=s+1 contains=CfgDirectory,UncPath,CfgComment,CfgString,CfgOnOff
" Sections
syn match CfgSection "\[.*\]"
syn match CfgSection "{.*}"
" String
syn match CfgString "\".*\"" contained
syn match CfgString "'.*'" contained
" Comments (Everything before '#' or '//' or ';')
syn match CfgComment "#.*"
syn match CfgComment ";.*"
syn match CfgComment "\/\/.*"
" Define the default hightlighting.
" Only when an item doesn't have highlighting yet
hi def link CfgOnOff Label
hi def link CfgComment Comment
hi def link CfgSection Type
hi def link CfgString String
hi def link CfgParams Keyword
hi def link CfgValues Constant
hi def link CfgDirectory Directory
hi def link UncPath Directory
let b:current_syntax = "cfg"
" vim:ts=8
endif

42
syntax/ch.vim Normal file
View File

@@ -0,0 +1,42 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Ch
" Maintainer: SoftIntegration, Inc. <info@softintegration.com>
" URL: http://www.softintegration.com/download/vim/syntax/ch.vim
" Last change: 2004 Sep 01
" Created based on cpp.vim
"
" Ch is a C/C++ interpreter with many high level extensions
"
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" Read the C syntax to start with
runtime! syntax/c.vim
unlet b:current_syntax
" Ch extentions
syn keyword chStatement new delete this foreach
syn keyword chAccess public private
syn keyword chStorageClass __declspec(global) __declspec(local)
syn keyword chStructure class
syn keyword chType string_t array
" Default highlighting
hi def link chAccess chStatement
hi def link chExceptions Exception
hi def link chStatement Statement
hi def link chType Type
hi def link chStructure Structure
let b:current_syntax = "ch"
" vim: ts=8
endif

98
syntax/chaiscript.vim Normal file
View File

@@ -0,0 +1,98 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: ChaiScript
" Maintainer: Jason Turner <lefticus 'at' gmail com>
" Quit when a (custom) syntax file was already loaded
if exists("b:current_syntax")
finish
end
syn case match
" syncing method
syn sync fromstart
" Strings
syn region chaiscriptString start=+"+ end=+"+ skip=+\\\\\|\\"+ contains=chaiscriptSpecial,chaiscriptEval,@Spell
" Escape characters
syn match chaiscriptSpecial contained "\\[\\abfnrtv\'\"]\|\\\d\{,3}"
" String evals
syn region chaiscriptEval contained start="${" end="}"
" integer number
syn match chaiscriptNumber "\<\d\+\>"
" floating point number, with dot, optional exponent
syn match chaiscriptFloat "\<\d\+\.\d*\%(e[-+]\=\d\+\)\=\>"
" floating point number, starting with a dot, optional exponent
syn match chaiscriptFloat "\.\d\+\%(e[-+]\=\d\+\)\=\>"
" floating point number, without dot, with exponent
syn match chaiscriptFloat "\<\d\+e[-+]\=\d\+\>"
" Hex strings
syn match chaiscriptNumber "\<0x\x\+\>"
" Binary strings
syn match chaiscriptNumber "\<0b[01]\+\>"
" Various language features
syn keyword chaiscriptCond if else
syn keyword chaiscriptRepeat while for do
syn keyword chaiscriptStatement break continue return
syn keyword chaiscriptExceptions try catch throw
"Keyword
syn keyword chaiscriptKeyword def true false attr
"Built in types
syn keyword chaiscriptType fun var
"Built in funcs, keep it simple
syn keyword chaiscriptFunc eval throw
"Let's treat all backtick operator function lookups as built in too
syn region chaiscriptFunc matchgroup=chaiscriptFunc start="`" end="`"
" Account for the "[1..10]" syntax, treating it as an operator
" Intentionally leaving out all of the normal, well known operators
syn match chaiscriptOperator "\.\."
" Guard seperator as an operator
syn match chaiscriptOperator ":"
" Comments
syn match chaiscriptComment "//.*$" contains=@Spell
syn region chaiscriptComment matchgroup=chaiscriptComment start="/\*" end="\*/" contains=@Spell
hi def link chaiscriptExceptions Exception
hi def link chaiscriptKeyword Keyword
hi def link chaiscriptStatement Statement
hi def link chaiscriptRepeat Repeat
hi def link chaiscriptString String
hi def link chaiscriptNumber Number
hi def link chaiscriptFloat Float
hi def link chaiscriptOperator Operator
hi def link chaiscriptConstant Constant
hi def link chaiscriptCond Conditional
hi def link chaiscriptFunction Function
hi def link chaiscriptComment Comment
hi def link chaiscriptTodo Todo
hi def link chaiscriptError Error
hi def link chaiscriptSpecial SpecialChar
hi def link chaiscriptFunc Identifier
hi def link chaiscriptType Type
hi def link chaiscriptEval Special
let b:current_syntax = "chaiscript"
" vim: nowrap sw=2 sts=2 ts=8 noet
endif

33
syntax/change.vim Normal file
View File

@@ -0,0 +1,33 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: WEB Changes
" Maintainer: Andreas Scherer <andreas.scherer@pobox.com>
" Last Change: April 25, 2001
" Details of the change mechanism of the WEB and CWEB languages can be found
" in the articles by Donald E. Knuth and Silvio Levy cited in "web.vim" and
" "cweb.vim" respectively.
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" We distinguish two groups of material, (a) stuff between @x..@y, and
" (b) stuff between @y..@z. WEB/CWEB ignore everything else in a change file.
syn region changeFromMaterial start="^@x.*$"ms=e+1 end="^@y.*$"me=s-1
syn region changeToMaterial start="^@y.*$"ms=e+1 end="^@z.*$"me=s-1
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link changeFromMaterial String
hi def link changeToMaterial Statement
let b:current_syntax = "change"
" vim: ts=8
endif

62
syntax/changelog.vim Normal file
View File

@@ -0,0 +1,62 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: generic ChangeLog file
" Written By: Gediminas Paulauskas <menesis@delfi.lt>
" Maintainer: Corinna Vinschen <vinschen@redhat.com>
" Last Change: June 1, 2003
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case ignore
if exists('b:changelog_spacing_errors')
let s:spacing_errors = b:changelog_spacing_errors
elseif exists('g:changelog_spacing_errors')
let s:spacing_errors = g:changelog_spacing_errors
else
let s:spacing_errors = 1
endif
if s:spacing_errors
syn match changelogError "^ \+"
endif
syn match changelogText "^\s.*$" contains=changelogMail,changelogNumber,changelogMonth,changelogDay,changelogError
syn match changelogHeader "^\S.*$" contains=changelogNumber,changelogMonth,changelogDay,changelogMail
syn region changelogFiles start="^\s\+[+*]\s" end=":" end="^$" contains=changelogBullet,changelogColon,changelogFuncs,changelogError keepend
syn region changelogFiles start="^\s\+[([]" end=":" end="^$" contains=changelogBullet,changelogColon,changelogFuncs,changelogError keepend
syn match changelogFuncs contained "(.\{-})" extend
syn match changelogFuncs contained "\[.\{-}]" extend
syn match changelogColon contained ":"
syn match changelogBullet contained "^\s\+[+*]\s" contains=changelogError
syn match changelogMail contained "<[A-Za-z0-9\._:+-]\+@[A-Za-z0-9\._-]\+>"
syn keyword changelogMonth contained jan feb mar apr may jun jul aug sep oct nov dec
syn keyword changelogDay contained mon tue wed thu fri sat sun
syn match changelogNumber contained "[.-]*[0-9]\+"
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link changelogText Normal
hi def link changelogBullet Type
hi def link changelogColon Type
hi def link changelogFiles Comment
hi def link changelogFuncs Comment
hi def link changelogHeader Statement
hi def link changelogMail Special
hi def link changelogNumber Number
hi def link changelogMonth Number
hi def link changelogDay Number
hi def link changelogError Folded
let b:current_syntax = "changelog"
" vim: ts=8
endif

18
syntax/chaskell.vim Normal file
View File

@@ -0,0 +1,18 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Haskell supporting c2hs binding hooks
" Maintainer: Armin Sander <armin@mindwalker.org>
" Last Change: 2001 November 1
"
" 2001 November 1: Changed commands for sourcing haskell.vim
" Enable binding hooks
let b:hs_chs=1
" Include standard Haskell highlighting
runtime! syntax/haskell.vim
" vim: ts=8
endif

51
syntax/cheetah.vim Normal file
View File

@@ -0,0 +1,51 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Cheetah template engine
" Maintainer: Max Ischenko <mfi@ukr.net>
" Last Change: 2003-05-11
"
" Missing features:
" match invalid syntax, like bad variable ref. or unmatched closing tag
" PSP-style tags: <% .. %> (obsoleted feature)
" doc-strings and header comments (rarely used feature)
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syntax case match
syn keyword cheetahKeyword contained if else unless elif for in not
syn keyword cheetahKeyword contained while repeat break continue pass end
syn keyword cheetahKeyword contained set del attr def global include raw echo
syn keyword cheetahKeyword contained import from extends implements
syn keyword cheetahKeyword contained assert raise try catch finally
syn keyword cheetahKeyword contained errorCatcher breakpoint silent cache filter
syn match cheetahKeyword contained "\<compiler-settings\>"
" Matches cached placeholders
syn match cheetahPlaceHolder "$\(\*[0-9.]\+[wdhms]\?\*\|\*\)\?\h\w*\(\.\h\w*\)*" display
syn match cheetahPlaceHolder "$\(\*[0-9.]\+[wdhms]\?\*\|\*\)\?{\h\w*\(\.\h\w*\)*}" display
syn match cheetahDirective "^\s*#[^#].*$" contains=cheetahPlaceHolder,cheetahKeyword,cheetahComment display
syn match cheetahContinuation "\\$"
syn match cheetahComment "##.*$" display
syn region cheetahMultiLineComment start="#\*" end="\*#"
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link cheetahPlaceHolder Identifier
hi def link cheetahDirective PreCondit
hi def link cheetahKeyword Define
hi def link cheetahContinuation Special
hi def link cheetahComment Comment
hi def link cheetahMultiLineComment Comment
let b:current_syntax = "cheetah"
endif

182
syntax/chill.vim Normal file
View File

@@ -0,0 +1,182 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: CHILL
" Maintainer: YoungSang Yoon <image@lgic.co.kr>
" Last change: 2004 Jan 21
"
" first created by image@lgic.co.kr & modified by paris@lgic.co.kr
" CHILL (CCITT High Level Programming Language) is used for
" developing software of ATM switch at LGIC (LG Information
" & Communications LTd.)
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" A bunch of useful CHILL keywords
syn keyword chillStatement goto GOTO return RETURN returns RETURNS
syn keyword chillLabel CASE case ESAC esac
syn keyword chillConditional if IF else ELSE elsif ELSIF switch SWITCH THEN then FI fi
syn keyword chillLogical NOT not
syn keyword chillRepeat while WHILE for FOR do DO od OD TO to
syn keyword chillProcess START start STACKSIZE stacksize PRIORITY priority THIS this STOP stop
syn keyword chillBlock PROC proc PROCESS process
syn keyword chillSignal RECEIVE receive SEND send NONPERSISTENT nonpersistent PERSISTENT peristent SET set EVER ever
syn keyword chillTodo contained TODO FIXME XXX
" String and Character constants
" Highlight special characters (those which have a backslash) differently
syn match chillSpecial contained "\\x\x\+\|\\\o\{1,3\}\|\\.\|\\$"
syn region chillString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=chillSpecial
syn match chillCharacter "'[^\\]'"
syn match chillSpecialCharacter "'\\.'"
syn match chillSpecialCharacter "'\\\o\{1,3\}'"
"when wanted, highlight trailing white space
if exists("chill_space_errors")
syn match chillSpaceError "\s*$"
syn match chillSpaceError " \+\t"me=e-1
endif
"catch errors caused by wrong parenthesis
syn cluster chillParenGroup contains=chillParenError,chillIncluded,chillSpecial,chillTodo,chillUserCont,chillUserLabel,chillBitField
syn region chillParen transparent start='(' end=')' contains=ALLBUT,@chillParenGroup
syn match chillParenError ")"
syn match chillInParen contained "[{}]"
"integer number, or floating point number without a dot and with "f".
syn case ignore
syn match chillNumber "\<\d\+\(u\=l\=\|lu\|f\)\>"
"floating point number, with dot, optional exponent
syn match chillFloat "\<\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\=\>"
"floating point number, starting with a dot, optional exponent
syn match chillFloat "\.\d\+\(e[-+]\=\d\+\)\=[fl]\=\>"
"floating point number, without dot, with exponent
syn match chillFloat "\<\d\+e[-+]\=\d\+[fl]\=\>"
"hex number
syn match chillNumber "\<0x\x\+\(u\=l\=\|lu\)\>"
"syn match chillIdentifier "\<[a-z_][a-z0-9_]*\>"
syn case match
" flag an octal number with wrong digits
syn match chillOctalError "\<0\o*[89]"
if exists("chill_comment_strings")
" A comment can contain chillString, chillCharacter and chillNumber.
" But a "*/" inside a chillString in a chillComment DOES end the comment! So we
" need to use a special type of chillString: chillCommentString, which also ends on
" "*/", and sees a "*" at the start of the line as comment again.
" Unfortunately this doesn't very well work for // type of comments :-(
syntax match chillCommentSkip contained "^\s*\*\($\|\s\+\)"
syntax region chillCommentString contained start=+"+ skip=+\\\\\|\\"+ end=+"+ end=+\*/+me=s-1 contains=chillSpecial,chillCommentSkip
syntax region chillComment2String contained start=+"+ skip=+\\\\\|\\"+ end=+"+ end="$" contains=chillSpecial
syntax region chillComment start="/\*" end="\*/" contains=chillTodo,chillCommentString,chillCharacter,chillNumber,chillFloat,chillSpaceError
syntax match chillComment "//.*" contains=chillTodo,chillComment2String,chillCharacter,chillNumber,chillSpaceError
else
syn region chillComment start="/\*" end="\*/" contains=chillTodo,chillSpaceError
syn match chillComment "//.*" contains=chillTodo,chillSpaceError
endif
syntax match chillCommentError "\*/"
syn keyword chillOperator SIZE size
syn keyword chillType dcl DCL int INT char CHAR bool BOOL REF ref LOC loc INSTANCE instance
syn keyword chillStructure struct STRUCT enum ENUM newmode NEWMODE synmode SYNMODE
"syn keyword chillStorageClass
syn keyword chillBlock PROC proc END end
syn keyword chillScope GRANT grant SEIZE seize
syn keyword chillEDML select SELECT delete DELETE update UPDATE in IN seq SEQ WHERE where INSERT insert include INCLUDE exclude EXCLUDE
syn keyword chillBoolConst true TRUE false FALSE
syn region chillPreCondit start="^\s*#\s*\(if\>\|ifdef\>\|ifndef\>\|elif\>\|else\>\|endif\>\)" skip="\\$" end="$" contains=chillComment,chillString,chillCharacter,chillNumber,chillCommentError,chillSpaceError
syn region chillIncluded contained start=+"+ skip=+\\\\\|\\"+ end=+"+
syn match chillIncluded contained "<[^>]*>"
syn match chillInclude "^\s*#\s*include\>\s*["<]" contains=chillIncluded
"syn match chillLineSkip "\\$"
syn cluster chillPreProcGroup contains=chillPreCondit,chillIncluded,chillInclude,chillDefine,chillInParen,chillUserLabel
syn region chillDefine start="^\s*#\s*\(define\>\|undef\>\)" skip="\\$" end="$" contains=ALLBUT,@chillPreProcGroup
syn region chillPreProc start="^\s*#\s*\(pragma\>\|line\>\|warning\>\|warn\>\|error\>\)" skip="\\$" end="$" contains=ALLBUT,@chillPreProcGroup
" Highlight User Labels
syn cluster chillMultiGroup contains=chillIncluded,chillSpecial,chillTodo,chillUserCont,chillUserLabel,chillBitField
syn region chillMulti transparent start='?' end=':' contains=ALLBUT,@chillMultiGroup
" Avoid matching foo::bar() in C++ by requiring that the next char is not ':'
syn match chillUserCont "^\s*\I\i*\s*:$" contains=chillUserLabel
syn match chillUserCont ";\s*\I\i*\s*:$" contains=chillUserLabel
syn match chillUserCont "^\s*\I\i*\s*:[^:]"me=e-1 contains=chillUserLabel
syn match chillUserCont ";\s*\I\i*\s*:[^:]"me=e-1 contains=chillUserLabel
syn match chillUserLabel "\I\i*" contained
" Avoid recognizing most bitfields as labels
syn match chillBitField "^\s*\I\i*\s*:\s*[1-9]"me=e-1
syn match chillBitField ";\s*\I\i*\s*:\s*[1-9]"me=e-1
syn match chillBracket contained "[<>]"
if !exists("chill_minlines")
let chill_minlines = 15
endif
exec "syn sync ccomment chillComment minlines=" . chill_minlines
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link chillLabel Label
hi def link chillUserLabel Label
hi def link chillConditional Conditional
" hi def link chillConditional term=bold ctermfg=red guifg=red gui=bold
hi def link chillRepeat Repeat
hi def link chillProcess Repeat
hi def link chillSignal Repeat
hi def link chillCharacter Character
hi def link chillSpecialCharacter chillSpecial
hi def link chillNumber Number
hi def link chillFloat Float
hi def link chillOctalError chillError
hi def link chillParenError chillError
hi def link chillInParen chillError
hi def link chillCommentError chillError
hi def link chillSpaceError chillError
hi def link chillOperator Operator
hi def link chillStructure Structure
hi def link chillBlock Operator
hi def link chillScope Operator
"hi def link chillEDML term=underline ctermfg=DarkRed guifg=Red
hi def link chillEDML PreProc
"hi def link chillBoolConst term=bold ctermfg=brown guifg=brown
hi def link chillBoolConst Constant
"hi def link chillLogical term=bold ctermfg=brown guifg=brown
hi def link chillLogical Constant
hi def link chillStorageClass StorageClass
hi def link chillInclude Include
hi def link chillPreProc PreProc
hi def link chillDefine Macro
hi def link chillIncluded chillString
hi def link chillError Error
hi def link chillStatement Statement
hi def link chillPreCondit PreCondit
hi def link chillType Type
hi def link chillCommentError chillError
hi def link chillCommentString chillString
hi def link chillComment2String chillString
hi def link chillCommentSkip chillComment
hi def link chillString String
hi def link chillComment Comment
" hi def link chillComment term=None ctermfg=lightblue guifg=lightblue
hi def link chillSpecial SpecialChar
hi def link chillTodo Todo
hi def link chillBlock Statement
"hi def link chillIdentifier Identifier
hi def link chillBracket Delimiter
let b:current_syntax = "chill"
" vim: ts=8
endif

71
syntax/chordpro.vim Normal file
View File

@@ -0,0 +1,71 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: ChordPro (v. 3.6.2)
" Maintainer: Niels Bo Andersen <niels@niboan.dk>
" Last Change: 2006 Apr 30
" Remark: Requires VIM version 6.00 or greater
" Quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
setlocal iskeyword+=-
syn case ignore
syn keyword chordproDirective contained
\ start_of_chorus soc end_of_chorus eoc new_song ns no_grid ng grid g
\ new_page np new_physical_page npp start_of_tab sot end_of_tab eot
\ column_break colb
syn keyword chordproDirWithOpt contained
\ comment c comment_italic ci comment_box cb title t subtitle st define
\ textfont textsize chordfont chordsize columns col
syn keyword chordproDefineKeyword contained base-fret frets
syn match chordproDirMatch /{\w*}/ contains=chordproDirective contained transparent
syn match chordproDirOptMatch /{\w*:/ contains=chordproDirWithOpt contained transparent
" Workaround for a bug in VIM 6, which causes incorrect coloring of the first {
if version < 700
syn region chordproOptions start=/{\w*:/ end=/}/ contains=chordproDirOptMatch contained transparent
syn region chordproOptions start=/{define:/ end=/}/ contains=chordproDirOptMatch, chordproDefineKeyword contained transparent
else
syn region chordproOptions start=/{\w*:/hs=e+1 end=/}/he=s-1 contains=chordproDirOptMatch contained
syn region chordproOptions start=/{define:/hs=e+1 end=/}/he=s-1 contains=chordproDirOptMatch, chordproDefineKeyword contained
endif
syn region chordproTag start=/{/ end=/}/ contains=chordproDirMatch,chordproOptions oneline
syn region chordproChord matchgroup=chordproBracket start=/\[/ end=/]/ oneline
syn region chordproTab start=/{start_of_tab}\|{sot}/hs=e+1 end=/{end_of_tab}\|{eot}/he=s-1 contains=chordproTag,chordproComment keepend
syn region chordproChorus start=/{start_of_chorus}\|{soc}/hs=e+1 end=/{end_of_chorus}\|{eoc}/he=s-1 contains=chordproTag,chordproChord,chordproComment keepend
syn match chordproComment /^#.*/
" Define the default highlighting.
hi def link chordproDirective Statement
hi def link chordproDirWithOpt Statement
hi def link chordproOptions Special
hi def link chordproChord Type
hi def link chordproTag Constant
hi def link chordproTab PreProc
hi def link chordproComment Comment
hi def link chordproBracket Constant
hi def link chordproDefineKeyword Type
hi def chordproChorus term=bold cterm=bold gui=bold
let b:current_syntax = "chordpro"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

102
syntax/cl.vim Normal file
View File

@@ -0,0 +1,102 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: CL
" (pronounced alphabetically: "Cee-El".
" CL stands for Clever Language,
" but the language is CL, not "Clever".
" CL was created by Multibase, http://www.mbase.com.au)
" Filename extensions: *.ent
" *.eni
" Maintainer: Philip Uren <philuSPAX@ieee.org> Remove SPAX spam block
" Version: 6
" Last Change: Mar 06 2013
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
setlocal iskeyword=@,48-57,_,-
syn case ignore
syn sync lines=300
"If/else/elsif/endif and while/wend mismatch errors
syn match clifError "\<wend\>"
syn match clifError "\<elsif\>"
syn match clifError "\<else\>"
syn match clifError "\<endif\>"
syn match clSpaceError "\s\+$"
" If and while regions
syn region clLoop transparent matchgroup=clWhile start="\<while\>" matchgroup=clWhile end="\<wend\>" contains=ALLBUT,clBreak,clProcedure
syn region clIf transparent matchgroup=clConditional start="\<if\>" matchgroup=clConditional end="\<endif\>" contains=ALLBUT,clBreak,clProcedure
" Make those TODO notes and debugging stand out!
syn keyword clTodo contained TODO BUG DEBUG FIX
syn match clNeedsWork contained "NEED[S]*\s\s*WORK"
syn keyword clDebug contained debug
syn match clComment "#.*$" contains=clTodo,clNeedsWork,@Spell
syn region clProcedure oneline start="^\s*[{}]" end="$"
syn match clInclude "^\s*include\s.*"
" We don't put "debug" in the clSetOptions;
" we contain it in clSet so we can make it stand out.
syn keyword clSetOptions transparent aauto abort align convert E fill fnum goback hangup justify null_exit output rauto rawprint rawdisplay repeat skip tab trim
syn match clSet "^\s*set\s.*" contains=clSetOptions,clDebug
syn match clPreProc "^\s*#P.*"
syn keyword clConditional else elsif
syn keyword clWhile continue endloop
" 'break' needs to be a region so we can sync on it above.
syn region clBreak oneline start="^\s*break" end="$"
syn match clOperator "[!;|)(:.><+*=-]"
syn match clNumber "\<\d\+\(u\=l\=\|lu\|f\)\>"
syn region clString matchgroup=clQuote start=+"+ end=+"+ skip=+\\"+ contains=@Spell
syn region clString matchgroup=clQuote start=+'+ end=+'+ skip=+\\'+ contains=@Spell
syn keyword clReserved ERROR EXIT INTERRUPT LOCKED LREPLY MODE MCOL MLINE MREPLY NULL REPLY V1 V2 V3 V4 V5 V6 V7 V8 V9 ZERO BYPASS GOING_BACK AAUTO ABORT ABORT ALIGN BIGE CONVERT FNUM GOBACK HANGUP JUSTIFY NEXIT OUTPUT RAUTO RAWDISPLAY RAWPRINT REPEAT SKIP TAB TRIM LCOUNT PCOUNT PLINES SLINES SCOLS MATCH LMATCH
syn keyword clFunction asc asize chr name random slen srandom day getarg getcgi getenv lcase scat sconv sdel skey smult srep substr sword trim ucase match
syn keyword clStatement clear clear_eol clear_eos close copy create unique with where empty define define ldefine delay_form delete escape exit_block exit_do exit_process field fork format get getfile getnext getprev goto head join maintain message no_join on_eop on_key on_exit on_delete openin openout openapp pause popenin popenout popenio print put range read redisplay refresh restart_block screen select sleep text unlock write and not or do
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link clifError Error
hi def link clSpaceError Error
hi def link clWhile Repeat
hi def link clConditional Conditional
hi def link clDebug Debug
hi def link clNeedsWork Todo
hi def link clTodo Todo
hi def link clComment Comment
hi def link clProcedure Procedure
hi def link clBreak Procedure
hi def link clInclude Include
hi def link clSetOption Statement
hi def link clSet Identifier
hi def link clPreProc PreProc
hi def link clOperator Operator
hi def link clNumber Number
hi def link clString String
hi def link clQuote Delimiter
hi def link clReserved Identifier
hi def link clFunction Function
hi def link clStatement Statement
let b:current_syntax = "cl"
" vim: ts=8 sw=8
endif

94
syntax/clean.vim Normal file
View File

@@ -0,0 +1,94 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Clean
" Author: Pieter van Engelen <pietere@sci.kun.nl>
" Co-Author: Arthur van Leeuwen <arthurvl@sci.kun.nl>
" Last Change: 2013 Oct 15 by Jurriën Stutterheim
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" Some Clean-keywords
syn keyword cleanConditional if case
syn keyword cleanLabel let! with where in of
syn keyword cleanSpecial Start
syn keyword cleanKeyword infixl infixr infix
syn keyword cleanBasicType Int Real Char Bool String
syn keyword cleanSpecialType World ProcId Void Files File
syn keyword cleanModuleSystem module implementation definition system
syn keyword cleanTypeClass class instance export
" Import highlighting
syn region cleanIncludeRegion start="^\s*\(from\|import\|\s\+\(as\|qualified\)\)" end="\n" contains=cleanIncludeKeyword keepend
syn keyword cleanIncludeKeyword contained from import as qualified
" To do some Denotation Highlighting
syn keyword cleanBoolDenot True False
syn region cleanStringDenot start=+"+ skip=+\(\(\\\\\)\+\|\\"\)+ end=+"+ display
syn match cleanCharDenot "'\(\\\\\|\\'\|[^'\\]\)\+'" display
syn match cleanIntegerDenot "[\~+-]\?\<\(\d\+\|0[0-7]\+\|0x[0-9A-Fa-f]\+\)\>" display
syn match cleanRealDenot "[\~+-]\?\d\+\.\d\+\(E[\~+-]\?\d\+\)\?" display
" To highlight the use of lists, tuples and arrays
syn region cleanList start="\[" end="\]" contains=ALL
syn region cleanRecord start="{" end="}" contains=ALL
syn region cleanArray start="{:" end=":}" contains=ALL
syn match cleanTuple "([^=]*,[^=]*)" contains=ALL
" To do some Comment Highlighting
syn region cleanComment start="/\*" end="\*/" contains=cleanComment,cleanTodo fold
syn region cleanComment start="//.*" end="$" display contains=cleanTodo
syn keyword cleanTodo TODO FIXME XXX contained
" Now for some useful type definition recognition
syn match cleanFuncTypeDef "\([a-zA-Z].*\|(\=[-~@#$%^?!+*<>\/|&=:]\+)\=\)\s*\(infix[lr]\=\)\=\s*\d\=\s*::.*->.*" contains=cleanSpecial,cleanBasicType,cleanSpecialType,cleanKeyword
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
" Comments
hi def link cleanComment Comment
" Constants and denotations
hi def link cleanStringDenot String
hi def link cleanCharDenot Character
hi def link cleanIntegerDenot Number
hi def link cleanBoolDenot Boolean
hi def link cleanRealDenot Float
" Identifiers
" Statements
hi def link cleanTypeClass Keyword
hi def link cleanConditional Conditional
hi def link cleanLabel Label
hi def link cleanKeyword Keyword
" Generic Preprocessing
hi def link cleanIncludeKeyword Include
hi def link cleanModuleSystem PreProc
" Type
hi def link cleanBasicType Type
hi def link cleanSpecialType Type
hi def link cleanFuncTypeDef Typedef
" Special
hi def link cleanSpecial Special
hi def link cleanList Special
hi def link cleanArray Special
hi def link cleanRecord Special
hi def link cleanTuple Special
" Error
" Todo
hi def link cleanTodo Todo
let b:current_syntax = "clean"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=4
endif

139
syntax/clipper.vim Normal file
View File

@@ -0,0 +1,139 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file:
" Language: Clipper 5.2 & FlagShip
" Maintainer: C R Zamana <zamana@zip.net>
" Some things based on c.vim by Bram Moolenaar and pascal.vim by Mario Eusebio
" Last Change: 2011 Dec 29 by Thilo Six
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" Exceptions for my "Very Own" (TM) user variables naming style.
" If you don't like this, comment it
syn match clipperUserVariable "\<[a,b,c,d,l,n,o,u,x][A-Z][A-Za-z0-9_]*\>"
syn match clipperUserVariable "\<[a-z]\>"
" Clipper is case insensitive ( see "exception" above )
syn case ignore
" Clipper keywords ( in no particular order )
syn keyword clipperStatement ACCEPT APPEND BLANK FROM AVERAGE CALL CANCEL
syn keyword clipperStatement CLEAR ALL GETS MEMORY TYPEAHEAD CLOSE
syn keyword clipperStatement COMMIT CONTINUE SHARED NEW PICT
syn keyword clipperStatement COPY FILE STRUCTURE STRU EXTE TO COUNT
syn keyword clipperStatement CREATE FROM NIL
syn keyword clipperStatement DELETE FILE DIR DISPLAY EJECT ERASE FIND GO
syn keyword clipperStatement INDEX INPUT VALID WHEN
syn keyword clipperStatement JOIN KEYBOARD LABEL FORM LIST LOCATE MENU TO
syn keyword clipperStatement NOTE PACK QUIT READ
syn keyword clipperStatement RECALL REINDEX RELEASE RENAME REPLACE REPORT
syn keyword clipperStatement RETURN FORM RESTORE
syn keyword clipperStatement RUN SAVE SEEK SELECT
syn keyword clipperStatement SKIP SORT STORE SUM TEXT TOTAL TYPE UNLOCK
syn keyword clipperStatement UPDATE USE WAIT ZAP
syn keyword clipperStatement BEGIN SEQUENCE
syn keyword clipperStatement SET ALTERNATE BELL CENTURY COLOR CONFIRM CONSOLE
syn keyword clipperStatement CURSOR DATE DECIMALS DEFAULT DELETED DELIMITERS
syn keyword clipperStatement DEVICE EPOCH ESCAPE EXACT EXCLUSIVE FILTER FIXED
syn keyword clipperStatement FORMAT FUNCTION INTENSITY KEY MARGIN MESSAGE
syn keyword clipperStatement ORDER PATH PRINTER PROCEDURE RELATION SCOREBOARD
syn keyword clipperStatement SOFTSEEK TYPEAHEAD UNIQUE WRAP
syn keyword clipperStatement BOX CLEAR GET PROMPT SAY ? ??
syn keyword clipperStatement DELETE TAG GO RTLINKCMD TMP DBLOCKINFO
syn keyword clipperStatement DBEVALINFO DBFIELDINFO DBFILTERINFO DBFUNCTABLE
syn keyword clipperStatement DBOPENINFO DBORDERCONDINFO DBORDERCREATEINF
syn keyword clipperStatement DBORDERINFO DBRELINFO DBSCOPEINFO DBSORTINFO
syn keyword clipperStatement DBSORTITEM DBTRANSINFO DBTRANSITEM WORKAREA
" Conditionals
syn keyword clipperConditional CASE OTHERWISE ENDCASE
syn keyword clipperConditional IF ELSE ENDIF IIF IFDEF IFNDEF
" Loops
syn keyword clipperRepeat DO WHILE ENDDO
syn keyword clipperRepeat FOR TO NEXT STEP
" Visibility
syn keyword clipperStorageClass ANNOUNCE STATIC
syn keyword clipperStorageClass DECLARE EXTERNAL LOCAL MEMVAR PARAMETERS
syn keyword clipperStorageClass PRIVATE PROCEDURE PUBLIC REQUEST STATIC
syn keyword clipperStorageClass FIELD FUNCTION
syn keyword clipperStorageClass EXIT PROCEDURE INIT PROCEDURE
" Operators
syn match clipperOperator "$\|%\|&\|+\|-\|->\|!"
syn match clipperOperator "\.AND\.\|\.NOT\.\|\.OR\."
syn match clipperOperator ":=\|<\|<=\|<>\|!=\|#\|=\|==\|>\|>=\|@"
syn match clipperOperator "*"
" Numbers
syn match clipperNumber "\<\d\+\(u\=l\=\|lu\|f\)\>"
" Includes
syn region clipperIncluded contained start=+"+ skip=+\\\\\|\\"+ end=+"+
syn match clipperIncluded contained "<[^>]*>"
syn match clipperInclude "^\s*#\s*include\>\s*["<]" contains=clipperIncluded
" String and Character constants
syn region clipperString start=+"+ end=+"+
syn region clipperString start=+'+ end=+'+
" Delimiters
syn match ClipperDelimiters "[()]\|[\[\]]\|[{}]\|[||]"
" Special
syn match clipperLineContinuation ";"
" This is from Bram Moolenaar:
if exists("c_comment_strings")
" A comment can contain cString, cCharacter and cNumber.
" But a "*/" inside a cString in a clipperComment DOES end the comment!
" So we need to use a special type of cString: clipperCommentString, which
" also ends on "*/", and sees a "*" at the start of the line as comment
" again. Unfortunately this doesn't very well work for // type of comments :-(
syntax match clipperCommentSkip contained "^\s*\*\($\|\s\+\)"
syntax region clipperCommentString contained start=+"+ skip=+\\\\\|\\"+ end=+"+ end=+\*/+me=s-1 contains=clipperCommentSkip
syntax region clipperComment2String contained start=+"+ skip=+\\\\\|\\"+ end=+"+ end="$"
syntax region clipperComment start="/\*" end="\*/" contains=clipperCommentString,clipperCharacter,clipperNumber,clipperString
syntax match clipperComment "//.*" contains=clipperComment2String,clipperCharacter,clipperNumber
else
syn region clipperComment start="/\*" end="\*/"
syn match clipperComment "//.*"
endif
syntax match clipperCommentError "\*/"
" Lines beggining with an "*" are comments too
syntax match clipperComment "^\*.*"
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link clipperConditional Conditional
hi def link clipperRepeat Repeat
hi def link clipperNumber Number
hi def link clipperInclude Include
hi def link clipperComment Comment
hi def link clipperOperator Operator
hi def link clipperStorageClass StorageClass
hi def link clipperStatement Statement
hi def link clipperString String
hi def link clipperFunction Function
hi def link clipperLineContinuation Special
hi def link clipperDelimiters Delimiter
hi def link clipperUserVariable Identifier
let b:current_syntax = "clipper"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8
endif

File diff suppressed because one or more lines are too long

481
syntax/cmake.vim Normal file

File diff suppressed because one or more lines are too long

313
syntax/cmusrc.vim Normal file
View File

@@ -0,0 +1,313 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2007-06-17
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
setlocal iskeyword+=-
syn keyword cmusrcTodo contained TODO FIXME XXX NOTE
syn match cmusrcComment contained display '^\s*#.*$'
syn match cmusrcBegin display '^'
\ nextgroup=cmusrcKeyword,cmusrcComment
\ skipwhite
syn keyword cmusrcKeyword contained add
\ nextgroup=cmusrcAddSwitches,cmusrcURI
\ skipwhite
syn match cmusrcAddSwitches contained display '-[lpqQ]'
\ nextgroup=cmusrcURI
\ skipwhite
syn match cmusrcURI contained display '.\+'
syn keyword cmusrcKeyword contained bind
\ nextgroup=cmusrcBindSwitches,
\ cmusrcBindContext
\ skipwhite
syn match cmusrcBindSwitches contained display '-[f]'
\ nextgroup=cmusrcBindContext
\ skipwhite
syn keyword cmusrcBindContext contained common library playlist queue
\ browser filters
\ nextgroup=cmusrcBindKey
\ skipwhite
syn match cmusrcBindKey contained display '\S\+'
\ nextgroup=cmusrcKeyword
\ skipwhite
syn keyword cmusrcKeyword contained browser-up colorscheme echo factivate
\ filter invert player-next player-pause
\ player-play player-prev player-stop quit
\ refresh run search-next search-prev shuffle
\ unmark win-activate win-add-l win-add-p
\ win-add-Q win-add-q win-bottom win-down
\ win-mv-after win-mv-before win-next
\ win-page-down win-page-up win-remove
\ win-sel-cur win-toggle win-top win-up
\ win-update
syn keyword cmusrcKeyword contained cd
\ nextgroup=cmusrcDirectory
\ skipwhite
syn match cmusrcDirectory contained display '.\+'
syn keyword cmusrcKeyword contained clear
\ nextgroup=cmusrcClearSwitches
syn match cmusrcClearSwitches contained display '-[lpq]'
syn keyword cmusrcKeyword contained fset
\ nextgroup=cmusrcFSetName
\ skipwhite
syn match cmusrcFSetName contained display '[^=]\+'
\ nextgroup=cmusrcFSetEq
syn match cmusrcFSetEq contained display '='
\ nextgroup=cmusrcFilterExpr
syn match cmusrcFilterExpr contained display '.\+'
syn keyword cmusrcKeyword contained load
\ nextgroup=cmusrcLoadSwitches,cmusrcURI
\ skipwhite
syn match cmusrcLoadSwitches contained display '-[lp]'
\ nextgroup=cmusrcURI
\ skipwhite
syn keyword cmusrcKeyword contained mark
\ nextgroup=cmusrcFilterExpr
syn keyword cmusrcKeyword contained save
\ nextgroup=cmusrcSaveSwitches,cmusrcFile
\ skipwhite
syn match cmusrcSaveSwitches contained display '-[lp]'
\ nextgroup=cmusrcFile
\ skipwhite
syn match cmusrcFile contained display '.\+'
syn keyword cmusrcKeyword contained seek
\ nextgroup=cmusrcSeekOffset
\ skipwhite
syn match cmusrcSeekOffset contained display
\ '[+-]\=\%(\d\+[mh]\=\|\%(\%(0\=\d\|[1-5]\d\):\)\=\%(0\=\d\|[1-5]\d\):\%(0\=\d\|[1-5]\d\)\)'
syn keyword cmusrcKeyword contained set
\ nextgroup=cmusrcOption
\ skipwhite
syn keyword cmusrcOption contained auto_reshuffle confirm_run
\ continue play_library play_sorted repeat
\ show_hidden show_remaining_time shuffle
\ nextgroup=cmusrcSetTest,cmusrcOptEqBoolean
syn match cmusrcSetTest contained display '?'
syn match cmusrcOptEqBoolean contained display '='
\ nextgroup=cmusrcOptBoolean
syn keyword cmusrcOptBoolean contained true false
syn keyword cmusrcOption contained aaa_mode
\ nextgroup=cmusrcOptEqAAA
syn match cmusrcOptEqAAA contained display '='
\ nextgroup=cmusrcOptAAA
syn keyword cmusrcOptAAA contained all artist album
syn keyword cmusrcOption contained buffer_seconds
\ nextgroup=cmusrcOptEqNumber
syn match cmusrcOptEqNumber contained display '='
\ nextgroup=cmusrcOptNumber
syn match cmusrcOptNumber contained display '\d\+'
syn keyword cmusrcOption contained altformat_current altformat_playlist
\ altformat_title altformat_trackwin
\ format_current format_playlist format_title
\ format_trackwin
\ nextgroup=cmusrcOptEqFormat
syn match cmusrcOptEqFormat contained display '='
\ nextgroup=cmusrcOptFormat
syn match cmusrcOptFormat contained display '.\+'
\ contains=cmusrcFormatSpecial
syn match cmusrcFormatSpecial contained display '%[0-]*\d*[alDntgydfF=%]'
syn keyword cmusrcOption contained color_cmdline_bg color_cmdline_fg
\ color_error color_info color_separator
\ color_statusline_bg color_statusline_fg
\ color_titleline_bg color_titleline_fg
\ color_win_bg color_win_cur
\ color_win_cur_sel_bg color_win_cur_sel_fg
\ color_win_dir color_win_fg
\ color_win_inactive_cur_sel_bg
\ color_win_inactive_cur_sel_fg
\ color_win_inactive_sel_bg
\ color_win_inactive_sel_fg
\ color_win_sel_bg color_win_sel_fg
\ color_win_title_bg color_win_title_fg
\ nextgroup=cmusrcOptEqColor
syn match cmusrcOptEqColor contained display '='
\ nextgroup=@cmusrcOptColor
syn cluster cmusrcOptColor contains=cmusrcOptColorName,cmusrcOptColorValue
syn keyword cmusrcOptColorName contained default black red green yellow blue
\ magenta cyan gray darkgray lightred lightred
\ lightgreen lightyellow lightblue lightmagenta
\ lightcyan white
syn match cmusrcOptColorValue contained display
\ '-1\|0*\%(\d\|[1-9]\d\|1\d\d\|2\%([0-4]\d\|5[0-5]\)\)'
syn keyword cmusrcOption contained id3_default_charset output_plugin
\ status_display_program
\ nextgroup=cmusrcOptEqString
syn match cmusrcOption contained
\ '\%(dsp\|mixer\)\.\%(alsa\|oss\|sun\)\.\%(channel\|device\)'
\ nextgroup=cmusrcOptEqString
syn match cmusrcOption contained
\ 'dsp\.ao\.\%(buffer_size\|driver\|wav_counter\|wav_dir\)'
\ nextgroup=cmusrcOptEqString
syn match cmusrcOptEqString contained display '='
\ nextgroup=cmusrcOptString
syn match cmusrcOptString contained display '.\+'
syn keyword cmusrcOption contained lib_sort pl_sort
\ nextgroup=cmusrcOptEqSortKeys
syn match cmusrcOptEqSortKeys contained display '='
\ nextgroup=cmusrcOptSortKeys
syn keyword cmusrcOptSortKeys contained artist album title tracknumber
\ discnumber date genre filename
\ nextgroup=cmusrcOptSortKeys
\ skipwhite
syn keyword cmusrcKeyword contained showbind
\ nextgroup=cmusrcSBindContext
\ skipwhite
syn keyword cmusrcSBindContext contained common library playlist queue
\ browser filters
\ nextgroup=cmusrcSBindKey
\ skipwhite
syn match cmusrcSBindKey contained display '\S\+'
syn keyword cmusrcKeyword contained toggle
\ nextgroup=cmusrcTogglableOpt
\ skipwhite
syn keyword cmusrcTogglableOpt contained auto_reshuffle aaa_mode
\ confirm_run continue play_library play_sorted
\ repeat show_hidden show_remaining_time shuffle
syn keyword cmusrcKeyword contained unbind
\ nextgroup=cmusrcUnbindSwitches,
\ cmusrcSBindContext
\ skipwhite
syn match cmusrcUnbindSwitches contained display '-[f]'
\ nextgroup=cmusrcSBindContext
\ skipwhite
syn keyword cmusrcKeyword contained view
\ nextgroup=cmusrcView
\ skipwhite
syn keyword cmusrcView contained library playlist queue browser filters
syn match cmusrcView contained display '[1-6]'
syn keyword cmusrcKeyword contained vol
\ nextgroup=cmusrcVolume1
\ skipwhite
syn match cmusrcVolume1 contained display '[+-]\=\d\+%'
\ nextgroup=cmusrcVolume2
\ skipwhite
syn match cmusrcVolume2 contained display '[+-]\=\d\+%'
hi def link cmusrcTodo Todo
hi def link cmusrcComment Comment
hi def link cmusrcKeyword Keyword
hi def link cmusrcSwitches Special
hi def link cmusrcAddSwitches cmusrcSwitches
hi def link cmusrcURI Normal
hi def link cmusrcBindSwitches cmusrcSwitches
hi def link cmusrcContext Type
hi def link cmusrcBindContext cmusrcContext
hi def link cmusrcKey String
hi def link cmusrcBindKey cmusrcKey
hi def link cmusrcDirectory Normal
hi def link cmusrcClearSwitches cmusrcSwitches
hi def link cmusrcFSetName PreProc
hi def link cmusrcEq Normal
hi def link cmusrcFSetEq cmusrcEq
hi def link cmusrcFilterExpr Normal
hi def link cmusrcLoadSwitches cmusrcSwitches
hi def link cmusrcSaveSwitches cmusrcSwitches
hi def link cmusrcFile Normal
hi def link cmusrcSeekOffset Number
hi def link cmusrcOption PreProc
hi def link cmusrcSetTest Normal
hi def link cmusrcOptBoolean Boolean
hi def link cmusrcOptEqAAA cmusrcEq
hi def link cmusrcOptAAA Identifier
hi def link cmusrcOptEqNumber cmusrcEq
hi def link cmusrcOptNumber Number
hi def link cmusrcOptEqFormat cmusrcEq
hi def link cmusrcOptFormat String
hi def link cmusrcFormatSpecial SpecialChar
hi def link cmusrcOptEqColor cmusrcEq
hi def link cmusrcOptColor Normal
hi def link cmusrcOptColorName cmusrcOptColor
hi def link cmusrcOptColorValue cmusrcOptColor
hi def link cmusrcOptEqString cmusrcEq
hi def link cmusrcOptString Normal
hi def link cmusrcOptEqSortKeys cmusrcEq
hi def link cmusrcOptSortKeys Identifier
hi def link cmusrcSBindContext cmusrcContext
hi def link cmusrcSBindKey cmusrcKey
hi def link cmusrcTogglableOpt cmusrcOption
hi def link cmusrcUnbindSwitches cmusrcSwitches
hi def link cmusrcView Normal
hi def link cmusrcVolume1 Number
hi def link cmusrcVolume2 Number
let b:current_syntax = "cmusrc"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

196
syntax/cobol.vim Normal file
View File

@@ -0,0 +1,196 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: COBOL
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
" (formerly Davyd Ondrejko <vondraco@columbus.rr.com>)
" (formerly Sitaram Chamarty <sitaram@diac.com> and
" James Mitchell <james_mitchell@acm.org>)
" Last Change: 2015 Feb 13
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" MOST important - else most of the keywords wont work!
setlocal isk=@,48-57,-
syn case ignore
syn cluster cobolStart contains=cobolAreaA,cobolAreaB,cobolComment,cobolCompiler
syn cluster cobolAreaA contains=cobolParagraph,cobolSection,cobolDivision
"syn cluster cobolAreaB contains=
syn cluster cobolAreaAB contains=cobolLine
syn cluster cobolLine contains=cobolReserved
syn match cobolMarker "^\%( \{,5\}[^ ]\)\@=.\{,6}" nextgroup=@cobolStart
syn match cobolSpace "^ \{6\}" nextgroup=@cobolStart
syn match cobolAreaA " \{1,4\}" contained nextgroup=@cobolAreaA,@cobolAreaAB
syn match cobolAreaB " \{5,\}\|- *" contained nextgroup=@cobolAreaB,@cobolAreaAB
syn match cobolComment "[/*C].*$" contained
syn match cobolCompiler "$.*$" contained
syn match cobolLine ".*$" contained contains=cobolReserved,@cobolLine
syn match cobolDivision "[A-Z][A-Z0-9-]*[A-Z0-9]\s\+DIVISION\."he=e-1 contained contains=cobolDivisionName
syn keyword cobolDivisionName contained IDENTIFICATION ENVIRONMENT DATA PROCEDURE
syn match cobolSection "[A-Z][A-Z0-9-]*[A-Z0-9]\s\+SECTION\."he=e-1 contained contains=cobolSectionName
syn keyword cobolSectionName contained CONFIGURATION INPUT-OUTPUT FILE WORKING-STORAGE LOCAL-STORAGE LINKAGE
syn match cobolParagraph "\a[A-Z0-9-]*[A-Z0-9]\.\|\d[A-Z0-9-]*[A-Z]\."he=e-1 contained contains=cobolParagraphName
syn keyword cobolParagraphName contained PROGRAM-ID SOURCE-COMPUTER OBJECT-COMPUTER SPECIAL-NAMES FILE-CONTROL I-O-CONTROL
"syn match cobolKeys "^\a\{1,6\}" contains=cobolReserved
syn keyword cobolReserved contained ACCEPT ACCESS ADD ADDRESS ADVANCING AFTER ALPHABET ALPHABETIC
syn keyword cobolReserved contained ALPHABETIC-LOWER ALPHABETIC-UPPER ALPHANUMERIC ALPHANUMERIC-EDITED ALS
syn keyword cobolReserved contained ALTERNATE AND ANY ARE AREA AREAS ASCENDING ASSIGN AT AUTHOR BEFORE BINARY
syn keyword cobolReserved contained BLANK BLOCK BOTTOM BY CANCEL CBLL CD CF CH CHARACTER CHARACTERS CLASS
syn keyword cobolReserved contained CLOCK-UNITS CLOSE COBOL CODE CODE-SET COLLATING COLUMN COMMA COMMON
syn keyword cobolReserved contained COMMUNICATIONS COMPUTATIONAL COMPUTE CONTENT CONTINUE
syn keyword cobolReserved contained CONTROL CONVERTING CORR CORRESPONDING COUNT CURRENCY DATE DATE-COMPILED
syn keyword cobolReserved contained DATE-WRITTEN DAY DAY-OF-WEEK DE DEBUG-CONTENTS DEBUG-ITEM DEBUG-LINE
syn keyword cobolReserved contained DEBUG-NAME DEBUG-SUB-1 DEBUG-SUB-2 DEBUG-SUB-3 DEBUGGING DECIMAL-POINT
syn keyword cobolReserved contained DELARATIVES DELETE DELIMITED DELIMITER DEPENDING DESCENDING DESTINATION
syn keyword cobolReserved contained DETAIL DISABLE DISPLAY DIVIDE DIVISION DOWN DUPLICATES DYNAMIC EGI ELSE EMI
syn keyword cobolReserved contained ENABLE END-ADD END-COMPUTE END-DELETE END-DIVIDE END-EVALUATE END-IF
syn keyword cobolReserved contained END-MULTIPLY END-OF-PAGE END-READ END-RECEIVE END-RETURN
syn keyword cobolReserved contained END-REWRITE END-SEARCH END-START END-STRING END-SUBTRACT END-UNSTRING
syn keyword cobolReserved contained END-WRITE EQUAL ERROR ESI EVALUATE EVERY EXCEPTION EXIT
syn keyword cobolReserved contained EXTEND EXTERNAL FALSE FD FILLER FINAL FIRST FOOTING FOR FROM
syn keyword cobolReserved contained GENERATE GIVING GLOBAL GREATER GROUP HEADING HIGH-VALUE HIGH-VALUES I-O
syn keyword cobolReserved contained IN INDEX INDEXED INDICATE INITIAL INITIALIZE
syn keyword cobolReserved contained INITIATE INPUT INSPECT INSTALLATION INTO IS JUST
syn keyword cobolReserved contained JUSTIFIED KEY LABEL LAST LEADING LEFT LENGTH LOCK MEMORY
syn keyword cobolReserved contained MERGE MESSAGE MODE MODULES MOVE MULTIPLE MULTIPLY NATIVE NEGATIVE NEXT NO NOT
syn keyword cobolReserved contained NUMBER NUMERIC NUMERIC-EDITED OCCURS OF OFF OMITTED ON OPEN
syn keyword cobolReserved contained OPTIONAL OR ORDER ORGANIZATION OTHER OUTPUT OVERFLOW PACKED-DECIMAL PADDING
syn keyword cobolReserved contained PAGE PAGE-COUNTER PERFORM PF PH PIC PICTURE PLUS POINTER POSITION POSITIVE
syn keyword cobolReserved contained PRINTING PROCEDURES PROCEDD PROGRAM PURGE QUEUE QUOTES
syn keyword cobolReserved contained RANDOM RD READ RECEIVE RECORD RECORDS REDEFINES REEL REFERENCE REFERENCES
syn keyword cobolReserved contained RELATIVE RELEASE REMAINDER REMOVAL REPLACE REPLACING REPORT REPORTING
syn keyword cobolReserved contained REPORTS RERUN RESERVE RESET RETURN RETURNING REVERSED REWIND REWRITE RF RH
syn keyword cobolReserved contained RIGHT ROUNDED RUN SAME SD SEARCH SECTION SECURITY SEGMENT SEGMENT-LIMITED
syn keyword cobolReserved contained SELECT SEND SENTENCE SEPARATE SEQUENCE SEQUENTIAL SET SIGN SIZE SORT
syn keyword cobolReserved contained SORT-MERGE SOURCE STANDARD
syn keyword cobolReserved contained STANDARD-1 STANDARD-2 START STATUS STOP STRING SUB-QUEUE-1 SUB-QUEUE-2
syn keyword cobolReserved contained SUB-QUEUE-3 SUBTRACT SUM SUPPRESS SYMBOLIC SYNC SYNCHRONIZED TABLE TALLYING
syn keyword cobolReserved contained TAPE TERMINAL TERMINATE TEST TEXT THAN THEN THROUGH THRU TIME TIMES TO TOP
syn keyword cobolReserved contained TRAILING TRUE TYPE UNIT UNSTRING UNTIL UP UPON USAGE USE USING VALUE VALUES
syn keyword cobolReserved contained VARYING WHEN WITH WORDS WRITE
syn match cobolReserved contained "\<CONTAINS\>"
syn match cobolReserved contained "\<\(IF\|INVALID\|END\|EOP\)\>"
syn match cobolReserved contained "\<ALL\>"
syn cluster cobolLine add=cobolConstant,cobolNumber,cobolPic
syn keyword cobolConstant SPACE SPACES NULL ZERO ZEROES ZEROS LOW-VALUE LOW-VALUES
syn match cobolNumber "\<-\=\d*\.\=\d\+\>" contained
syn match cobolPic "\<S*9\+\>" contained
syn match cobolPic "\<$*\.\=9\+\>" contained
syn match cobolPic "\<Z*\.\=9\+\>" contained
syn match cobolPic "\<V9\+\>" contained
syn match cobolPic "\<9\+V\>" contained
syn match cobolPic "\<-\+[Z9]\+\>" contained
syn match cobolTodo "todo" contained containedin=cobolComment
" For MicroFocus or other inline comments, include this line.
" syn region cobolComment start="*>" end="$" contains=cobolTodo,cobolMarker
syn match cobolBadLine "[^ D\*$/-].*" contained
" If comment mark somehow gets into column past Column 7.
syn match cobolBadLine "\s\+\*.*" contained
syn cluster cobolStart add=cobolBadLine
syn keyword cobolGoTo GO GOTO
syn keyword cobolCopy COPY
" cobolBAD: things that are BAD NEWS!
syn keyword cobolBAD ALTER ENTER RENAMES
syn cluster cobolLine add=cobolGoTo,cobolCopy,cobolBAD,cobolWatch,cobolEXECs
" cobolWatch: things that are important when trying to understand a program
syn keyword cobolWatch OCCURS DEPENDING VARYING BINARY COMP REDEFINES
syn keyword cobolWatch REPLACING RUN
syn match cobolWatch "COMP-[123456XN]"
syn keyword cobolEXECs EXEC END-EXEC
syn cluster cobolAreaA add=cobolDeclA
syn cluster cobolAreaAB add=cobolDecl
syn match cobolDeclA "\(0\=1\|77\|78\) " contained nextgroup=cobolLine
syn match cobolDecl "[1-4]\d " contained nextgroup=cobolLine
syn match cobolDecl "0\=[2-9] " contained nextgroup=cobolLine
syn match cobolDecl "66 " contained nextgroup=cobolLine
syn match cobolWatch "88 " contained nextgroup=cobolLine
"syn match cobolBadID "\k\+-\($\|[^-A-Z0-9]\)" contained
syn cluster cobolLine add=cobolCALLs,cobolString,cobolCondFlow
syn keyword cobolCALLs CALL END-CALL CANCEL GOBACK PERFORM END-PERFORM INVOKE
syn match cobolCALLs "EXIT \+PROGRAM"
syn match cobolExtras /\<VALUE \+\d\+\./hs=s+6,he=e-1
syn match cobolString /"[^"]*\("\|$\)/
syn match cobolString /'[^']*\('\|$\)/
"syn region cobolLine start="^.\{6}[ D-]" end="$" contains=ALL
syn match cobolIndicator "\%7c[D-]" contained
if exists("cobol_legacy_code")
syn region cobolCondFlow contains=ALLBUT,cobolLine,cobolBadLine start="\<\(IF\|INVALID\|END\|EOP\)\>" skip=/\('\|"\)[^"]\{-}\("\|'\|$\)/ end="\." keepend
endif
" many legacy sources have junk in columns 1-6: must be before others
" Stuff after column 72 is in error - must be after all other "match" entries
if exists("cobol_legacy_code")
syn match cobolBadLine "\%73c.*" containedin=ALLBUT,cobolComment
else
syn match cobolBadLine "\%73c.*" containedin=ALL
endif
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link cobolBAD Error
hi def link cobolBadID Error
hi def link cobolBadLine Error
if exists("g:cobol_legacy_code")
hi def link cobolMarker Comment
else
hi def link cobolMarker Error
endif
hi def link cobolCALLs Function
hi def link cobolComment Comment
hi def link cobolKeys Comment
hi def link cobolAreaB Special
hi def link cobolCompiler PreProc
hi def link cobolCondFlow Special
hi def link cobolCopy PreProc
hi def link cobolDeclA cobolDecl
hi def link cobolDecl Type
hi def link cobolExtras Special
hi def link cobolGoTo Special
hi def link cobolConstant Constant
hi def link cobolNumber Constant
hi def link cobolPic Constant
hi def link cobolReserved Statement
hi def link cobolDivision Label
hi def link cobolSection Label
hi def link cobolParagraph Label
hi def link cobolDivisionName Keyword
hi def link cobolSectionName Keyword
hi def link cobolParagraphName Keyword
hi def link cobolString Constant
hi def link cobolTodo Todo
hi def link cobolWatch Special
hi def link cobolIndicator Special
let b:current_syntax = "cobol"
" vim: ts=6 nowrap
endif

36
syntax/coco.vim Normal file
View File

@@ -0,0 +1,36 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Coco/R
" Maintainer: Ashish Shukla <wahjava@gmail.com>
" Last Change: 2007 Aug 10
" Remark: Coco/R syntax partially implemented.
" License: Vim license
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn keyword cocoKeywords ANY CHARACTERS COMMENTS COMPILER CONTEXT END FROM IF IGNORE IGNORECASE NESTED PRAGMAS PRODUCTIONS SYNC TO TOKENS WEAK
syn match cocoUnilineComment #//.*$#
syn match cocoIdentifier /[[:alpha:]][[:alnum:]]*/
syn region cocoMultilineComment start=#/[*]# end=#[*]/#
syn region cocoString start=/"/ skip=/\\"\|\\\\/ end=/"/
syn region cocoCharacter start=/'/ skip=/\\'\|\\\\/ end=/'/
syn match cocoOperator /+\||\|\.\.\|-\|(\|)\|{\|}\|\[\|\]\|=\|<\|>/
syn region cocoProductionCode start=/([.]/ end=/[.])/
syn match cocoPragma /[$][[:alnum:]]*/
hi def link cocoKeywords Keyword
hi def link cocoUnilineComment Comment
hi def link cocoMultilineComment Comment
hi def link cocoIdentifier Identifier
hi def link cocoString String
hi def link cocoCharacter Character
hi def link cocoOperator Operator
hi def link cocoProductionCode Statement
hi def link cocoPragma Special
endif

85
syntax/colortest.vim Normal file
View File

@@ -0,0 +1,85 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim script for testing colors
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Contributors: Rafael Garcia-Suarez, Charles Campbell
" Last Change: 2008 Jun 04
" edit this file, then do ":source %", and check if the colors match
" black black_on_white white_on_black
" black_on_black black_on_black
" darkred darkred_on_white white_on_darkred
" darkred_on_black black_on_darkred
" darkgreen darkgreen_on_white white_on_darkgreen
" darkgreen_on_black black_on_darkgreen
" brown brown_on_white white_on_brown
" brown_on_black black_on_brown
" darkblue darkblue_on_white white_on_darkblue
" darkblue_on_black black_on_darkblue
" darkmagenta darkmagenta_on_white white_on_darkmagenta
" darkmagenta_on_black black_on_darkmagenta
" darkcyan darkcyan_on_white white_on_darkcyan
" darkcyan_on_black black_on_darkcyan
" lightgray lightgray_on_white white_on_lightgray
" lightgray_on_black black_on_lightgray
" darkgray darkgray_on_white white_on_darkgray
" darkgray_on_black black_on_darkgray
" red red_on_white white_on_red
" red_on_black black_on_red
" green green_on_white white_on_green
" green_on_black black_on_green
" yellow yellow_on_white white_on_yellow
" yellow_on_black black_on_yellow
" blue blue_on_white white_on_blue
" blue_on_black black_on_blue
" magenta magenta_on_white white_on_magenta
" magenta_on_black black_on_magenta
" cyan cyan_on_white white_on_cyan
" cyan_on_black black_on_cyan
" white white_on_white white_on_white
" white_on_black black_on_white
" grey grey_on_white white_on_grey
" grey_on_black black_on_grey
" lightred lightred_on_white white_on_lightred
" lightred_on_black black_on_lightred
" lightgreen lightgreen_on_white white_on_lightgreen
" lightgreen_on_black black_on_lightgreen
" lightyellow lightyellow_on_white white_on_lightyellow
" lightyellow_on_black black_on_lightyellow
" lightblue lightblue_on_white white_on_lightblue
" lightblue_on_black black_on_lightblue
" lightmagenta lightmagenta_on_white white_on_lightmagenta
" lightmagenta_on_black black_on_lightmagenta
" lightcyan lightcyan_on_white white_on_lightcyan
" lightcyan_on_black black_on_lightcyan
" Open this file in a window if it isn't edited yet.
" Use the current window if it's empty.
if expand('%:p') != expand('<sfile>:p')
let s:fname = expand('<sfile>')
if exists('*fnameescape')
let s:fname = fnameescape(s:fname)
else
let s:fname = escape(s:fname, ' \|')
endif
if &mod || line('$') != 1 || getline(1) != ''
exe "new " . s:fname
else
exe "edit " . s:fname
endif
unlet s:fname
endif
syn clear
8
while search("_on_", "W") < 55
let col1 = substitute(expand("<cword>"), '\(\a\+\)_on_\a\+', '\1', "")
let col2 = substitute(expand("<cword>"), '\a\+_on_\(\a\+\)', '\1', "")
exec 'hi col_'.col1.'_'.col2.' ctermfg='.col1.' guifg='.col1.' ctermbg='.col2.' guibg='.col2
exec 'syn keyword col_'.col1.'_'.col2.' '.col1.'_on_'.col2
endwhile
8,54g/^" \a/exec 'hi col_'.expand("<cword>").' ctermfg='.expand("<cword>").' guifg='.expand("<cword>")| exec 'syn keyword col_'.expand("<cword>")." ".expand("<cword>")
nohlsearch
endif

141
syntax/conaryrecipe.vim Normal file
View File

@@ -0,0 +1,141 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Conary Recipe
" Maintainer: rPath Inc <http://www.rpath.com>
" Updated: 2007-12-08
if exists("b:current_syntax")
finish
endif
runtime! syntax/python.vim
syn keyword conarySFunction mainDir addAction addSource addArchive addPatch
syn keyword conarySFunction addRedirect addSvnSnapshot addMercurialSnapshot
syn keyword conarySFunction addCvsSnapshot addGitSnapshot addBzrSnapshot
syn keyword conaryGFunction add addAll addNewGroup addReference createGroup
syn keyword conaryGFunction addNewGroup startGroup remove removeComponents
syn keyword conaryGFunction replace setByDefault setDefaultGroup
syn keyword conaryGFunction setLabelPath addCopy setSearchPath AddAllFlags
syn keyword conaryGFunction GroupRecipe GroupReference TroveCacheWrapper
syn keyword conaryGFunction TroveCache buildGroups findTrovesForGroups
syn keyword conaryGFunction followRedirect processAddAllDirectives
syn keyword conaryGFunction processOneAddAllDirective removeDifferences
syn keyword conaryGFunction addTrovesToGroup addCopiedComponents
syn keyword conaryGFunction findAllWeakTrovesToRemove checkForRedirects
syn keyword conaryGFunction addPackagesForComponents getResolveSource
syn keyword conaryGFunction resolveGroupDependencies checkGroupDependencies
syn keyword conaryGFunction calcSizeAndCheckHashes findSourcesForGroup
syn keyword conaryGFunction addPostInstallScript addPostRollbackScript
syn keyword conaryGFunction addPostUpdateScript addPreUpdateScript
syn keyword conaryGFunction addTrove moveComponents copyComponents
syn keyword conaryGFunction removeItemsAlsoInNewGroup removeItemsAlsoInGroup
syn keyword conaryGFunction addResolveSource iterReplaceSpecs
syn keyword conaryGFunction setCompatibilityClass getLabelPath
syn keyword conaryGFunction getResolveTroveSpecs getSearchFlavor
syn keyword conaryGFunction getChildGroups getGroupMap
syn keyword conaryBFunction Run Automake Configure ManualConfigure
syn keyword conaryBFunction Make MakeParallelSubdir MakeInstall
syn keyword conaryBFunction MakePathsInstall CompilePython
syn keyword conaryBFunction Ldconfig Desktopfile Environment SetModes
syn keyword conaryBFunction Install Copy Move Symlink Link Remove Doc
syn keyword conaryBFunction Create MakeDirs disableParallelMake
syn keyword conaryBFunction ConsoleHelper Replace SGMLCatalogEntry
syn keyword conaryBFunction XInetdService XMLCatalogEntry TestSuite
syn keyword conaryBFunction PythonSetup CMake Ant JavaCompile ClassPath
syn keyword conaryBFunction JavaDoc IncludeLicense MakeFIFO
syn keyword conaryPFunction NonBinariesInBindirs FilesInMandir
syn keyword conaryPFunction ImproperlyShared CheckSonames CheckDestDir
syn keyword conaryPFunction ComponentSpec PackageSpec
syn keyword conaryPFunction Config InitScript GconfSchema SharedLibrary
syn keyword conaryPFunction ParseManifest MakeDevices DanglingSymlinks
syn keyword conaryPFunction AddModes WarnWriteable IgnoredSetuid
syn keyword conaryPFunction Ownership ExcludeDirectories
syn keyword conaryPFunction BadFilenames BadInterpreterPaths ByDefault
syn keyword conaryPFunction ComponentProvides ComponentRequires Flavor
syn keyword conaryPFunction EnforceConfigLogBuildRequirements Group
syn keyword conaryPFunction EnforceSonameBuildRequirements InitialContents
syn keyword conaryPFunction FilesForDirectories LinkCount
syn keyword conaryPFunction MakdeDevices NonMultilibComponent ObsoletePaths
syn keyword conaryPFunction NonMultilibDirectories NonUTF8Filenames TagSpec
syn keyword conaryPFunction Provides RequireChkconfig Requires TagHandler
syn keyword conaryPFunction TagDescription Transient User UtilizeGroup
syn keyword conaryPFunction WorldWritableExecutables UtilizeUser
syn keyword conaryPFunction WarnWritable Strip CheckDesktopFiles
syn keyword conaryPFunction FixDirModes LinkType reportMissingBuildRequires
syn keyword conaryPFunction reportErrors FixupManpagePaths FixObsoletePaths
syn keyword conaryPFunction NonLSBPaths PythonEggs
syn keyword conaryPFunction EnforcePythonBuildRequirements
syn keyword conaryPFunction EnforceJavaBuildRequirements
syn keyword conaryPFunction EnforceCILBuildRequirements
syn keyword conaryPFunction EnforcePerlBuildRequirements
syn keyword conaryPFunction EnforceFlagBuildRequirements
syn keyword conaryPFunction FixupMultilibPaths ExecutableLibraries
syn keyword conaryPFunction NormalizeLibrarySymlinks NormalizeCompression
syn keyword conaryPFunction NormalizeManPages NormalizeInfoPages
syn keyword conaryPFunction NormalizeInitscriptLocation
syn keyword conaryPFunction NormalizeInitscriptContents
syn keyword conaryPFunction NormalizeAppDefaults NormalizeInterpreterPaths
syn keyword conaryPFunction NormalizePamConfig ReadableDocs
syn keyword conaryPFunction WorldWriteableExecutables NormalizePkgConfig
syn keyword conaryPFunction EtcConfig InstallBucket SupplementalGroup
syn keyword conaryPFunction FixBuilddirSymlink RelativeSymlinks
" Most destdirPolicy aren't called from recipes, except for these
syn keyword conaryPFunction AutoDoc RemoveNonPackageFiles TestSuiteFiles
syn keyword conaryPFunction TestSuiteLinks
syn match conaryMacro "%(\w\+)[sd]" contained
syn match conaryBadMacro "%(\w*)[^sd]" contained " no final marker
syn keyword conaryArches contained x86 x86_64 alpha ia64 ppc ppc64 s390
syn keyword conaryArches contained sparc sparc64
syn keyword conarySubArches contained sse2 3dnow 3dnowext cmov i486 i586
syn keyword conarySubArches contained i686 mmx mmxext nx sse sse2
syn keyword conaryBad RPM_BUILD_ROOT EtcConfig InstallBucket subDir
syn keyword conaryBad RPM_OPT_FLAGS subdir
syn cluster conaryArchFlags contains=conaryArches,conarySubArches
syn match conaryArch "Arch\.[a-z0-9A-Z]\+" contains=conaryArches,conarySubArches
syn match conaryArch "Arch\.[a-z0-9A-Z]\+" contains=conaryArches,conarySubArches
syn keyword conaryKeywords name buildRequires version clearBuildReqs
syn keyword conaryUseFlag contained pcre tcpwrappers gcj gnat selinux pam
syn keyword conaryUseFlag contained bootstrap python perl
syn keyword conaryUseFlag contained readline gdbm emacs krb builddocs
syn keyword conaryUseFlag contained alternatives tcl tk X gtk gnome qt
syn keyword conaryUseFlag contained xfce gd ldap sasl pie desktop ssl kde
syn keyword conaryUseFlag contained slang netpbm nptl ipv6 buildtests
syn keyword conaryUseFlag contained ntpl xen dom0 domU
syn match conaryUse "Use\.[a-z0-9A-Z]\+" contains=conaryUseFlag
" strings
syn region pythonString matchgroup=Normal start=+[uU]\='+ end=+'+ skip=+\\\\\|\\'+ contains=pythonEscape,conaryMacro,conaryBadMacro
syn region pythonString matchgroup=Normal start=+[uU]\="+ end=+"+ skip=+\\\\\|\\"+ contains=pythonEscape,conaryMacro,conaryBadMacro
syn region pythonString matchgroup=Normal start=+[uU]\="""+ end=+"""+ contains=pythonEscape,conaryMacro,conaryBadMacro
syn region pythonString matchgroup=Normal start=+[uU]\='''+ end=+'''+ contains=pythonEscape,conaryMacro,conaryBadMacro
syn region pythonRawString matchgroup=Normal start=+[uU]\=[rR]'+ end=+'+ skip=+\\\\\|\\'+ contains=conaryMacro,conaryBadMacro
syn region pythonRawString matchgroup=Normal start=+[uU]\=[rR]"+ end=+"+ skip=+\\\\\|\\"+ contains=conaryMacro,conaryBadMacro
syn region pythonRawString matchgroup=Normal start=+[uU]\=[rR]"""+ end=+"""+ contains=conaryMacro,conaryBadMacro
syn region pythonRawString matchgroup=Normal start=+[uU]\=[rR]'''+ end=+'''+ contains=conaryMacro,conaryBadMacro
hi def link conaryMacro Special
hi def link conaryrecipeFunction Function
hi def link conaryError Error
hi def link conaryBFunction conaryrecipeFunction
hi def link conaryGFunction conaryrecipeFunction
hi def link conarySFunction Operator
hi def link conaryPFunction Typedef
hi def link conaryFlags PreCondit
hi def link conaryArches Special
hi def link conarySubArches Special
hi def link conaryBad conaryError
hi def link conaryBadMacro conaryError
hi def link conaryKeywords Special
hi def link conaryUseFlag Typedef
let b:current_syntax = "conaryrecipe"
endif

30
syntax/conf.vim Normal file
View File

@@ -0,0 +1,30 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: generic configure file
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2005 Jun 20
" Quit when a (custom) syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn keyword confTodo contained TODO FIXME XXX
" Avoid matching "text#text", used in /etc/disktab and /etc/gettytab
syn match confComment "^#.*" contains=confTodo
syn match confComment "\s#.*"ms=s+1 contains=confTodo
syn region confString start=+"+ skip=+\\\\\|\\"+ end=+"+ oneline
syn region confString start=+'+ skip=+\\\\\|\\'+ end=+'+ oneline
" Define the default highlighting.
" Only used when an item doesn't have highlighting yet
hi def link confComment Comment
hi def link confTodo Todo
hi def link confString String
let b:current_syntax = "conf"
" vim: ts=8 sw=2
endif

56
syntax/config.vim Normal file
View File

@@ -0,0 +1,56 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: configure.in script: M4 with sh
" Maintainer: Christian Hammesr <ch@lathspell.westend.com>
" Last Change: 2015 Jan 14
" (patch from Yngve Inntjore Levinsen to detect AC_MSG)
" (patch from Khym Chanur to add @Spell)
" Well, I actually even do not know much about m4. This explains why there
" is probably very much missing here, yet !
" But I missed good highlighting when editing my GNU autoconf/automake
" script, so I wrote this quick and dirty patch.
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" define the config syntax
syn match configdelimiter "[()\[\];,]"
syn match configoperator "[=|&\*\+\<\>]"
syn match configcomment "\(dnl.*\)\|\(#.*\)" contains=configDnl,@Spell
syn match configfunction "\<[A-Z_][A-Z0-9_]*\>"
syn match confignumber "[-+]\=\<\d\+\(\.\d*\)\=\>"
syn keyword configDnl dnl contained
syn keyword configkeyword if then else fi test for in do done
syn keyword configspecial cat rm eval
" This shortens the script, see syn-ext-match..
syn region configstring start=+\z(["'`]\)+ skip=+\\\z1+ end=+\z1+ contains=@Spell
" Anything inside AC_MSG_TYPE([...]) and AC_MSG_TYPE(...) is a string.
syn region configstring matchgroup=configfunction start="AC_MSG_[A-Z]*\ze(\[" matchgroup=configdelimiter end="\])" contains=configdelimiter,@Spell
syn region configstring matchgroup=configfunction start="AC_MSG_[A-Z]*\ze([^[]" matchgroup=configdelimiter end=")" contains=configdelimiter,@Spell
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link configdelimiter Delimiter
hi def link configoperator Operator
hi def link configcomment Comment
hi def link configDnl Comment
hi def link configfunction Function
hi def link confignumber Number
hi def link configkeyword Keyword
hi def link configspecial Special
hi def link configstring String
let b:current_syntax = "config"
" vim: ts=4
endif

145
syntax/context.vim Normal file
View File

@@ -0,0 +1,145 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: ConTeXt typesetting engine
" Maintainer: Nicola Vitacolonna <nvitacolonna@gmail.com>
" Former Maintainers: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2016 Oct 16
if exists("b:current_syntax")
finish
endif
runtime! syntax/plaintex.vim
unlet b:current_syntax
let s:cpo_save = &cpo
set cpo&vim
" Dictionary of (filetype, group) pairs to highlight between \startGROUP \stopGROUP.
let s:context_include = get(b:, 'context_include', get(g:, 'context_include', {'xml': 'XML'}))
" For backward compatibility (g:context_include used to be a List)
if type(s:context_include) ==# type([])
let g:context_metapost = (index(s:context_include, 'mp') != -1)
let s:context_include = filter(
\ {'c': 'C', 'javascript': 'JS', 'ruby': 'Ruby', 'xml': 'XML'},
\ { k,_ -> index(s:context_include, k) != -1 }
\ )
endif
syn iskeyword @,48-57,a-z,A-Z,192-255
syn spell toplevel
" ConTeXt options, i.e., [...] blocks
syn region contextOptions matchgroup=contextDelimiter start='\[' end=']\|\ze\\stop' skip='\\\[\|\\\]' contains=ALLBUT,contextBeginEndLua,@Spell
" Highlight braces
syn match contextDelimiter '[{}]'
" Comments
syn match contextComment '\\\@<!\%(\\\\\)*\zs%.*$' display contains=initexTodo
syn match contextComment '^\s*%[CDM].*$' display contains=initexTodo
syn match contextBlockDelim '\\\%(start\|stop\)\a\+' contains=@NoSpell
syn region contextEscaped matchgroup=contextPreProc start='\\type\%(\s*\|\n\)*\z([^A-Za-z%]\)' end='\z1'
syn region contextEscaped matchgroup=contextPreProc start='\\type\=\%(\s\|\n\)*{' end='}'
syn region contextEscaped matchgroup=contextPreProc start='\\type\=\%(\s*\|\n\)*<<' end='>>'
syn region contextEscaped matchgroup=contextPreProc
\ start='\\start\z(\a*\%(typing\|typen\)\)'
\ end='\\stop\z1' contains=plaintexComment keepend
syn region contextEscaped matchgroup=contextPreProc start='\\\h\+Type\%(\s\|\n\)*{' end='}'
syn region contextEscaped matchgroup=contextPreProc start='\\Typed\h\+\%(\s\|\n\)*{' end='}'
syn match contextBuiltin display contains=@NoSpell
\ '\\\%(unprotect\|protect\|unexpanded\)\>'
syn match contextPreProc '^\s*\\\%(start\|stop\)\=\%(component\|environment\|project\|product\)\>'
\ contains=@NoSpell
if get(b:, 'context_metapost', get(g:, 'context_metapost', 1))
let b:mp_metafun_macros = 1 " Highlight MetaFun keywords
syn include @mpTop syntax/mp.vim
unlet b:current_syntax
syn region contextMPGraphic matchgroup=contextBlockDelim
\ start='\\start\z(MP\%(clip\|code\|definitions\|drawing\|environment\|extensions\|inclusions\|initializations\|page\|\)\)\>.*$'
\ end='\\stop\z1'
\ contains=@mpTop,@NoSpell
syn region contextMPGraphic matchgroup=contextBlockDelim
\ start='\\start\z(\%(\%[re]usable\|use\|unique\|static\)MPgraphic\|staticMPfigure\|uniqueMPpagegraphic\)\>.*$'
\ end='\\stop\z1'
\ contains=@mpTop,@NoSpell
endif
if get(b:, 'context_lua', get(g:, 'context_lua', 1))
syn include @luaTop syntax/lua.vim
unlet b:current_syntax
syn region contextLuaCode matchgroup=contextBlockDelim
\ start='\\startluacode\>'
\ end='\\stopluacode\>' keepend
\ contains=@luaTop,@NoSpell
syn match contextDirectLua "\\\%(directlua\|ctxlua\)\>\%(\s*%.*$\)\="
\ nextgroup=contextBeginEndLua skipwhite skipempty
\ contains=initexComment
syn region contextBeginEndLua matchgroup=contextSpecial
\ start="{" end="}" skip="\\[{}]"
\ contained contains=@luaTop,@NoSpell
endif
for synname in keys(s:context_include)
execute 'syn include @' . synname . 'Top' 'syntax/' . synname . '.vim'
unlet b:current_syntax
execute 'syn region context' . s:context_include[synname] . 'Code'
\ 'matchgroup=contextBlockDelim'
\ 'start=+\\start' . s:context_include[synname] . '+'
\ 'end=+\\stop' . s:context_include[synname] . '+'
\ 'contains=@' . synname . 'Top,@NoSpell'
endfor
syn match contextSectioning '\\\%(start\|stop\)\=\%(\%(sub\)*section\|\%(sub\)*subject\|chapter\|part\|component\|product\|title\)\>'
\ contains=@NoSpell
syn match contextSpecial '\\crlf\>\|\\par\>\|-\{2,3}\||[<>/]\=|'
\ contains=@NoSpell
syn match contextSpecial /\\[`'"]/
syn match contextSpecial +\\char\%(\d\{1,3}\|'\o\{1,3}\|"\x\{1,2}\)\>+
\ contains=@NoSpell
syn match contextSpecial '\^\^.'
syn match contextSpecial '`\%(\\.\|\^\^.\|.\)'
syn match contextStyle '\\\%(em\|ss\|hw\|cg\|mf\)\>'
\ contains=@NoSpell
syn match contextFont '\\\%(CAP\|Cap\|cap\|Caps\|kap\|nocap\)\>'
\ contains=@NoSpell
syn match contextFont '\\\%(Word\|WORD\|Words\|WORDS\)\>'
\ contains=@NoSpell
syn match contextFont '\\\%(vi\{1,3}\|ix\|xi\{0,2}\)\>'
\ contains=@NoSpell
syn match contextFont '\\\%(tf\|b[si]\|s[cl]\|os\)\%(xx\|[xabcd]\)\=\>'
\ contains=@NoSpell
hi def link contextOptions Typedef
hi def link contextComment Comment
hi def link contextBlockDelim Keyword
hi def link contextBuiltin Keyword
hi def link contextDelimiter Delimiter
hi def link contextEscaped String
hi def link contextPreProc PreProc
hi def link contextSectioning PreProc
hi def link contextSpecial Special
hi def link contextType Type
hi def link contextStyle contextType
hi def link contextFont contextType
hi def link contextDirectLua Keyword
let b:current_syntax = "context"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

View File

@@ -1,3 +1,84 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: C++
" Current Maintainer: vim-jp (https://github.com/vim-jp/vim-cpp)
" Previous Maintainer: Ken Shan <ccshan@post.harvard.edu>
" Last Change: 2017 Jun 05
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" Read the C syntax to start with
runtime! syntax/c.vim
unlet b:current_syntax
" C++ extensions
syn keyword cppStatement new delete this friend using
syn keyword cppAccess public protected private
syn keyword cppModifier inline virtual explicit export
syn keyword cppType bool wchar_t
syn keyword cppExceptions throw try catch
syn keyword cppOperator operator typeid
syn keyword cppOperator and bitor or xor compl bitand and_eq or_eq xor_eq not not_eq
syn match cppCast "\<\(const\|static\|dynamic\|reinterpret\)_cast\s*<"me=e-1
syn match cppCast "\<\(const\|static\|dynamic\|reinterpret\)_cast\s*$"
syn keyword cppStorageClass mutable
syn keyword cppStructure class typename template namespace
syn keyword cppBoolean true false
syn keyword cppConstant __cplusplus
" C++ 11 extensions
if !exists("cpp_no_cpp11")
syn keyword cppModifier override final
syn keyword cppType nullptr_t auto
syn keyword cppExceptions noexcept
syn keyword cppStorageClass constexpr decltype thread_local
syn keyword cppConstant nullptr
syn keyword cppConstant ATOMIC_FLAG_INIT ATOMIC_VAR_INIT
syn keyword cppConstant ATOMIC_BOOL_LOCK_FREE ATOMIC_CHAR_LOCK_FREE
syn keyword cppConstant ATOMIC_CHAR16_T_LOCK_FREE ATOMIC_CHAR32_T_LOCK_FREE
syn keyword cppConstant ATOMIC_WCHAR_T_LOCK_FREE ATOMIC_SHORT_LOCK_FREE
syn keyword cppConstant ATOMIC_INT_LOCK_FREE ATOMIC_LONG_LOCK_FREE
syn keyword cppConstant ATOMIC_LLONG_LOCK_FREE ATOMIC_POINTER_LOCK_FREE
syn region cppRawString matchgroup=cppRawStringDelimiter start=+\%(u8\|[uLU]\)\=R"\z([[:alnum:]_{}[\]#<>%:;.?*\+\-/\^&|~!=,"']\{,16}\)(+ end=+)\z1"+ contains=@Spell
endif
" C++ 14 extensions
if !exists("cpp_no_cpp14")
syn case ignore
syn match cppNumber display "\<0b[01]\('\=[01]\+\)*\(u\=l\{0,2}\|ll\=u\)\>"
syn match cppNumber display "\<[1-9]\('\=\d\+\)*\(u\=l\{0,2}\|ll\=u\)\>" contains=cFloat
syn match cppNumber display "\<0x\x\('\=\x\+\)*\(u\=l\{0,2}\|ll\=u\)\>"
syn case match
endif
" The minimum and maximum operators in GNU C++
syn match cppMinMax "[<>]?"
" Default highlighting
hi def link cppAccess cppStatement
hi def link cppCast cppStatement
hi def link cppExceptions Exception
hi def link cppOperator Operator
hi def link cppStatement Statement
hi def link cppModifier Type
hi def link cppType Type
hi def link cppStorageClass StorageClass
hi def link cppStructure Structure
hi def link cppBoolean Boolean
hi def link cppConstant Constant
hi def link cppRawStringDelimiter Delimiter
hi def link cppRawString String
hi def link cppNumber Number
let b:current_syntax = "cpp"
" vim: ts=8
endif
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'c/c++') == -1
" Vim syntax file

45
syntax/crm.vim Normal file
View File

@@ -0,0 +1,45 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: CRM114
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2006-04-19
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn keyword crmTodo contained TODO FIXME XXX NOTE
syn region crmComment display oneline start='#' end='\\#'
\ contains=crmTodo,@Spell
syn match crmVariable display ':[*#@]:[^:]\{-1,}:'
syn match crmSpecial display '\\\%(x\x\x\|o\o\o\o\|[]nrtabvf0>)};/\\]\)'
syn keyword crmStatement insert noop accept alius alter classify eval exit
syn keyword crmStatement fail fault goto hash intersect isolate input learn
syn keyword crmStatement liaf match output syscall trap union window
syn region crmRegex start='/' skip='\\/' end='/' contains=crmVariable
syn match crmLabel display '^\s*:[[:graph:]]\+:'
hi def link crmTodo Todo
hi def link crmComment Comment
hi def link crmVariable Identifier
hi def link crmSpecial SpecialChar
hi def link crmStatement Statement
hi def link crmRegex String
hi def link crmLabel Label
let b:current_syntax = "crm"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

71
syntax/crontab.vim Normal file
View File

@@ -0,0 +1,71 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: crontab
" Maintainer: David Necas (Yeti) <yeti@physics.muni.cz>
" Original Maintainer: John Hoelzel johnh51@users.sourceforge.net
" License: This file can be redistribued and/or modified under the same terms
" as Vim itself.
" Filenames: /tmp/crontab.* used by "crontab -e"
" Last Change: 2015-01-20
"
" crontab line format:
" Minutes Hours Days Months Days_of_Week Commands # comments
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syntax match crontabNick "^\s*@\(reboot\|yearly\|annually\|monthly\|weekly\|daily\|midnight\|hourly\)\>" nextgroup=crontabCmd skipwhite
syntax match crontabVar "^\s*\k\w*\s*="me=e-1
syntax case ignore
syntax match crontabMin "^\s*[-0-9/,.*]\+" nextgroup=crontabHr skipwhite
syntax match crontabHr "\s[-0-9/,.*]\+" nextgroup=crontabDay skipwhite contained
syntax match crontabDay "\s[-0-9/,.*]\+" nextgroup=crontabMnth skipwhite contained
syntax match crontabMnth "\s[-a-z0-9/,.*]\+" nextgroup=crontabDow skipwhite contained
syntax keyword crontabMnth12 contained jan feb mar apr may jun jul aug sep oct nov dec
syntax match crontabDow "\s[-a-z0-9/,.*]\+" nextgroup=crontabCmd skipwhite contained
syntax keyword crontabDow7 contained sun mon tue wed thu fri sat
syntax region crontabCmd start="\S" end="$" skipwhite contained keepend contains=crontabPercent
syntax match crontabCmnt "^\s*#.*" contains=@Spell
syntax match crontabPercent "[^\\]%.*"lc=1 contained
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link crontabMin Number
hi def link crontabHr PreProc
hi def link crontabDay Type
hi def link crontabMnth Number
hi def link crontabMnth12 Number
hi def link crontabMnthS Number
hi def link crontabMnthN Number
hi def link crontabDow PreProc
hi def link crontabDow7 PreProc
hi def link crontabDowS PreProc
hi def link crontabDowN PreProc
hi def link crontabNick Special
hi def link crontabVar Identifier
hi def link crontabPercent Special
" comment out next line for to suppress unix commands coloring.
hi def link crontabCmd Statement
hi def link crontabCmnt Comment
let b:current_syntax = "crontab"
" vim: ts=8
endif

158
syntax/cs.vim Normal file
View File

@@ -0,0 +1,158 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: C#
" Maintainer: Anduin Withers <awithers@anduin.com>
" Former Maintainer: Johannes Zellner <johannes@zellner.org>
" Last Change: Fri Aug 14 13:56:37 PDT 2009
" Filenames: *.cs
" $Id: cs.vim,v 1.4 2006/05/03 21:20:02 vimboss Exp $
"
" REFERENCES:
" [1] ECMA TC39: C# Language Specification (WD13Oct01.doc)
if exists("b:current_syntax")
finish
endif
let s:cs_cpo_save = &cpo
set cpo&vim
" type
syn keyword csType bool byte char decimal double float int long object sbyte short string uint ulong ushort void
" storage
syn keyword csStorage class delegate enum interface namespace struct
" repeat / condition / label
syn keyword csRepeat break continue do for foreach goto return while
syn keyword csConditional else if switch
syn keyword csLabel case default
" there's no :: operator in C#
syn match csOperatorError display +::+
" user labels (see [1] 8.6 Statements)
syn match csLabel display +^\s*\I\i*\s*:\([^:]\)\@=+
" modifier
syn keyword csModifier abstract const extern internal override private protected public readonly sealed static virtual volatile
" constant
syn keyword csConstant false null true
" exception
syn keyword csException try catch finally throw
" TODO:
syn keyword csUnspecifiedStatement as base checked event fixed in is lock new operator out params ref sizeof stackalloc this typeof unchecked unsafe using
" TODO:
syn keyword csUnsupportedStatement add remove value
" TODO:
syn keyword csUnspecifiedKeyword explicit implicit
" Contextual Keywords
syn match csContextualStatement /\<yield[[:space:]\n]\+\(return\|break\)/me=s+5
syn match csContextualStatement /\<partial[[:space:]\n]\+\(class\|struct\|interface\)/me=s+7
syn match csContextualStatement /\<\(get\|set\)[[:space:]\n]*{/me=s+3
syn match csContextualStatement /\<where\>[^:]\+:/me=s+5
" Comments
"
" PROVIDES: @csCommentHook
"
" TODO: include strings ?
"
syn keyword csTodo contained TODO FIXME XXX NOTE
syn region csComment start="/\*" end="\*/" contains=@csCommentHook,csTodo,@Spell
syn match csComment "//.*$" contains=@csCommentHook,csTodo,@Spell
" xml markup inside '///' comments
syn cluster xmlRegionHook add=csXmlCommentLeader
syn cluster xmlCdataHook add=csXmlCommentLeader
syn cluster xmlStartTagHook add=csXmlCommentLeader
syn keyword csXmlTag contained Libraries Packages Types Excluded ExcludedTypeName ExcludedLibraryName
syn keyword csXmlTag contained ExcludedBucketName TypeExcluded Type TypeKind TypeSignature AssemblyInfo
syn keyword csXmlTag contained AssemblyName AssemblyPublicKey AssemblyVersion AssemblyCulture Base
syn keyword csXmlTag contained BaseTypeName Interfaces Interface InterfaceName Attributes Attribute
syn keyword csXmlTag contained AttributeName Members Member MemberSignature MemberType MemberValue
syn keyword csXmlTag contained ReturnValue ReturnType Parameters Parameter MemberOfPackage
syn keyword csXmlTag contained ThreadingSafetyStatement Docs devdoc example overload remarks returns summary
syn keyword csXmlTag contained threadsafe value internalonly nodoc exception param permission platnote
syn keyword csXmlTag contained seealso b c i pre sub sup block code note paramref see subscript superscript
syn keyword csXmlTag contained list listheader item term description altcompliant altmember
syn cluster xmlTagHook add=csXmlTag
syn match csXmlCommentLeader +\/\/\/+ contained
syn match csXmlComment +\/\/\/.*$+ contains=csXmlCommentLeader,@csXml,@Spell
syntax include @csXml syntax/xml.vim
hi def link xmlRegion Comment
" [1] 9.5 Pre-processing directives
syn region csPreCondit
\ start="^\s*#\s*\(define\|undef\|if\|elif\|else\|endif\|line\|error\|warning\)"
\ skip="\\$" end="$" contains=csComment keepend
syn region csRegion matchgroup=csPreCondit start="^\s*#\s*region.*$"
\ end="^\s*#\s*endregion" transparent fold contains=TOP
" Strings and constants
syn match csSpecialError contained "\\."
syn match csSpecialCharError contained "[^']"
" [1] 9.4.4.4 Character literals
syn match csSpecialChar contained +\\["\\'0abfnrtvx]+
" unicode characters
syn match csUnicodeNumber +\\\(u\x\{4}\|U\x\{8}\)+ contained contains=csUnicodeSpecifier
syn match csUnicodeSpecifier +\\[uU]+ contained
syn region csVerbatimString start=+@"+ end=+"+ skip=+""+ contains=csVerbatimSpec,@Spell
syn match csVerbatimSpec +@"+he=s+1 contained
syn region csString start=+"+ end=+"+ end=+$+ contains=csSpecialChar,csSpecialError,csUnicodeNumber,@Spell
syn match csCharacter "'[^']*'" contains=csSpecialChar,csSpecialCharError
syn match csCharacter "'\\''" contains=csSpecialChar
syn match csCharacter "'[^\\]'"
syn match csNumber "\<\(0[0-7]*\|0[xX]\x\+\|\d\+\)[lL]\=\>"
syn match csNumber "\(\<\d\+\.\d*\|\.\d\+\)\([eE][-+]\=\d\+\)\=[fFdD]\="
syn match csNumber "\<\d\+[eE][-+]\=\d\+[fFdD]\=\>"
syn match csNumber "\<\d\+\([eE][-+]\=\d\+\)\=[fFdD]\>"
" The default highlighting.
hi def link csType Type
hi def link csStorage StorageClass
hi def link csRepeat Repeat
hi def link csConditional Conditional
hi def link csLabel Label
hi def link csModifier StorageClass
hi def link csConstant Constant
hi def link csException Exception
hi def link csUnspecifiedStatement Statement
hi def link csUnsupportedStatement Statement
hi def link csUnspecifiedKeyword Keyword
hi def link csContextualStatement Statement
hi def link csOperatorError Error
hi def link csTodo Todo
hi def link csComment Comment
hi def link csSpecialError Error
hi def link csSpecialCharError Error
hi def link csString String
hi def link csVerbatimString String
hi def link csVerbatimSpec SpecialChar
hi def link csPreCondit PreCondit
hi def link csCharacter Character
hi def link csSpecialChar SpecialChar
hi def link csNumber Number
hi def link csUnicodeNumber SpecialChar
hi def link csUnicodeSpecifier SpecialChar
" xml markup
hi def link csXmlCommentLeader Comment
hi def link csXmlComment Comment
hi def link csXmlTag Statement
let b:current_syntax = "cs"
let &cpo = s:cs_cpo_save
unlet s:cs_cpo_save
" vim: ts=8
endif

195
syntax/csc.vim Normal file
View File

@@ -0,0 +1,195 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Essbase script
" Maintainer: Raul Segura Acevedo <raulseguraaceved@netscape.net>
" Last change: 2011 Dec 25 by Thilo Six
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" folds: fix/endfix and comments
sy region EssFold start="\<Fix" end="EndFix" transparent fold
sy keyword cscTodo contained TODO FIXME XXX
" cscCommentGroup allows adding matches for special things in comments
sy cluster cscCommentGroup contains=cscTodo
" Strings in quotes
sy match cscError '"'
sy match cscString '"[^"]*"'
"when wanted, highlight trailing white space
if exists("csc_space_errors")
if !exists("csc_no_trail_space_error")
sy match cscSpaceE "\s\+$"
endif
if !exists("csc_no_tab_space_error")
sy match cscSpaceE " \+\t"me=e-1
endif
endif
"catch errors caused by wrong parenthesis and brackets
sy cluster cscParenGroup contains=cscParenE,@cscCommentGroup,cscUserCont,cscBitField,cscFormat,cscNumber,cscFloat,cscOctal,cscNumbers,cscIfError,cscComW,cscCom,cscFormula,cscBPMacro
sy region cscParen transparent start='(' end=')' contains=ALLBUT,@cscParenGroup
sy match cscParenE ")"
"integer number, or floating point number without a dot and with "f".
sy case ignore
sy match cscNumbers transparent "\<\d\|\.\d" contains=cscNumber,cscFloat,cscOctal
sy match cscNumber contained "\d\+\(u\=l\{0,2}\|ll\=u\)\>"
"hex number
sy match cscNumber contained "0x\x\+\(u\=l\{0,2}\|ll\=u\)\>"
" Flag the first zero of an octal number as something special
sy match cscOctal contained "0\o\+\(u\=l\{0,2}\|ll\=u\)\>"
sy match cscFloat contained "\d\+f"
"floating point number, with dot, optional exponent
sy match cscFloat contained "\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\="
"floating point number, starting with a dot, optional exponent
sy match cscFloat contained "\.\d\+\(e[-+]\=\d\+\)\=[fl]\=\>"
"floating point number, without dot, with exponent
sy match cscFloat contained "\d\+e[-+]\=\d\+[fl]\=\>"
sy region cscComment start="/\*" end="\*/" contains=@cscCommentGroup,cscSpaceE fold
sy match cscCommentE "\*/"
sy keyword cscIfError IF ELSE ENDIF ELSEIF
sy keyword cscCondition contained IF ELSE ENDIF ELSEIF
sy keyword cscFunction contained VARPER VAR UDA TRUNCATE SYD SUMRANGE SUM
sy keyword cscFunction contained STDDEVRANGE STDDEV SPARENTVAL SLN SIBLINGS SHIFT
sy keyword cscFunction contained SANCESTVAL RSIBLINGS ROUND REMAINDER RELATIVE PTD
sy keyword cscFunction contained PRIOR POWER PARENTVAL NPV NEXT MOD MINRANGE MIN
sy keyword cscFunction contained MDSHIFT MDPARENTVAL MDANCESTVAL MAXRANGE MAX MATCH
sy keyword cscFunction contained LSIBLINGS LEVMBRS LEV
sy keyword cscFunction contained ISUDA ISSIBLING ISSAMELEV ISSAMEGEN ISPARENT ISMBR
sy keyword cscFunction contained ISLEV ISISIBLING ISIPARENT ISIDESC ISICHILD ISIBLINGS
sy keyword cscFunction contained ISIANCEST ISGEN ISDESC ISCHILD ISANCEST ISACCTYPE
sy keyword cscFunction contained IRSIBLINGS IRR INTEREST INT ILSIBLINGS IDESCENDANTS
sy keyword cscFunction contained ICHILDREN IANCESTORS IALLANCESTORS
sy keyword cscFunction contained GROWTH GENMBRS GEN FACTORIAL DISCOUNT DESCENDANTS
sy keyword cscFunction contained DECLINE CHILDREN CURRMBRRANGE CURLEV CURGEN
sy keyword cscFunction contained COMPOUNDGROWTH COMPOUND AVGRANGE AVG ANCESTVAL
sy keyword cscFunction contained ANCESTORS ALLANCESTORS ACCUM ABS
sy keyword cscFunction contained @VARPER @VAR @UDA @TRUNCATE @SYD @SUMRANGE @SUM
sy keyword cscFunction contained @STDDEVRANGE @STDDEV @SPARENTVAL @SLN @SIBLINGS @SHIFT
sy keyword cscFunction contained @SANCESTVAL @RSIBLINGS @ROUND @REMAINDER @RELATIVE @PTD
sy keyword cscFunction contained @PRIOR @POWER @PARENTVAL @NPV @NEXT @MOD @MINRANGE @MIN
sy keyword cscFunction contained @MDSHIFT @MDPARENTVAL @MDANCESTVAL @MAXRANGE @MAX @MATCH
sy keyword cscFunction contained @LSIBLINGS @LEVMBRS @LEV
sy keyword cscFunction contained @ISUDA @ISSIBLING @ISSAMELEV @ISSAMEGEN @ISPARENT @ISMBR
sy keyword cscFunction contained @ISLEV @ISISIBLING @ISIPARENT @ISIDESC @ISICHILD @ISIBLINGS
sy keyword cscFunction contained @ISIANCEST @ISGEN @ISDESC @ISCHILD @ISANCEST @ISACCTYPE
sy keyword cscFunction contained @IRSIBLINGS @IRR @INTEREST @INT @ILSIBLINGS @IDESCENDANTS
sy keyword cscFunction contained @ICHILDREN @IANCESTORS @IALLANCESTORS
sy keyword cscFunction contained @GROWTH @GENMBRS @GEN @FACTORIAL @DISCOUNT @DESCENDANTS
sy keyword cscFunction contained @DECLINE @CHILDREN @CURRMBRRANGE @CURLEV @CURGEN
sy keyword cscFunction contained @COMPOUNDGROWTH @COMPOUND @AVGRANGE @AVG @ANCESTVAL
sy keyword cscFunction contained @ANCESTORS @ALLANCESTORS @ACCUM @ABS
sy match cscFunction contained "@"
sy match cscError "@\s*\a*" contains=cscFunction
sy match cscStatement "&"
sy keyword cscStatement AGG ARRAY VAR CCONV CLEARDATA DATACOPY
sy match cscComE contained "^\s*CALC.*"
sy match cscComE contained "^\s*CLEARBLOCK.*"
sy match cscComE contained "^\s*SET.*"
sy match cscComE contained "^\s*FIX"
sy match cscComE contained "^\s*ENDFIX"
sy match cscComE contained "^\s*ENDLOOP"
sy match cscComE contained "^\s*LOOP"
" sy keyword cscCom FIX ENDFIX LOOP ENDLOOP
sy match cscComW "^\s*CALC.*"
sy match cscCom "^\s*CALC\s*ALL"
sy match cscCom "^\s*CALC\s*AVERAGE"
sy match cscCom "^\s*CALC\s*DIM"
sy match cscCom "^\s*CALC\s*FIRST"
sy match cscCom "^\s*CALC\s*LAST"
sy match cscCom "^\s*CALC\s*TWOPASS"
sy match cscComW "^\s*CLEARBLOCK.*"
sy match cscCom "^\s*CLEARBLOCK\s\+ALL"
sy match cscCom "^\s*CLEARBLOCK\s\+UPPER"
sy match cscCom "^\s*CLEARBLOCK\s\+NONINPUT"
sy match cscComW "^\s*\<SET.*"
sy match cscCom "^\s*\<SET\s\+Commands"
sy match cscCom "^\s*\<SET\s\+AGGMISSG"
sy match cscCom "^\s*\<SET\s\+CACHE"
sy match cscCom "^\s*\<SET\s\+CALCHASHTBL"
sy match cscCom "^\s*\<SET\s\+CLEARUPDATESTATUS"
sy match cscCom "^\s*\<SET\s\+FRMLBOTTOMUP"
sy match cscCom "^\s*\<SET\s\+LOCKBLOCK"
sy match cscCom "^\s*\<SET\s\+MSG"
sy match cscCom "^\s*\<SET\s\+NOTICE"
sy match cscCom "^\s*\<SET\s\+UPDATECALC"
sy match cscCom "^\s*\<SET\s\+UPTOLOCAL"
sy keyword cscBPMacro contained !LoopOnAll !LoopOnLevel !LoopOnSelected
sy keyword cscBPMacro contained !CurrentMember !LoopOnDimensions !CurrentDimension
sy keyword cscBPMacro contained !CurrentOtherLoopDimension !LoopOnOtherLoopDimensions
sy keyword cscBPMacro contained !EndLoop !AllMembers !SelectedMembers !If !Else !EndIf
sy keyword cscBPMacro contained LoopOnAll LoopOnLevel LoopOnSelected
sy keyword cscBPMacro contained CurrentMember LoopOnDimensions CurrentDimension
sy keyword cscBPMacro contained CurrentOtherLoopDimension LoopOnOtherLoopDimensions
sy keyword cscBPMacro contained EndLoop AllMembers SelectedMembers If Else EndIf
sy match cscBPMacro contained "!"
sy match cscBPW "!\s*\a*" contains=cscBPmacro
" when wanted, highlighting lhs members or erros in asignments (may lag the editing)
if exists("csc_asignment")
sy match cscEqError '\("[^"]*"\s*\|[^][\t !%()*+,--/:;<=>{}~]\+\s*\|->\s*\)*=\([^=]\@=\|$\)'
sy region cscFormula transparent matchgroup=cscVarName start='\("[^"]*"\|[^][\t !%()*+,--/:;<=>{}~]\+\)\s*=\([^=]\@=\|\n\)' skip='"[^"]*"' end=';' contains=ALLBUT,cscFormula,cscFormulaIn,cscBPMacro,cscCondition
sy region cscFormulaIn matchgroup=cscVarName transparent start='\("[^"]*"\|[^][\t !%()*+,--/:;<=>{}~]\+\)\(->\("[^"]*"\|[^][\t !%()*+,--/:;<=>{}~]\+\)\)*\s*=\([^=]\@=\|$\)' skip='"[^"]*"' end=';' contains=ALLBUT,cscFormula,cscFormulaIn,cscBPMacro,cscCondition contained
sy match cscEq "=="
endif
if !exists("csc_minlines")
let csc_minlines = 50 " mostly for () constructs
endif
exec "sy sync ccomment cscComment minlines=" . csc_minlines
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi cscVarName term=bold ctermfg=9 gui=bold guifg=blue
hi def link cscNumber Number
hi def link cscOctal Number
hi def link cscFloat Float
hi def link cscParenE Error
hi def link cscCommentE Error
hi def link cscSpaceE Error
hi def link cscError Error
hi def link cscString String
hi def link cscComment Comment
hi def link cscTodo Todo
hi def link cscStatement Statement
hi def link cscIfError Error
hi def link cscEqError Error
hi def link cscFunction Statement
hi def link cscCondition Statement
hi def link cscWarn WarningMsg
hi def link cscComE Error
hi def link cscCom Statement
hi def link cscComW WarningMsg
hi def link cscBPMacro Identifier
hi def link cscBPW WarningMsg
let b:current_syntax = "csc"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8
endif

540
syntax/csdl.vim Normal file
View File

@@ -0,0 +1,540 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Curated Stream Definition Language (CSDL)
" Maintainer: Jacek Artymiak
" Latest Revision: 25 February 2013
if exists("b:current_syntax")
finish
endif
setlocal iskeyword=.,@,48-57,_,192-255
syn case ignore
syn match csdlKeyword "tag "
syn match csdlKeyword "stream "
syn match csdlKeyword "return "
syn keyword csdlOperator contains
syn match csdlOperator "cs contains"
syn keyword csdlOperator substr
syn match csdlOperator "cs substr"
syn keyword csdlOperator contains_any
syn match csdlOperator "cs contains_any"
syn keyword csdlOperator any
syn match csdlOperator "cs any"
syn keyword csdlOperator contains_near
syn match csdlOperator "cs contains_near"
syn keyword csdlOperator exists
syn keyword csdlOperator in
syn keyword csdlOperator url_in
syn match csdlOperator "=="
syn match csdlOperator "!="
syn match csdlOperator "cs =="
syn match csdlOperator "cs !="
syn match csdlOperator ">"
syn match csdlOperator ">="
syn match csdlOperator "<"
syn match csdlOperator "<="
syn keyword csdlOperator regex_partial
syn keyword csdlOperator regex_exact
syn keyword csdlOperator geo_box
syn keyword csdlOperator geo_radius
syn keyword csdlOperator geo_polygon
syn keyword csdlLogicalOperator and
syn keyword csdlLogicalOperator or
syn keyword csdlLogicalOperator not
syn match csdlTarget 'reddit\.title'
syn match csdlTarget 'reddit\.content'
syn match csdlTarget 'reddit\.contenttype'
syn match csdlTarget 'reddit\.link'
syn match csdlTarget 'reddit\.author\.name'
syn match csdlTarget 'reddit\.author\.link'
syn match csdlTarget 'reddit\.type'
syn match csdlTarget 'reddit\.thread'
syn match csdlTarget 'interaction\.type'
syn match csdlTarget 'interaction\.title'
syn match csdlTarget 'interaction\.content'
syn match csdlTarget 'interaction\.source'
syn match csdlTarget 'interaction\.geo'
syn match csdlTarget 'interaction\.link'
syn match csdlTarget 'interaction\.author\.username'
syn match csdlTarget 'interaction\.author\.name'
syn match csdlTarget 'interaction\.author\.id'
syn match csdlTarget 'interaction\.author\.avatar'
syn match csdlTarget 'interaction\.author\.link'
syn match csdlTarget 'interaction\.sample'
syn match csdlTarget 'links\.title'
syn match csdlTarget 'links\.url'
syn keyword csdlTarget links.normalized_url
syn match csdlTarget 'links\.hops'
syn match csdlTarget 'links\.code'
syn match csdlTarget 'links\.domain'
syn keyword csdlTarget links.retweet_count
syn match csdlTarget 'links\.age'
syn keyword csdlTarget links.meta.content_type
syn match csdlTarget 'links\.meta\.charset'
syn match csdlTarget 'links\.meta\.lang'
syn match csdlTarget 'links\.meta\.keywords'
syn match csdlTarget 'links\.meta\.description'
syn match csdlTarget 'links\.meta\.newskeywords'
syn match csdlTarget 'links\.meta\.standout'
syn match csdlTarget 'links\.meta\.opengraph\.type'
syn match csdlTarget 'links\.meta\.opengraph\.title'
syn match csdlTarget 'links\.meta\.opengraph\.image'
syn match csdlTarget 'links\.meta\.opengraph\.url'
syn match csdlTarget 'links\.meta\.opengraph\.description'
syn keyword csdlTarget links.meta.opengraph.site_name
syn match csdlTarget 'links\.meta\.opengraph\.email'
syn keyword csdlTarget links.meta.opengraph.phone_number
syn keyword csdlTarget links.meta.opengraph.fax_number
syn match csdlTarget 'links\.meta\.opengraph\.geo'
syn keyword csdlTarget links.meta.opengraph.street_address
syn match csdlTarget 'links\.meta\.opengraph\.locality'
syn match csdlTarget 'links\.meta\.opengraph\.region'
syn keyword csdlTarget links.meta.opengraph.postal_code
syn match csdlTarget 'links\.meta\.opengraph\.activity'
syn match csdlTarget 'links\.meta\.opengraph\.sport'
syn match csdlTarget 'links\.meta\.opengraph\.bar'
syn match csdlTarget 'links\.meta\.opengraph\.company'
syn match csdlTarget 'links\.meta\.opengraph\.cafe'
syn match csdlTarget 'links\.meta\.opengraph\.hotel'
syn match csdlTarget 'links\.meta\.opengraph\.restaurant'
syn match csdlTarget 'links\.meta\.opengraph\.cause'
syn keyword csdlTarget links.meta.opengraph.sports_league
syn keyword csdlTarget links.meta.opengraph.sports_team
syn match csdlTarget 'links\.meta\.opengraph\.band'
syn match csdlTarget 'links\.meta\.opengraph\.government'
syn keyword csdlTarget links.meta.opengraph.non_profit
syn match csdlTarget 'links\.meta\.opengraph\.school'
syn match csdlTarget 'links\.meta\.opengraph\.university'
syn match csdlTarget 'links\.meta\.opengraph\.actor'
syn match csdlTarget 'links\.meta\.opengraph\.athlete'
syn match csdlTarget 'links\.meta\.opengraph\.author'
syn match csdlTarget 'links\.meta\.opengraph\.director'
syn match csdlTarget 'links\.meta\.opengraph\.musician'
syn match csdlTarget 'links\.meta\.opengraph\.politician'
syn keyword csdlTarget links.meta.opengraph.public_figure
syn match csdlTarget 'links\.meta\.opengraph\.city'
syn match csdlTarget 'links\.meta\.opengraph\.country'
syn match csdlTarget 'links\.meta\.opengraph\.landmark'
syn keyword csdlTarget links.meta.opengraph.state_province
syn match csdlTarget 'links\.meta\.opengraph\.album'
syn match csdlTarget 'links\.meta\.opengraph\.book'
syn match csdlTarget 'links\.meta\.opengraph\.drink'
syn match csdlTarget 'links\.meta\.opengraph\.food'
syn match csdlTarget 'links\.meta\.opengraph\.game'
syn match csdlTarget 'links\.meta\.opengraph\.movie'
syn match csdlTarget 'links\.meta\.opengraph\.product'
syn match csdlTarget 'links\.meta\.opengraph\.song'
syn keyword csdlTarget links.meta.opengraph.tv_show
syn match csdlTarget 'links\.meta\.opengraph\.blog'
syn match csdlTarget 'links\.meta\.opengraph\.website'
syn match csdlTarget 'links\.meta\.opengraph\.article'
syn match csdlTarget 'links\.meta\.twitter\.card'
syn match csdlTarget 'links\.meta\.twitter\.site'
syn keyword csdlTarget links.meta.twitter.site_id
syn match csdlTarget 'links\.meta\.twitter\.creator'
syn keyword csdlTarget links.meta.twitter.creator_id
syn match csdlTarget 'links\.meta\.twitter\.url'
syn match csdlTarget 'links\.meta\.twitter\.description'
syn match csdlTarget 'links\.meta\.twitter\.title'
syn match csdlTarget 'links\.meta\.twitter\.image'
syn keyword csdlTarget links.meta.twitter.image_width
syn keyword csdlTarget links.meta.twitter.image_height
syn match csdlTarget 'links\.meta\.twitter\.player'
syn keyword csdlTarget links.meta.twitter.player_width
syn keyword csdlTarget links.meta.twitter.player_height
syn keyword csdlTarget links.meta.twitter.player_stream
syn keyword csdlTarget links.meta.twitter.player_stream_content_type
syn match csdlTarget 'myspace\.link'
syn match csdlTarget 'myspace\.content'
syn match csdlTarget 'myspace\.contenttype'
syn match csdlTarget 'myspace\.category'
syn match csdlTarget 'myspace\.author\.username'
syn match csdlTarget 'myspace\.author\.name'
syn match csdlTarget 'myspace\.author\.id'
syn match csdlTarget 'myspace\.author\.link'
syn match csdlTarget 'myspace\.author\.avatar'
syn match csdlTarget 'myspace\.geo'
syn match csdlTarget 'myspace\.verb'
syn match csdlTarget 'newscred\.type'
syn match csdlTarget 'newscred\.article\.domain'
syn match csdlTarget 'newscred\.video\.domain'
syn match csdlTarget 'newscred\.article\.topics'
syn match csdlTarget 'newscred\.video\.topics'
syn match csdlTarget 'newscred\.article\.category'
syn match csdlTarget 'newscred\.video\.category'
syn match csdlTarget 'newscred\.article\.title'
syn match csdlTarget 'newscred\.video\.title'
syn match csdlTarget 'newscred\.article\.content'
syn match csdlTarget 'newscred\.article\.fulltext'
syn match csdlTarget 'newscred\.article\.authors'
syn match csdlTarget 'newscred\.image\.caption'
syn match csdlTarget 'newscred\.video\.caption'
syn match csdlTarget 'newscred\.image\.attribution\.text'
syn match csdlTarget 'newscred\.image\.attribution\.link'
syn match csdlTarget 'newscred\.source\.name'
syn match csdlTarget 'newscred\.source\.link'
syn match csdlTarget 'newscred\.source\.domain'
syn keyword csdlTarget newscred.source.media_type
syn keyword csdlTarget newscred.source.company_type
syn match csdlTarget 'newscred\.source\.country'
syn match csdlTarget 'newscred\.source\.circulation'
syn match csdlTarget 'newscred\.source\.founded'
syn match csdlTarget 'imdb\.title'
syn match csdlTarget 'imdb\.content'
syn match csdlTarget 'imdb\.contenttype'
syn match csdlTarget 'imdb\.link'
syn match csdlTarget 'imdb\.author\.name'
syn match csdlTarget 'imdb\.author\.link'
syn match csdlTarget 'imdb\.type'
syn match csdlTarget 'imdb\.thread'
syn match csdlTarget 'amazon\.title'
syn match csdlTarget 'amazon\.content'
syn match csdlTarget 'amazon\.contenttype'
syn match csdlTarget 'amazon\.link'
syn match csdlTarget 'amazon\.author\.name'
syn match csdlTarget 'amazon\.author\.link'
syn match csdlTarget 'amazon\.type'
syn match csdlTarget 'amazon\.thread'
syn match csdlTarget 'salience\.content\.sentiment'
syn match csdlTarget 'salience\.content\.topics'
syn match csdlTarget 'salience\.title\.sentiment'
syn match csdlTarget 'salience\.title\.topics'
syn match csdlTarget 'salience\.content\.entities\.name'
syn match csdlTarget 'salience\.content\.entities\.type'
syn match csdlTarget 'salience\.title\.entities\.name'
syn match csdlTarget 'salience\.title\.entities\.type'
syn match csdlTarget 'klout\.score'
syn match csdlTarget 'klout\.network'
syn match csdlTarget 'klout\.amplification'
syn keyword csdlTarget klout.true_reach
syn match csdlTarget 'klout\.topics'
syn match csdlTarget 'wikipedia\.author\.talk'
syn match csdlTarget 'wikipedia\.author\.contributions'
syn match csdlTarget 'wikipedia\.author\.username'
syn match csdlTarget 'wikipedia\.body'
syn match csdlTarget 'wikipedia\.title'
syn match csdlTarget 'wikipedia\.images'
syn match csdlTarget 'wikipedia\.categories'
syn match csdlTarget 'wikipedia\.externallinks'
syn match csdlTarget 'wikipedia\.ns'
syn match csdlTarget 'wikipedia\.namespace'
syn match csdlTarget 'wikipedia\.pageid'
syn match csdlTarget 'wikipedia\.parentid'
syn match csdlTarget 'wikipedia\.oldlen'
syn match csdlTarget 'wikipedia\.newlen'
syn match csdlTarget 'wikipedia\.changetype'
syn match csdlTarget 'wikipedia\.diff\.from'
syn match csdlTarget 'wikipedia\.diff\.to'
syn match csdlTarget 'wikipedia\.diff\.changes\.added'
syn match csdlTarget 'wikipedia\.diff\.changes\.removed'
syn keyword csdlTarget demographic.twitter_activity
syn match csdlTarget 'demographic\.location\.country'
syn keyword csdlTarget demographic.location.us_state
syn match csdlTarget 'demographic\.location\.city'
syn match csdlTarget 'demographic\.type'
syn match csdlTarget 'demographic\.sex'
syn match csdlTarget 'demographic\.status\.relationship'
syn match csdlTarget 'demographic\.status\.work'
syn keyword csdlTarget demographic.likes_and_interests
syn keyword csdlTarget demographic.first_language
syn match csdlTarget 'demographic\.professions'
syn match csdlTarget 'demographic\.services'
syn keyword csdlTarget demographic.large_accounts_followed
syn keyword csdlTarget demographic.age_range.start
syn keyword csdlTarget demographic.age_range.end
syn match csdlTarget 'demographic\.income\.start'
syn match csdlTarget 'demographic\.income\.end'
syn keyword csdlTarget demographic.main_street.dressed_by
syn keyword csdlTarget demographic.main_street.shop_at
syn keyword csdlTarget demographic.main_street.eat_and_drink_at
syn match csdlTarget 'demographic\.accounts\.categories'
syn match csdlTarget 'tumblr\.activity'
syn match csdlTarget 'tumblr\.source\.blogid'
syn match csdlTarget 'tumblr\.dest\.blogid'
syn match csdlTarget 'tumblr\.dest\.postid'
syn match csdlTarget 'tumblr\.root\.blogid'
syn match csdlTarget 'tumblr\.root\.postid'
syn match csdlTarget 'tumblr\.blogid'
syn keyword csdlTarget tumblr.blog_name
syn match csdlTarget 'tumblr\.type'
syn match csdlTarget 'tumblr\.title'
syn match csdlTarget 'tumblr\.body'
syn match csdlTarget 'tumblr\.text'
syn match csdlTarget 'tumblr\.tags'
syn keyword csdlTarget tumblr.track_name
syn match csdlTarget 'tumblr\.album'
syn match csdlTarget 'tumblr\.link'
syn match csdlTarget 'tumblr\.meta\.url'
syn match csdlTarget 'tumblr\.meta\.type'
syn match csdlTarget 'tumblr\.meta\.description'
syn keyword csdlTarget tumblr.meta.likes_local
syn keyword csdlTarget tumblr.meta.likes_global
syn keyword csdlTarget tumblr.meta.reblogged_global
syn match csdlTarget 'demographic\.gender'
syn match csdlTarget 'flickr\.title'
syn match csdlTarget 'flickr\.content'
syn match csdlTarget 'flickr\.contenttype'
syn match csdlTarget 'flickr\.link'
syn match csdlTarget 'flickr\.author\.name'
syn match csdlTarget 'flickr\.author\.link'
syn match csdlTarget 'flickr\.author\.username'
syn match csdlTarget 'flickr\.type'
syn match csdlTarget 'flickr\.thread'
syn match csdlTarget 'twitter\.text'
syn match csdlTarget 'twitter\.source'
syn match csdlTarget 'twitter\.mentions'
syn keyword csdlTarget twitter.mention_ids
syn match csdlTarget 'twitter\.links'
syn match csdlTarget 'twitter\.domains'
syn keyword csdlTarget twitter.in_reply_to_screen_name
syn keyword csdlTarget twitter.in_reply_to_user_id
syn keyword csdlTarget twitter.in_reply_to_status_id
syn keyword csdlTarget twitter.filter_level
syn match csdlTarget 'twitter\.lang'
syn match csdlTarget 'twitter\.geo'
syn match csdlTarget 'twitter\.user\.description'
syn match csdlTarget 'twitter\.user\.location'
syn keyword csdlTarget twitter.user.statuses_count
syn keyword csdlTarget twitter.user.followers_count
syn keyword csdlTarget twitter.user.follower_ratio
syn keyword csdlTarget twitter.user.profile_age
syn keyword csdlTarget twitter.user.friends_count
syn keyword csdlTarget twitter.user.screen_name
syn match csdlTarget 'twitter\.user\.lang'
syn keyword csdlTarget twitter.user.time_zone
syn match csdlTarget 'twitter\.user\.name'
syn match csdlTarget 'twitter\.user\.id'
syn keyword csdlTarget twitter.user.listed_count
syn match csdlTarget 'twitter\.user\.url'
syn match csdlTarget 'twitter\.user\.verified'
syn keyword csdlTarget twitter.place.place_type
syn match csdlTarget 'twitter\.place\.country'
syn keyword csdlTarget twitter.place.country_code
syn keyword csdlTarget twitter.place.full_name
syn match csdlTarget 'twitter\.place\.name'
syn match csdlTarget 'twitter\.place\.url'
syn match csdlTarget 'twitter\.place\.attributes\.locality'
syn match csdlTarget 'twitter\.place\.attributes\.region'
syn keyword csdlTarget twitter.place.attributes.street_address
syn match csdlTarget 'twitter\.status'
syn match csdlTarget 'twitter\.retweet\.text'
syn match csdlTarget 'twitter\.retweet\.elapsed'
syn match csdlTarget 'twitter\.retweet\.source'
syn keyword csdlTarget twitter.retweet.filter_level
syn match csdlTarget 'twitter\.retweet\.lang'
syn match csdlTarget 'twitter\.retweet\.user\.description'
syn match csdlTarget 'twitter\.retweet\.user\.location'
syn keyword csdlTarget twitter.retweet.user.statuses_count
syn keyword csdlTarget twitter.retweet.user.followers_count
syn keyword csdlTarget twitter.retweet.user.follower_ratio
syn keyword csdlTarget twitter.retweet.user.profile_age
syn keyword csdlTarget twitter.retweet.user.friends_count
syn keyword csdlTarget twitter.retweet.user.screen_name
syn match csdlTarget 'twitter\.retweet\.user\.lang'
syn keyword csdlTarget twitter.retweet.user.time_zone
syn match csdlTarget 'twitter\.retweet\.user\.name'
syn match csdlTarget 'twitter\.retweet\.user\.id'
syn keyword csdlTarget twitter.retweet.user.listed_count
syn match csdlTarget 'twitter\.retweet\.user\.url'
syn match csdlTarget 'twitter\.retweet\.user\.verified'
syn match csdlTarget 'twitter\.retweeted\.id'
syn match csdlTarget 'twitter\.retweeted\.source'
syn keyword csdlTarget twitter.retweeted.in_reply_to_screen_name
syn keyword csdlTarget twitter.retweeted.in_reply_to_user_id_str
syn keyword csdlTarget twitter.retweeted.in_reply_to_status_id
syn match csdlTarget 'twitter\.retweet\.count'
syn match csdlTarget 'twitter\.retweet\.mentions'
syn keyword csdlTarget twitter.retweet.mention_ids
syn match csdlTarget 'twitter\.retweet\.links'
syn match csdlTarget 'twitter\.retweet\.domains'
syn match csdlTarget 'twitter\.retweeted\.user\.description'
syn match csdlTarget 'twitter\.retweeted\.user\.location'
syn keyword csdlTarget twitter.retweeted.user.statuses_count
syn keyword csdlTarget twitter.retweeted.user.followers_count
syn keyword csdlTarget twitter.retweeted.user.follower_ratio
syn keyword csdlTarget twitter.retweeted.user.profile_age
syn keyword csdlTarget twitter.retweeted.user.friends_count
syn keyword csdlTarget twitter.retweeted.user.screen_name
syn match csdlTarget 'twitter\.retweeted\.user\.lang'
syn keyword csdlTarget twitter.retweeted.user.time_zone
syn match csdlTarget 'twitter\.retweeted\.user\.name'
syn match csdlTarget 'twitter\.retweeted\.user\.id'
syn keyword csdlTarget twitter.retweeted.user.listed_count
syn match csdlTarget 'twitter\.retweeted\.user\.url'
syn match csdlTarget 'twitter\.retweeted\.user\.verified'
syn match csdlTarget 'twitter\.retweeted\.geo'
syn keyword csdlTarget twitter.retweeted.place.place_type
syn match csdlTarget 'twitter\.retweeted\.place\.country'
syn keyword csdlTarget twitter.retweeted.place.country_code
syn keyword csdlTarget twitter.retweeted.place.full_name
syn match csdlTarget 'twitter\.retweeted\.place\.name'
syn match csdlTarget 'twitter\.retweeted\.place\.url'
syn match csdlTarget 'twitter\.retweeted\.place\.attributes'
syn match csdlTarget 'twitter\.hashtags'
syn match csdlTarget 'twitter\.retweet\.hashtags'
syn match csdlTarget 'twitter\.media\.type'
syn keyword csdlTarget twitter.media.media_url
syn keyword csdlTarget twitter.media.display_url
syn match csdlTarget 'twitter\.retweet\.media\.type'
syn keyword csdlTarget twitter.retweet.media.media_url
syn keyword csdlTarget twitter.retweet.media.display_url
syn match csdlTarget 'blog\.title'
syn match csdlTarget 'blog\.content'
syn match csdlTarget 'blog\.contenttype'
syn match csdlTarget 'blog\.link'
syn match csdlTarget 'blog\.domain'
syn match csdlTarget 'blog\.author\.name'
syn match csdlTarget 'blog\.author\.link'
syn match csdlTarget 'blog\.author\.avatar'
syn match csdlTarget 'blog\.author\.username'
syn match csdlTarget 'blog\.type'
syn match csdlTarget 'blog\.post\.link'
syn match csdlTarget 'blog\.post\.title'
syn match csdlTarget 'facebook\.author\.name'
syn match csdlTarget 'facebook\.author\.link'
syn match csdlTarget 'facebook\.author\.id'
syn match csdlTarget 'facebook\.author\.avatar'
syn match csdlTarget 'facebook\.message'
syn match csdlTarget 'facebook\.description'
syn match csdlTarget 'facebook\.caption'
syn match csdlTarget 'facebook\.type'
syn match csdlTarget 'facebook\.application'
syn match csdlTarget 'facebook\.source'
syn match csdlTarget 'facebook\.link'
syn match csdlTarget 'facebook\.name'
syn match csdlTarget 'facebook\.to\.names'
syn match csdlTarget 'facebook\.to\.ids'
syn match csdlTarget 'facebook\.og\.title'
syn match csdlTarget 'facebook\.og\.location'
syn match csdlTarget 'facebook\.og\.photos'
syn match csdlTarget 'facebook\.og\.by'
syn match csdlTarget 'facebook\.og\.description'
syn match csdlTarget 'facebook\.og\.type'
syn match csdlTarget 'facebook\.og\.length'
syn match csdlTarget 'facebook\.likes\.count'
syn match csdlTarget 'facebook\.likes\.names'
syn match csdlTarget 'facebook\.likes\.ids'
syn match csdlTarget 'topix\.title'
syn match csdlTarget 'topix\.content'
syn match csdlTarget 'topix\.contenttype'
syn match csdlTarget 'topix\.link'
syn match csdlTarget 'topix\.author\.name'
syn match csdlTarget 'topix\.type'
syn match csdlTarget 'topix\.thread'
syn match csdlTarget 'topix\.author\.location'
syn match csdlTarget 'bitly\.user\.agent'
syn keyword csdlTarget bitly.url_hash
syn match csdlTarget 'bitly\.share\.hash'
syn match csdlTarget 'bitly\.cname'
syn keyword csdlTarget bitly.referring_url
syn keyword csdlTarget bitly.referring_domain
syn match csdlTarget 'bitly\.url'
syn match csdlTarget 'bitly\.domain'
syn keyword csdlTarget bitly.country_code
syn keyword csdlTarget bitly.geo_region_code
syn match csdlTarget 'bitly\.country'
syn keyword csdlTarget bitly.geo_region
syn keyword csdlTarget bitly.geo_city
syn match csdlTarget 'bitly\.geo'
syn match csdlTarget 'bitly\.timezone'
syn match csdlTarget 'trends\.type'
syn match csdlTarget 'trends\.content'
syn match csdlTarget 'trends\.source'
syn match csdlTarget 'board\.title'
syn match csdlTarget 'board\.content'
syn match csdlTarget 'board\.contenttype'
syn match csdlTarget 'board\.link'
syn match csdlTarget 'board\.domain'
syn match csdlTarget 'board\.author\.name'
syn match csdlTarget 'board\.author\.link'
syn match csdlTarget 'board\.author\.avatar'
syn match csdlTarget 'board\.author\.username'
syn match csdlTarget 'board\.type'
syn match csdlTarget 'board\.thread'
syn match csdlTarget 'board\.author\.location'
syn match csdlTarget 'board\.author\.signature'
syn match csdlTarget 'board\.author\.registered'
syn match csdlTarget 'board\.author\.age'
syn match csdlTarget 'board\.author\.gender'
syn match csdlTarget 'video\.title'
syn match csdlTarget 'video\.content'
syn match csdlTarget 'video\.contenttype'
syn match csdlTarget 'video\.domain'
syn match csdlTarget 'video\.author\.name'
syn match csdlTarget 'video\.author\.link'
syn match csdlTarget 'video\.author\.avatar'
syn match csdlTarget 'video\.author\.username'
syn match csdlTarget 'video\.type'
syn match csdlTarget 'video\.videolink'
syn match csdlTarget 'video\.commentslink'
syn match csdlTarget 'video\.duration'
syn match csdlTarget 'video\.thumbnail'
syn match csdlTarget 'video\.category'
syn match csdlTarget 'video\.tags'
syn match csdlTarget '2ch\.title'
syn match csdlTarget '2ch\.content'
syn match csdlTarget '2ch\.contenttype'
syn match csdlTarget '2ch\.link'
syn match csdlTarget '2ch\.author\.name'
syn match csdlTarget '2ch\.type'
syn match csdlTarget '2ch\.thread'
syn match csdlTarget 'dailymotion\.title'
syn match csdlTarget 'dailymotion\.content'
syn match csdlTarget 'dailymotion\.contenttype'
syn match csdlTarget 'dailymotion\.author\.link'
syn match csdlTarget 'dailymotion\.author\.username'
syn match csdlTarget 'dailymotion\.videolink'
syn match csdlTarget 'dailymotion\.duration'
syn match csdlTarget 'dailymotion\.thumbnail'
syn match csdlTarget 'dailymotion\.category'
syn match csdlTarget 'dailymotion\.tags'
syn match csdlTarget 'language\.tag'
syn match csdlTarget 'language\.confidence'
syn match csdlTarget 'digg\.type'
syn match csdlTarget 'digg\.user\.name'
syn match csdlTarget 'digg\.user\.fullname'
syn match csdlTarget 'digg\.user\.registered'
syn match csdlTarget 'digg\.user\.profileviews'
syn match csdlTarget 'digg\.user\.icon'
syn match csdlTarget 'digg\.user\.links'
syn match csdlTarget 'digg\.item\.status'
syn match csdlTarget 'digg\.item\.description'
syn match csdlTarget 'digg\.item\.title'
syn match csdlTarget 'digg\.item\.diggs'
syn match csdlTarget 'digg\.item\.comments'
syn match csdlTarget 'digg\.item\.topic'
syn match csdlTarget 'digg\.comment\.buries'
syn match csdlTarget 'digg\.comment\.diggs'
syn match csdlTarget 'digg\.comment\.text'
syn match csdlTarget 'youtube\.title'
syn match csdlTarget 'youtube\.content'
syn match csdlTarget 'youtube\.contenttype'
syn match csdlTarget 'youtube\.author\.name'
syn match csdlTarget 'youtube\.author\.link'
syn match csdlTarget 'youtube\.type'
syn match csdlTarget 'youtube\.videolink'
syn match csdlTarget 'youtube\.commentslink'
syn match csdlTarget 'youtube\.duration'
syn match csdlTarget 'youtube\.thumbnail'
syn match csdlTarget 'youtube\.category'
syn match csdlTarget 'youtube\.tags'
syn match csdlComment "^\/\/.*$"
syn match csdlComment "^\/\*.*$"
syn match csdlComment "^.*\*\/$"
highlight link csdlKeyword Statement
highlight link csdlOperator Operator
highlight link csdlLogicalOperator Operator
highlight link csdlTarget Constant
highlight link csdlComment Comment
"
let b:current_syntax = "csdl"
endif

147
syntax/csh.vim Normal file
View File

@@ -0,0 +1,147 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: C-shell (csh)
" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
" Last Change: Aug 31, 2016
" Version: 13
" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_CSH
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" clusters:
syn cluster cshQuoteList contains=cshDblQuote,cshSnglQuote,cshBckQuote
syn cluster cshVarList contains=cshExtVar,cshSelector,cshQtyWord,cshArgv,cshSubst
" Variables which affect the csh itself
syn match cshSetVariables contained "argv\|histchars\|ignoreeof\|noglob\|prompt\|status"
syn match cshSetVariables contained "cdpath\|history\|mail\|nonomatch\|savehist\|time"
syn match cshSetVariables contained "cwd\|home\|noclobber\|path\|shell\|verbose"
syn match cshSetVariables contained "echo"
syn case ignore
syn keyword cshTodo contained todo
syn case match
" Variable Name Expansion Modifiers
syn match cshModifier contained ":\(h\|t\|r\|q\|x\|gh\|gt\|gr\)"
" Strings and Comments
syn match cshNoEndlineDQ contained "[^\"]\(\\\\\)*$"
syn match cshNoEndlineSQ contained "[^\']\(\\\\\)*$"
syn match cshNoEndlineBQ contained "[^\`]\(\\\\\)*$"
syn region cshDblQuote start=+[^\\]"+lc=1 skip=+\\\\\|\\"+ end=+"+ contains=cshSpecial,cshShellVariables,cshExtVar,cshSelector,cshQtyWord,cshArgv,cshSubst,cshNoEndlineDQ,cshBckQuote,@Spell
syn region cshSnglQuote start=+[^\\]'+lc=1 skip=+\\\\\|\\'+ end=+'+ contains=cshNoEndlineSQ,@Spell
syn region cshBckQuote start=+[^\\]`+lc=1 skip=+\\\\\|\\`+ end=+`+ contains=cshNoEndlineBQ,@Spell
syn region cshDblQuote start=+^"+ skip=+\\\\\|\\"+ end=+"+ contains=cshSpecial,cshExtVar,cshSelector,cshQtyWord,cshArgv,cshSubst,cshNoEndlineDQ,@Spell
syn region cshSnglQuote start=+^'+ skip=+\\\\\|\\'+ end=+'+ contains=cshNoEndlineSQ,@Spell
syn region cshBckQuote start=+^`+ skip=+\\\\\|\\`+ end=+`+ contains=cshNoEndlineBQ,@Spell
syn cluster cshCommentGroup contains=cshTodo,@Spell
syn match cshComment "#.*$" contains=@cshCommentGroup
" A bunch of useful csh keywords
syn keyword cshStatement alias end history onintr setenv unalias
syn keyword cshStatement cd eval kill popd shift unhash
syn keyword cshStatement chdir exec login pushd source
syn keyword cshStatement continue exit logout rehash time unsetenv
syn keyword cshStatement dirs glob nice repeat umask wait
syn keyword cshStatement echo goto nohup
syn keyword cshConditional break case else endsw switch
syn keyword cshConditional breaksw default endif
syn keyword cshRepeat foreach
" Special environment variables
syn keyword cshShellVariables HOME LOGNAME PATH TERM USER
" Modifiable Variables without {}
syn match cshExtVar "\$[a-zA-Z_][a-zA-Z0-9_]*\(:h\|:t\|:r\|:q\|:x\|:gh\|:gt\|:gr\)\=" contains=cshModifier
syn match cshSelector "\$[a-zA-Z_][a-zA-Z0-9_]*\[[a-zA-Z_]\+\]\(:h\|:t\|:r\|:q\|:x\|:gh\|:gt\|:gr\)\=" contains=cshModifier
syn match cshQtyWord "\$#[a-zA-Z_][a-zA-Z0-9_]*\(:h\|:t\|:r\|:q\|:x\|:gh\|:gt\|:gr\)\=" contains=cshModifier
syn match cshArgv "\$\d\+\(:h\|:t\|:r\|:q\|:x\|:gh\|:gt\|:gr\)\=" contains=cshModifier
syn match cshArgv "\$\*\(:h\|:t\|:r\|:q\|:x\|:gh\|:gt\|:gr\)\=" contains=cshModifier
" Modifiable Variables with {}
syn match cshExtVar "\${[a-zA-Z_][a-zA-Z0-9_]*\(:h\|:t\|:r\|:q\|:x\|:gh\|:gt\|:gr\)\=}" contains=cshModifier
syn match cshSelector "\${[a-zA-Z_][a-zA-Z0-9_]*\[[a-zA-Z_]\+\]\(:h\|:t\|:r\|:q\|:x\|:gh\|:gt\|:gr\)\=}" contains=cshModifier
syn match cshQtyWord "\${#[a-zA-Z_][a-zA-Z0-9_]*\(:h\|:t\|:r\|:q\|:x\|:gh\|:gt\|:gr\)\=}" contains=cshModifier
syn match cshArgv "\${\d\+\(:h\|:t\|:r\|:q\|:x\|:gh\|:gt\|:gr\)\=}" contains=cshModifier
" UnModifiable Substitutions
syn match cshSubstError "\$?[a-zA-Z_][a-zA-Z0-9_]*:\(h\|t\|r\|q\|x\|gh\|gt\|gr\)"
syn match cshSubstError "\${?[a-zA-Z_][a-zA-Z0-9_]*:\(h\|t\|r\|q\|x\|gh\|gt\|gr\)}"
syn match cshSubstError "\$?[0$<]:\(h\|t\|r\|q\|x\|gh\|gt\|gr\)"
syn match cshSubst "\$?[a-zA-Z_][a-zA-Z0-9_]*"
syn match cshSubst "\${?[a-zA-Z_][a-zA-Z0-9_]*}"
syn match cshSubst "\$?[0$<]"
" I/O redirection
syn match cshRedir ">>&!\|>&!\|>>&\|>>!\|>&\|>!\|>>\|<<\|>\|<"
" Handle set expressions
syn region cshSetExpr matchgroup=cshSetStmt start="\<set\>\|\<unset\>" end="$\|;" contains=cshComment,cshSetStmt,cshSetVariables,@cshQuoteList
" Operators and Expression-Using constructs
"syn match cshOperator contained "&&\|!\~\|!=\|<<\|<=\|==\|=\~\|>=\|>>\|\*\|\^\|\~\|||\|!\|\|%\|&\|+\|-\|/\|<\|>\||"
syn match cshOperator contained "&&\|!\~\|!=\|<<\|<=\|==\|=\~\|>=\|>>\|\*\|\^\|\~\|||\|!\|%\|&\|+\|-\|/\|<\|>\||"
syn match cshOperator contained "[(){}]"
syn region cshTest matchgroup=cshStatement start="\<if\>\|\<while\>" skip="\\$" matchgroup=cshStatement end="\<then\>\|$" contains=cshComment,cshOperator,@cshQuoteList,@cshVarLIst
" Highlight special characters (those which have a backslash) differently
syn match cshSpecial contained "\\\d\d\d\|\\[abcfnrtv\\]"
syn match cshNumber "-\=\<\d\+\>"
" All other identifiers
"syn match cshIdentifier "\<[a-zA-Z._][a-zA-Z0-9._]*\>"
" Shell Input Redirection (Here Documents)
syn region cshHereDoc matchgroup=cshRedir start="<<-\=\s*\**\z(\h\w*\)\**" matchgroup=cshRedir end="^\z1$"
" Define the default highlighting.
if !exists("skip_csh_syntax_inits")
hi def link cshArgv cshVariables
hi def link cshBckQuote cshCommand
hi def link cshDblQuote cshString
hi def link cshExtVar cshVariables
hi def link cshHereDoc cshString
hi def link cshNoEndlineBQ cshNoEndline
hi def link cshNoEndlineDQ cshNoEndline
hi def link cshNoEndlineSQ cshNoEndline
hi def link cshQtyWord cshVariables
hi def link cshRedir cshOperator
hi def link cshSelector cshVariables
hi def link cshSetStmt cshStatement
hi def link cshSetVariables cshVariables
hi def link cshSnglQuote cshString
hi def link cshSubst cshVariables
hi def link cshCommand Statement
hi def link cshComment Comment
hi def link cshConditional Conditional
hi def link cshIdentifier Error
hi def link cshModifier Special
hi def link cshNoEndline Error
hi def link cshNumber Number
hi def link cshOperator Operator
hi def link cshRedir Statement
hi def link cshRepeat Repeat
hi def link cshShellVariables Special
hi def link cshSpecial Special
hi def link cshStatement Statement
hi def link cshString String
hi def link cshSubstError Error
hi def link cshTodo Todo
hi def link cshVariables Type
endif
let b:current_syntax = "csh"
" vim: ts=18
endif

186
syntax/csp.vim Normal file
View File

@@ -0,0 +1,186 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: CSP (Communication Sequential Processes, using FDR input syntax)
" Maintainer: Jan Bredereke <brederek@tzi.de>
" Version: 0.6.0
" Last change: Mon Mar 25, 2002
" URL: http://www.tzi.de/~brederek/vim/
" Copying: You may distribute and use this file freely, in the same
" way as the vim editor itself.
"
" To Do: - Probably I missed some keywords or operators, please
" fix them and notify me, the maintainer.
" - Currently, we do lexical highlighting only. It would be
" nice to have more actual syntax checks, including
" highlighting of wrong syntax.
" - The additional syntax for the RT-Tester (pseudo-comments)
" should be optional.
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" case is significant to FDR:
syn case match
" Block comments in CSP are between {- and -}
syn region cspComment start="{-" end="-}" contains=cspTodo
" Single-line comments start with --
syn region cspComment start="--" end="$" contains=cspTodo,cspOldRttComment,cspSdlRttComment keepend
" Numbers:
syn match cspNumber "\<\d\+\>"
" Conditionals:
syn keyword cspConditional if then else
" Operators on processes:
" -> ? : ! ' ; /\ \ [] |~| [> & [[..<-..]] ||| [|..|] || [..<->..] ; : @ |||
syn match cspOperator "->"
syn match cspOperator "/\\"
syn match cspOperator "[^/]\\"lc=1
syn match cspOperator "\[\]"
syn match cspOperator "|\~|"
syn match cspOperator "\[>"
syn match cspOperator "\[\["
syn match cspOperator "\]\]"
syn match cspOperator "<-"
syn match cspOperator "|||"
syn match cspOperator "[^|]||[^|]"lc=1,me=e-1
syn match cspOperator "[^|{\~]|[^|}\~]"lc=1,me=e-1
syn match cspOperator "\[|"
syn match cspOperator "|\]"
syn match cspOperator "\[[^>]"me=e-1
syn match cspOperator "\]"
syn match cspOperator "<->"
syn match cspOperator "[?:!';@]"
syn match cspOperator "&"
syn match cspOperator "\."
" (not on processes:)
" syn match cspDelimiter "{|"
" syn match cspDelimiter "|}"
" syn match cspDelimiter "{[^-|]"me=e-1
" syn match cspDelimiter "[^-|]}"lc=1
" Keywords:
syn keyword cspKeyword length null head tail concat elem
syn keyword cspKeyword union inter diff Union Inter member card
syn keyword cspKeyword empty set Set Seq
syn keyword cspKeyword true false and or not within let
syn keyword cspKeyword nametype datatype diamond normal
syn keyword cspKeyword sbisim tau_loop_factor model_compress
syn keyword cspKeyword explicate
syn match cspKeyword "transparent"
syn keyword cspKeyword external chase prioritize
syn keyword cspKeyword channel Events
syn keyword cspKeyword extensions productions
syn keyword cspKeyword Bool Int
" Reserved keywords:
syn keyword cspReserved attribute embed module subtype
" Include:
syn region cspInclude matchgroup=cspIncludeKeyword start="^include" end="$" keepend contains=cspIncludeArg
syn region cspIncludeArg start='\s\+\"' end= '\"\s*' contained
" Assertions:
syn keyword cspAssert assert deterministic divergence free deadlock
syn keyword cspAssert livelock
syn match cspAssert "\[T="
syn match cspAssert "\[F="
syn match cspAssert "\[FD="
syn match cspAssert "\[FD\]"
syn match cspAssert "\[F\]"
" Types and Sets
" (first char a capital, later at least one lower case, no trailing underscore):
syn match cspType "\<_*[A-Z][A-Z_0-9]*[a-z]\(\|[A-Za-z_0-9]*[A-Za-z0-9]\)\>"
" Processes (all upper case, no trailing underscore):
" (For identifiers that could be types or sets, too, this second rule set
" wins.)
syn match cspProcess "\<[A-Z_][A-Z_0-9]*[A-Z0-9]\>"
syn match cspProcess "\<[A-Z_]\>"
" reserved identifiers for tool output (ending in underscore):
syn match cspReservedIdentifier "\<[A-Za-z_][A-Za-z_0-9]*_\>"
" ToDo markers:
syn match cspTodo "FIXME" contained
syn match cspTodo "TODO" contained
syn match cspTodo "!!!" contained
" RT-Tester pseudo comments:
" (The now obsolete syntax:)
syn match cspOldRttComment "^--\$\$AM_UNDEF"lc=2 contained
syn match cspOldRttComment "^--\$\$AM_ERROR"lc=2 contained
syn match cspOldRttComment "^--\$\$AM_WARNING"lc=2 contained
syn match cspOldRttComment "^--\$\$AM_SET_TIMER"lc=2 contained
syn match cspOldRttComment "^--\$\$AM_RESET_TIMER"lc=2 contained
syn match cspOldRttComment "^--\$\$AM_ELAPSED_TIMER"lc=2 contained
syn match cspOldRttComment "^--\$\$AM_OUTPUT"lc=2 contained
syn match cspOldRttComment "^--\$\$AM_INPUT"lc=2 contained
" (The current syntax:)
syn region cspRttPragma matchgroup=cspRttPragmaKeyword start="^pragma\s\+" end="\s*$" oneline keepend contains=cspRttPragmaArg,cspRttPragmaSdl
syn keyword cspRttPragmaArg AM_ERROR AM_WARNING AM_SET_TIMER contained
syn keyword cspRttPragmaArg AM_RESET_TIMER AM_ELAPSED_TIMER contained
syn keyword cspRttPragmaArg AM_OUTPUT AM_INPUT AM_INTERNAL contained
" the "SDL_MATCH" extension:
syn region cspRttPragmaSdl matchgroup=cspRttPragmaKeyword start="SDL_MATCH\s\+" end="\s*$" contains=cspRttPragmaSdlArg contained
syn keyword cspRttPragmaSdlArg TRANSLATE nextgroup=cspRttPragmaSdlTransName contained
syn keyword cspRttPragmaSdlArg PARAM SKIP OPTIONAL CHOICE ARRAY nextgroup=cspRttPragmaSdlName contained
syn match cspRttPragmaSdlName "\s*\S\+\s*" nextgroup=cspRttPragmaSdlTail contained
syn region cspRttPragmaSdlTail start="" end="\s*$" contains=cspRttPragmaSdlTailArg contained
syn keyword cspRttPragmaSdlTailArg SUBSET_USED DEFAULT_VALUE Present contained
syn match cspRttPragmaSdlTransName "\s*\w\+\s*" nextgroup=cspRttPragmaSdlTransTail contained
syn region cspRttPragmaSdlTransTail start="" end="\s*$" contains=cspRttPragmaSdlTransTailArg contained
syn keyword cspRttPragmaSdlTransTailArg sizeof contained
syn match cspRttPragmaSdlTransTailArg "\*" contained
syn match cspRttPragmaSdlTransTailArg "(" contained
syn match cspRttPragmaSdlTransTailArg ")" contained
" temporary syntax extension for commented-out "pragma SDL_MATCH":
syn match cspSdlRttComment "pragma\s\+SDL_MATCH\s\+" nextgroup=cspRttPragmaSdlArg contained
syn sync lines=250
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
" The default methods for highlighting. Can be overridden later
" (For vim version <=5.7, the command groups are defined in
" $VIMRUNTIME/syntax/synload.vim )
hi def link cspComment Comment
hi def link cspNumber Number
hi def link cspConditional Conditional
hi def link cspOperator Delimiter
hi def link cspKeyword Keyword
hi def link cspReserved SpecialChar
hi def link cspInclude Error
hi def link cspIncludeKeyword Include
hi def link cspIncludeArg Include
hi def link cspAssert PreCondit
hi def link cspType Type
hi def link cspProcess Function
hi def link cspTodo Todo
hi def link cspOldRttComment Define
hi def link cspRttPragmaKeyword Define
hi def link cspSdlRttComment Define
hi def link cspRttPragmaArg Define
hi def link cspRttPragmaSdlArg Define
hi def link cspRttPragmaSdlName Default
hi def link cspRttPragmaSdlTailArg Define
hi def link cspRttPragmaSdlTransName Default
hi def link cspRttPragmaSdlTransTailArg Define
hi def link cspReservedIdentifier Error
" (Currently unused vim method: Debug)
let b:current_syntax = "csp"
" vim: ts=8
endif

View File

@@ -1,4 +1,4 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'css') == -1
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Cascading Style Sheets
@@ -8,14 +8,12 @@ if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'css') == -1
" Nikolai Weibull (Add CSS2 support)
" Maintainer: Jules Wang <w.jq0722@gmail.com>
" URL: https://github.com/JulesWang/css.vim
" Last Change: 2015 Aug.25
" Last Change: 2017 Jan 14
" cssClassName updated by Ryuichi Hayashida Jan 2016
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
" quit when a syntax file was already loaded
if !exists("main_syntax")
if version < 600
syntax clear
elseif exists("b:current_syntax")
if exists("b:current_syntax")
finish
endif
let main_syntax = 'css'
@@ -61,7 +59,7 @@ syn match cssSelectorOp2 "[~|^$*]\?=" contained
syn region cssAttributeSelector matchgroup=cssSelectorOp start="\[" end="]" contains=cssUnicodeEscape,cssSelectorOp2,cssStringQ,cssStringQQ
" .class and #id
syn match cssClassName "\.[A-Za-z][A-Za-z0-9_-]\+" contains=cssClassNameDot
syn match cssClassName "\.-\=[A-Za-z_][A-Za-z0-9_-]*" contains=cssClassNameDot
syn match cssClassNameDot contained '\.'
try
@@ -70,16 +68,21 @@ catch /^.*/
syn match cssIdentifier "#[A-Za-z_@][A-Za-z0-9_@-]*"
endtry
" digits and units
syn match cssValueNumber contained "[-+]\=\d\+\(\.\d*\)\=%\=" contains=cssUnitDecorators
syn match cssValue contained transparent "[-+]\=\d\+\(\.\d*\)\=\([a-z]\+\)\=\>" contains=cssUnitDecorators,cssValueNumber
" digits
syn match cssValueInteger contained "[-+]\=\d\+" contains=cssUnitDecorators
syn match cssValueNumber contained "[-+]\=\d\+\(\.\d*\)\=" contains=cssUnitDecorators
syn match cssValueLength contained "[-+]\=\d\+\(\.\d*\)\=\(%\|mm\|cm\|in\|pt\|pc\|em\|ex\|px\|rem\|dpi\|dppx\|dpcm\)\>" contains=cssUnitDecorators
syn match cssValueAngle contained "[-+]\=\d\+\(\.\d*\)\=\(deg\|grad\|rad\)\>" contains=cssUnitDecorators
syn match cssValueTime contained "+\=\d\+\(\.\d*\)\=\(ms\|s\)\>" contains=cssUnitDecorators
syn match cssValueFrequency contained "+\=\d\+\(\.\d*\)\=\(Hz\|kHz\)\>" contains=cssUnitDecorators
syn match cssIncludeKeyword /@\(-[a-z]\+-\)\=\(media\|keyframes\|import\|charset\|namespace\|page\)/ contained
" @media
syn region cssInclude start=/@media\>/ end=/\ze{/ skipwhite skipnl contains=cssMediaProp,cssValueLength,cssMediaKeyword,cssValueInteger,cssMediaAttr,cssVendor,cssMediaType,cssIncludeKeyword,cssMediaComma,cssComment nextgroup=cssMediaBlock
syn keyword cssMediaType contained screen print aural braille embossed handheld projection tty tv speech all contained skipwhite skipnl
syn keyword cssMediaKeyword only not and contained
syn region cssMediaBlock transparent matchgroup=cssBraces start='{' end='}' contains=css.*Attr,css.*Prop,cssComment,cssValue,cssColor,cssURL,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape,cssVendor,cssDefinition,cssTagName,cssClassName,cssIdentifier,cssPseudoClass,cssSelectorOp,cssSelectorOp2,cssAttributeSelector fold
syn region cssMediaBlock transparent matchgroup=cssBraces start='{' end='}' contains=css.*Attr,css.*Prop,cssComment,cssValue.*,cssColor,cssURL,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape,cssVendor,cssDefinition,cssTagName,cssClassName,cssIdentifier,cssPseudoClass,cssSelectorOp,cssSelectorOp2,cssAttributeSelector fold
syn match cssMediaComma "," skipwhite skipnl contained
" Reference: http://www.w3.org/TR/css3-mediaqueries/
@@ -94,7 +97,7 @@ syn keyword cssMediaAttr contained portrait landscape progressive interlace
" http://www.w3.org/TR/css3-page/
syn match cssPage "@page\>[^{]*{\@=" contains=cssPagePseudo,cssIncludeKeyword nextgroup=cssPageWrap transparent skipwhite skipnl
syn match cssPagePseudo /:\(left\|right\|first\|blank\)/ contained skipwhite skipnl
syn region cssPageWrap contained transparent matchgroup=cssBraces start="{" end="}" contains=cssPageMargin,cssPageProp,cssAttrRegion,css.*Prop,cssComment,cssValue,cssColor,cssURL,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape,cssVendor,cssDefinition,cssHacks
syn region cssPageWrap contained transparent matchgroup=cssBraces start="{" end="}" contains=cssPageMargin,cssPageProp,cssAttrRegion,css.*Prop,cssComment,cssValue.*,cssColor,cssURL,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape,cssVendor,cssDefinition,cssHacks
syn match cssPageMargin /@\(\(top\|left\|right\|bottom\)-\(left\|center\|right\|middle\|bottom\)\)\(-corner\)\=/ contained nextgroup=cssDefinition skipwhite skipnl
syn keyword cssPageProp contained content size
" http://www.w3.org/TR/CSS2/page.html#break-inside
@@ -104,7 +107,7 @@ syn keyword cssPageProp contained orphans widows
" http://www.w3.org/TR/css3-animations/#keyframes
syn match cssKeyFrame "@\(-[a-z]\+-\)\=keyframes\>[^{]*{\@=" nextgroup=cssKeyFrameWrap contains=cssVendor,cssIncludeKeyword skipwhite skipnl transparent
syn region cssKeyFrameWrap contained transparent matchgroup=cssBraces start="{" end="}" contains=cssKeyFrameSelector
syn match cssKeyFrameSelector /\([-+]\=\d\+\(\.\d*\)\=%\|from\|to\)\=/ contained skipwhite skipnl nextgroup=cssDefinition
syn match cssKeyFrameSelector /\(\d*%\|from\|to\)\=/ contained skipwhite skipnl nextgroup=cssDefinition
" @import
syn region cssInclude start=/@import\>/ end=/\ze;/ transparent contains=cssStringQ,cssStringQQ,cssUnicodeEscape,cssComment,cssIncludeKeyword,cssURL,cssMediaProp,cssValueLength,cssMediaKeyword,cssValueInteger,cssMediaAttr,cssVendor,cssMediaType
@@ -114,7 +117,7 @@ syn region cssInclude start=/@namespace\>/ end=/\ze;/ transparent contains=cssSt
" @font-face
" http://www.w3.org/TR/css3-fonts/#at-font-face-rule
syn match cssFontDescriptor "@font-face\>" nextgroup=cssFontDescriptorBlock skipwhite skipnl
syn region cssFontDescriptorBlock contained transparent matchgroup=cssBraces start="{" end="}" contains=cssComment,cssError,cssUnicodeEscape,cssCommonAttr,cssFontDescriptorProp,cssValue,cssFontDescriptorFunction,cssFontDescriptorAttr,cssNoise
syn region cssFontDescriptorBlock contained transparent matchgroup=cssBraces start="{" end="}" contains=cssComment,cssError,cssUnicodeEscape,cssCommonAttr,cssFontDescriptorProp,cssValue.*,cssFontDescriptorFunction,cssFontDescriptorAttr,cssNoise
syn match cssFontDescriptorProp contained "\<font-family\>"
syn keyword cssFontDescriptorProp contained src
@@ -161,8 +164,8 @@ syn keyword cssColor contained midnightblue mintcream mistyrose moccasin navajow
syn keyword cssColor contained oldlace olivedrab orange orangered orchid
syn match cssColor contained /\<pale\(goldenrod\|green\|turquoise\|violetred\)\>/
syn keyword cssColor contained papayawhip peachpuff peru pink plum powderblue
syn keyword cssColor contained rosybrown royalblue rebeccapurple saddlebrown salmon
syn keyword cssColor contained sandybrown seagreen seashell sienna skyblue slateblue
syn keyword cssColor contained rosybrown royalblue saddlebrown salmon sandybrown
syn keyword cssColor contained seagreen seashell sienna skyblue slateblue
syn keyword cssColor contained slategray slategrey snow springgreen steelblue tan
syn keyword cssColor contained thistle tomato turquoise violet wheat
syn keyword cssColor contained whitesmoke yellowgreen
@@ -183,10 +186,10 @@ syn match cssColor contained "#[0-9A-Fa-f]\{3\}\>" contains=cssUnitDecorators
syn match cssColor contained "#[0-9A-Fa-f]\{6\}\>" contains=cssUnitDecorators
syn region cssURL contained matchgroup=cssFunctionName start="\<url\s*(" end=")" contains=cssStringQ,cssStringQQ oneline
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgb\|clip\|attr\|counter\|rect\|cubic-bezier\|steps\)\s*(" end=")" oneline contains=cssValue,cssFunctionComma
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgba\|hsl\|hsla\|color-stop\|from\|to\)\s*(" end=")" oneline contains=cssColor,cssValue,cssFunctionComma,cssFunction
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(linear-\|radial-\)\=\gradient\s*(" end=")" oneline contains=cssColor,cssValue,cssFunction,cssGradientAttr,cssFunctionComma
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(matrix\(3d\)\=\|scale\(3d\|X\|Y\|Z\)\=\|translate\(3d\|X\|Y\|Z\)\=\|skew\(X\|Y\)\=\|rotate\(3d\|X\|Y\|Z\)\=\|perspective\)\s*(" end=")" oneline contains=cssValueInteger,cssValue,cssFunctionComma
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgb\|clip\|attr\|counter\|rect\|cubic-bezier\|steps\)\s*(" end=")" oneline contains=cssValueInteger,cssValueNumber,cssValueLength,cssFunctionComma
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgba\|hsl\|hsla\|color-stop\|from\|to\)\s*(" end=")" oneline contains=cssColor,cssValueInteger,cssValueNumber,cssValueLength,cssFunctionComma,cssFunction
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(linear-\|radial-\)\=\gradient\s*(" end=")" oneline contains=cssColor,cssValueInteger,cssValueNumber,cssValueLength,cssFunction,cssGradientAttr,cssFunctionComma
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(matrix\(3d\)\=\|scale\(3d\|X\|Y\|Z\)\=\|translate\(3d\|X\|Y\|Z\)\=\|skew\(X\|Y\)\=\|rotate\(3d\|X\|Y\|Z\)\=\|perspective\)\s*(" end=")" oneline contains=cssValueInteger,cssValueNumber,cssValueLength,cssValueAngle,cssFunctionComma
syn keyword cssGradientAttr contained top bottom left right cover center middle ellipse at
syn match cssFunctionComma contained ","
@@ -223,6 +226,7 @@ syn keyword cssBackgroundAttr contained left center right top bottom
" background-repeat attributes
syn match cssBackgroundAttr contained "\<no-repeat\>"
syn match cssBackgroundAttr contained "\<repeat\(-[xy]\)\=\>"
syn keyword cssBackgroundAttr contained space round
" background-size attributes
syn keyword cssBackgroundAttr contained cover contain
@@ -234,7 +238,7 @@ syn match cssBorderProp contained "\<box-decoration-break\>"
syn match cssBorderProp contained "\<box-shadow\>"
" border-image attributes
syn keyword cssBorderAttr contained stretch round fill
syn keyword cssBorderAttr contained stretch round space fill
" border-style attributes
syn keyword cssBorderAttr contained dotted dashed solid double groove ridge inset outset
@@ -262,18 +266,14 @@ syn match cssDimensionProp contained "\<\(min\|max\)-\(width\|height\)\>"
syn keyword cssDimensionProp contained height
syn keyword cssDimensionProp contained width
" CSS Flexible Box Layout Module Level 1
" http://www.w3.org/TR/css3-flexbox/
" CSS Box Alignment Module Level 3
" http://www.w3.org/TR/css-align-3/
syn match cssFlexibleBoxProp contained "\<flex\(-\(direction\|wrap\|flow\|grow\|shrink\|basis\)\)\=\>"
syn match cssFlexibleBoxProp contained "\<\(align\|justify\)\(-\(items\|self\|content\)\)\=\>"
syn keyword cssFlexibleBoxProp contained order
syn match cssFlexibleBoxAttr contained "\<\(row\|column\|wrap\)\(-reverse\)\=\>"
syn keyword cssFlexibleBoxAttr contained nowrap stretch baseline center
syn match cssFlexibleBoxAttr contained "\<flex\(-\(start\|end\)\)\=\>"
syn match cssFlexibleBoxAttr contained "\<space\(-\(between\|around\)\)\=\>"
" shadow and sizing are in other property groups
syn match cssFlexibleBoxProp contained "\<box-\(align\|direction\|flex\|ordinal-group\|orient\|pack\|shadow\|sizing\)\>"
syn keyword cssFlexibleBoxAttr contained start end baseline
syn keyword cssFlexibleBoxAttr contained reverse
syn keyword cssFlexibleBoxAttr contained single multiple
syn keyword cssFlexibleBoxAttr contained horizontal
syn match cssFlexibleBoxAttr contained "\<vertical\(-align\)\@!\>" "escape vertical-align
syn match cssFlexibleBoxAttr contained "\<\(inline\|block\)-axis\>"
" CSS Fonts Module Level 3
" http://www.w3.org/TR/css-fonts-3/
@@ -314,16 +314,12 @@ syn match cssMultiColumnProp contained "\<break-\(after\|before\|inside\)\>"
syn match cssMultiColumnProp contained "\<column-\(count\|fill\|gap\|rule\(-\(color\|style\|width\)\)\=\|span\|width\)\>"
syn keyword cssMultiColumnProp contained columns
syn keyword cssMultiColumnAttr contained balance medium
syn keyword cssMultiColumnAttr contained always left right page column
syn match cssMultiColumnAttr contained "\<avoid\(-\(page\|column\)\)\=\>"
syn keyword cssMultiColumnAttr contained always avoid left right page column
syn match cssMultiColumnAttr contained "\<avoid-\(page\|column\)\>"
" http://www.w3.org/TR/css3-break/#page-break
syn match cssMultiColumnProp contained "\<page\(-break-\(before\|after\|inside\)\)\=\>"
" http://www.w3.org/TR/SVG11/interact.html
syn match cssInteractProp contained "\<pointer-events\>"
syn match cssInteractAttr contained "\<\(visible\)\=\(Painted\|Fill\|Stroke\)\=\>"
" TODO find following items in w3c docs.
syn keyword cssGeneratedContentProp contained quotes crop
syn match cssGeneratedContentProp contained "\<counter-\(reset\|increment\)\>"
@@ -352,7 +348,7 @@ syn match cssPositioningAttr contained "\<list-item\>"
syn match cssPositioningAttr contained "\<inline\(-\(block\|box\|table\)\)\=\>"
syn keyword cssPositioningAttr contained static relative absolute fixed
syn keyword cssPrintAttr contained landscape portrait crop cross always
syn keyword cssPrintAttr contained landscape portrait crop cross always avoid
syn match cssTableProp contained "\<\(caption-side\|table-layout\|border-collapse\|border-spacing\|empty-cells\)\>"
syn keyword cssTableAttr contained fixed collapse separate show hide once always
@@ -425,10 +421,6 @@ syn keyword cssUIAttr contained both horizontal vertical
syn match cssUIProp contained "\<text-overflow\>"
syn keyword cssUIAttr contained clip ellipsis
syn match cssUIProp contained "\<image-rendering\>"
syn keyword cssUIAttr contained pixellated
syn match cssUIAttr contained "\<crisp-edges\>"
" Already highlighted Props: font content
"------------------------------------------------
" Webkit/iOS specific attributes
@@ -468,7 +460,7 @@ syn match cssMobileTextProp contained "\<text-size-adjust\>"
syn match cssBraces contained "[{}]"
syn match cssError contained "{@<>"
syn region cssDefinition transparent matchgroup=cssBraces start='{' end='}' contains=cssAttrRegion,css.*Prop,cssComment,cssValue,cssColor,cssURL,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape,cssVendor,cssDefinition,cssHacks,cssNoise fold
syn region cssDefinition transparent matchgroup=cssBraces start='{' end='}' contains=cssAttrRegion,css.*Prop,cssComment,cssValue.*,cssColor,cssURL,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape,cssVendor,cssDefinition,cssHacks,cssNoise fold
syn match cssBraceError "}"
syn match cssAttrComma ","
@@ -487,7 +479,7 @@ syn match cssPseudoClassId contained "\<focus\(-inner\)\=\>"
syn match cssPseudoClassId contained "\<\(input-\)\=placeholder\>"
" Misc highlight groups
syntax match cssUnitDecorators /\(#\|-\|+\|%\|mm\|cm\|in\|pt\|pc\|em\|ex\|px\|ch\|rem\|vh\|vw\|vmin\|vmax\|dpi\|dppx\|dpcm\|Hz\|kHz\|s\|ms\|deg\|grad\|rad\)/ contained
syntax match cssUnitDecorators /\(#\|-\|%\|mm\|cm\|in\|pt\|pc\|em\|ex\|px\|ch\|rem\|vh\|vw\|vmin\|vmax\|dpi\|dppx\|dpcm\|Hz\|kHz\|s\|ms\|deg\|grad\|rad\)/ contained
syntax match cssNoise contained /\(:\|;\|\/\)/
" Comment
@@ -512,11 +504,11 @@ syn match cssHacks contained /\(_\|*\)/
" Attr Enhance
" Some keywords are both Prop and Attr, so we have to handle them
syn region cssAttrRegion start=/:/ end=/\ze\(;\|)\|}\)/ contained contains=css.*Attr,cssColor,cssImportant,cssValue,cssFunction,cssString.*,cssURL,cssComment,cssUnicodeEscape,cssVendor,cssError,cssAttrComma,cssNoise
syn region cssAttrRegion start=/:/ end=/\ze\(;\|)\|}\)/ contained contains=css.*Attr,cssColor,cssImportant,cssValue.*,cssFunction,cssString.*,cssURL,cssComment,cssUnicodeEscape,cssVendor,cssError,cssAttrComma,cssNoise
" Hack for transition
" 'transition' has Props after ':'.
syn region cssAttrRegion start=/transition\s*:/ end=/\ze\(;\|)\|}\)/ contained contains=css.*Prop,css.*Attr,cssColor,cssImportant,cssValue,cssFunction,cssString.*,cssURL,cssComment,cssUnicodeEscape,cssVendor,cssError,cssAttrComma,cssNoise
syn region cssAttrRegion start=/transition\s*:/ end=/\ze\(;\|)\|}\)/ contained contains=css.*Prop,css.*Attr,cssColor,cssImportant,cssValue.*,cssFunction,cssString.*,cssURL,cssComment,cssUnicodeEscape,cssVendor,cssError,cssAttrComma,cssNoise
if main_syntax == "css"
@@ -524,136 +516,129 @@ if main_syntax == "css"
endif
" Define the default highlighting.
" For version 5.7 and earlier: only when not done already
" For version 5.8 and later: only when an item doesn't have highlighting yet
if version >= 508 || !exists("did_css_syn_inits")
if version < 508
let did_css_syn_inits = 1
command -nargs=+ HiLink hi link <args>
else
command -nargs=+ HiLink hi def link <args>
endif
" Only when an item doesn't have highlighting yet
HiLink cssComment Comment
HiLink cssVendor Comment
HiLink cssHacks Comment
HiLink cssTagName Statement
HiLink cssDeprecated Error
HiLink cssSelectorOp Special
HiLink cssSelectorOp2 Special
HiLink cssAttrComma Special
hi def link cssComment Comment
hi def link cssVendor Comment
hi def link cssHacks Comment
hi def link cssTagName Statement
hi def link cssDeprecated Error
hi def link cssSelectorOp Special
hi def link cssSelectorOp2 Special
hi def link cssAttrComma Special
HiLink cssAnimationProp cssProp
HiLink cssAuralProp cssProp
HiLink cssBackgroundProp cssProp
HiLink cssBorderProp cssProp
HiLink cssBoxProp cssProp
HiLink cssColorProp cssProp
HiLink cssContentForPagedMediaProp cssProp
HiLink cssDimensionProp cssProp
HiLink cssFlexibleBoxProp cssProp
HiLink cssFontProp cssProp
HiLink cssGeneratedContentProp cssProp
HiLink cssGridProp cssProp
HiLink cssHyerlinkProp cssProp
HiLink cssIEUIProp cssProp
HiLink cssInteractProp cssProp
HiLink cssLineboxProp cssProp
HiLink cssListProp cssProp
HiLink cssMarqueeProp cssProp
HiLink cssMobileTextProp cssProp
HiLink cssMultiColumnProp cssProp
HiLink cssPagedMediaProp cssProp
HiLink cssPositioningProp cssProp
HiLink cssPrintProp cssProp
HiLink cssRenderProp cssProp
HiLink cssRubyProp cssProp
HiLink cssSpeechProp cssProp
HiLink cssTableProp cssProp
HiLink cssTextProp cssProp
HiLink cssTransformProp cssProp
HiLink cssTransitionProp cssProp
HiLink cssUIProp cssProp
hi def link cssAnimationProp cssProp
hi def link cssBackgroundProp cssProp
hi def link cssBorderProp cssProp
hi def link cssBoxProp cssProp
hi def link cssColorProp cssProp
hi def link cssContentForPagedMediaProp cssProp
hi def link cssDimensionProp cssProp
hi def link cssFlexibleBoxProp cssProp
hi def link cssFontProp cssProp
hi def link cssGeneratedContentProp cssProp
hi def link cssGridProp cssProp
hi def link cssHyerlinkProp cssProp
hi def link cssLineboxProp cssProp
hi def link cssListProp cssProp
hi def link cssMarqueeProp cssProp
hi def link cssMultiColumnProp cssProp
hi def link cssPagedMediaProp cssProp
hi def link cssPositioningProp cssProp
hi def link cssPrintProp cssProp
hi def link cssRubyProp cssProp
hi def link cssSpeechProp cssProp
hi def link cssTableProp cssProp
hi def link cssTextProp cssProp
hi def link cssTransformProp cssProp
hi def link cssTransitionProp cssProp
hi def link cssUIProp cssProp
hi def link cssIEUIProp cssProp
hi def link cssAuralProp cssProp
hi def link cssRenderProp cssProp
hi def link cssMobileTextProp cssProp
HiLink cssAnimationAttr cssAttr
HiLink cssAuralAttr cssAttr
HiLink cssBackgroundAttr cssAttr
HiLink cssBorderAttr cssAttr
HiLink cssBoxAttr cssAttr
HiLink cssContentForPagedMediaAttr cssAttr
HiLink cssCommonAttr cssAttr
HiLink cssDimensionAttr cssAttr
HiLink cssFlexibleBoxAttr cssAttr
HiLink cssFontAttr cssAttr
HiLink cssGeneratedContentAttr cssAttr
HiLink cssGridAttr cssAttr
HiLink cssHyerlinkAttr cssAttr
HiLink cssIEUIAttr cssAttr
HiLink cssInteractAttr cssAttr
HiLink cssLineboxAttr cssAttr
HiLink cssListAttr cssAttr
HiLink cssMarginAttr cssAttr
HiLink cssMarqueeAttr cssAttr
HiLink cssMultiColumnAttr cssAttr
HiLink cssPaddingAttr cssAttr
HiLink cssPagedMediaAttr cssAttr
HiLink cssPositioningAttr cssAttr
HiLink cssGradientAttr cssAttr
HiLink cssPrintAttr cssAttr
HiLink cssRenderAttr cssAttr
HiLink cssRubyAttr cssAttr
HiLink cssSpeechAttr cssAttr
HiLink cssTableAttr cssAttr
HiLink cssTextAttr cssAttr
HiLink cssTransformAttr cssAttr
HiLink cssTransitionAttr cssAttr
HiLink cssUIAttr cssAttr
hi def link cssAnimationAttr cssAttr
hi def link cssBackgroundAttr cssAttr
hi def link cssBorderAttr cssAttr
hi def link cssBoxAttr cssAttr
hi def link cssContentForPagedMediaAttr cssAttr
hi def link cssDimensionAttr cssAttr
hi def link cssFlexibleBoxAttr cssAttr
hi def link cssFontAttr cssAttr
hi def link cssGeneratedContentAttr cssAttr
hi def link cssGridAttr cssAttr
hi def link cssHyerlinkAttr cssAttr
hi def link cssLineboxAttr cssAttr
hi def link cssListAttr cssAttr
hi def link cssMarginAttr cssAttr
hi def link cssMarqueeAttr cssAttr
hi def link cssMultiColumnAttr cssAttr
hi def link cssPaddingAttr cssAttr
hi def link cssPagedMediaAttr cssAttr
hi def link cssPositioningAttr cssAttr
hi def link cssGradientAttr cssAttr
hi def link cssPrintAttr cssAttr
hi def link cssRubyAttr cssAttr
hi def link cssSpeechAttr cssAttr
hi def link cssTableAttr cssAttr
hi def link cssTextAttr cssAttr
hi def link cssTransformAttr cssAttr
hi def link cssTransitionAttr cssAttr
hi def link cssUIAttr cssAttr
hi def link cssIEUIAttr cssAttr
hi def link cssAuralAttr cssAttr
hi def link cssRenderAttr cssAttr
hi def link cssCommonAttr cssAttr
HiLink cssPseudoClassId PreProc
HiLink cssPseudoClassLang Constant
HiLink cssValueNumber Number
HiLink cssFunction Constant
HiLink cssURL String
HiLink cssFunctionName Function
HiLink cssFunctionComma Function
HiLink cssColor Constant
HiLink cssIdentifier Function
HiLink cssInclude Include
HiLink cssIncludeKeyword atKeyword
HiLink cssImportant Special
HiLink cssBraces Function
HiLink cssBraceError Error
HiLink cssError Error
HiLink cssUnicodeEscape Special
HiLink cssStringQQ String
HiLink cssStringQ String
HiLink cssAttributeSelector String
HiLink cssMedia atKeyword
HiLink cssMediaType Special
HiLink cssMediaComma Normal
HiLink cssMediaKeyword Statement
HiLink cssMediaProp cssProp
HiLink cssMediaAttr cssAttr
HiLink cssPage atKeyword
HiLink cssPagePseudo PreProc
HiLink cssPageMargin atKeyword
HiLink cssPageProp cssProp
HiLink cssKeyFrame atKeyword
HiLink cssKeyFrameSelector Constant
HiLink cssFontDescriptor Special
HiLink cssFontDescriptorFunction Constant
HiLink cssFontDescriptorProp cssProp
HiLink cssFontDescriptorAttr cssAttr
HiLink cssUnicodeRange Constant
HiLink cssClassName Function
HiLink cssClassNameDot Function
HiLink cssProp StorageClass
HiLink cssAttr Constant
HiLink cssUnitDecorators Number
HiLink cssNoise Noise
HiLink atKeyword PreProc
delcommand HiLink
endif
hi def link cssPseudoClassId PreProc
hi def link cssPseudoClassLang Constant
hi def link cssValueLength Number
hi def link cssValueInteger Number
hi def link cssValueNumber Number
hi def link cssValueAngle Number
hi def link cssValueTime Number
hi def link cssValueFrequency Number
hi def link cssFunction Constant
hi def link cssURL String
hi def link cssFunctionName Function
hi def link cssFunctionComma Function
hi def link cssColor Constant
hi def link cssIdentifier Function
hi def link cssInclude Include
hi def link cssIncludeKeyword atKeyword
hi def link cssImportant Special
hi def link cssBraces Function
hi def link cssBraceError Error
hi def link cssError Error
hi def link cssUnicodeEscape Special
hi def link cssStringQQ String
hi def link cssStringQ String
hi def link cssAttributeSelector String
hi def link cssMedia atKeyword
hi def link cssMediaType Special
hi def link cssMediaComma Normal
hi def link cssMediaKeyword Statement
hi def link cssMediaProp cssProp
hi def link cssMediaAttr cssAttr
hi def link cssPage atKeyword
hi def link cssPagePseudo PreProc
hi def link cssPageMargin atKeyword
hi def link cssPageProp cssProp
hi def link cssKeyFrame atKeyword
hi def link cssKeyFrameSelector Constant
hi def link cssFontDescriptor Special
hi def link cssFontDescriptorFunction Constant
hi def link cssFontDescriptorProp cssProp
hi def link cssFontDescriptorAttr cssAttr
hi def link cssUnicodeRange Constant
hi def link cssClassName Function
hi def link cssClassNameDot Function
hi def link cssProp StorageClass
hi def link cssAttr Constant
hi def link cssUnitDecorators Number
hi def link cssNoise Noise
hi def link atKeyword PreProc
let b:current_syntax = "css"

181
syntax/cterm.vim Normal file
View File

@@ -0,0 +1,181 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Century Term Command Script
" Maintainer: Sean M. McKee <mckee@misslink.net>
" Last Change: 2002 Apr 13
" Version Info: @(#)cterm.vim 1.7 97/12/15 09:23:14
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case ignore
"FUNCTIONS
syn keyword ctermFunction abort addcr addlf answer at attr batch baud
syn keyword ctermFunction break call capture cd cdelay charset cls color
syn keyword ctermFunction combase config commect copy cread
syn keyword ctermFunction creadint devprefix dialer dialog dimint
syn keyword ctermFunction dimlog dimstr display dtimeout dwait edit
syn keyword ctermFunction editor emulate erase escloop fcreate
syn keyword ctermFunction fflush fillchar flags flush fopen fread
syn keyword ctermFunction freadln fseek fwrite fwriteln get hangup
syn keyword ctermFunction help hiwait htime ignore init itime
syn keyword ctermFunction keyboard lchar ldelay learn lockfile
syn keyword ctermFunction locktime log login logout lowait
syn keyword ctermFunction lsend ltime memlist menu mkdir mode
syn keyword ctermFunction modem netdialog netport noerror pages parity
syn keyword ctermFunction pause portlist printer protocol quit rcv
syn keyword ctermFunction read readint readn redial release
syn keyword ctermFunction remote rename restart retries return
syn keyword ctermFunction rmdir rtime run runx scrollback send
syn keyword ctermFunction session set setcap setcolor setkey
syn keyword ctermFunction setsym setvar startserver status
syn keyword ctermFunction stime stopbits stopserver tdelay
syn keyword ctermFunction terminal time trans type usend version
syn keyword ctermFunction vi vidblink vidcard vidout vidunder wait
syn keyword ctermFunction wildsize wclose wopen wordlen wru wruchar
syn keyword ctermFunction xfer xmit xprot
syn match ctermFunction "?"
"syn keyword ctermFunction comment remark
"END FUNCTIONS
"INTEGER FUNCTIONS
syn keyword ctermIntFunction asc atod eval filedate filemode filesize ftell
syn keyword ctermIntFunction len termbits opsys pos sum time val mdmstat
"END INTEGER FUNCTIONS
"STRING FUNCTIONS
syn keyword ctermStrFunction cdate ctime chr chrdy chrin comin getenv
syn keyword ctermStrFunction gethomedir left midstr right str tolower
syn keyword ctermStrFunction toupper uniq comst exists feof hascolor
"END STRING FUNCTIONS
"PREDEFINED TERM VARIABLES R/W
syn keyword ctermPreVarRW f _escloop _filename _kermiteol _obufsiz
syn keyword ctermPreVarRW _port _rcvsync _cbaud _reval _turnchar
syn keyword ctermPreVarRW _txblksiz _txwindow _vmin _vtime _cparity
syn keyword ctermPreVarRW _cnumber false t true _cwordlen _cstopbits
syn keyword ctermPreVarRW _cmode _cemulate _cxprot _clogin _clogout
syn keyword ctermPreVarRW _cstartsrv _cstopsrv _ccmdfile _cwru
syn keyword ctermPreVarRW _cprotocol _captfile _cremark _combufsiz
syn keyword ctermPreVarRW logfile
"END PREDEFINED TERM VARIABLES R/W
"PREDEFINED TERM VARIABLES R/O
syn keyword ctermPreVarRO _1 _2 _3 _4 _5 _6 _7 _8 _9 _cursess
syn keyword ctermPreVarRO _lockfile _baud _errno _retval _sernum
syn keyword ctermPreVarRO _timeout _row _col _version
"END PREDEFINED TERM VARIABLES R/O
syn keyword ctermOperator not mod eq ne gt le lt ge xor and or shr not shl
"SYMBOLS
syn match CtermSymbols "|"
"syn keyword ctermOperators + - * / % = != > < >= <= & | ^ ! << >>
"END SYMBOLS
"STATEMENT
syn keyword ctermStatement off
syn keyword ctermStatement disk overwrite append spool none
syn keyword ctermStatement echo view wrap
"END STATEMENT
"TYPE
"syn keyword ctermType
"END TYPE
"USERLIB FUNCTIONS
"syn keyword ctermLibFunc
"END USERLIB FUNCTIONS
"LABEL
syn keyword ctermLabel case default
"END LABEL
"CONDITIONAL
syn keyword ctermConditional on endon
syn keyword ctermConditional proc endproc
syn keyword ctermConditional for in do endfor
syn keyword ctermConditional if else elseif endif iferror
syn keyword ctermConditional switch endswitch
syn keyword ctermConditional repeat until
"END CONDITIONAL
"REPEAT
syn keyword ctermRepeat while
"END REPEAT
" Function arguments (eg $1 $2 $3)
syn match ctermFuncArg "\$[1-9]"
syn keyword ctermTodo contained TODO
syn match ctermNumber "\<\d\+\(u\=l\=\|lu\|f\)\>"
"floating point number, with dot, optional exponent
syn match ctermNumber "\<\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\=\>"
"floating point number, starting with a dot, optional exponent
syn match ctermNumber "\.\d\+\(e[-+]\=\d\+\)\=[fl]\=\>"
"floating point number, without dot, with exponent
syn match ctermNumber "\<\d\+e[-+]\=\d\+[fl]\=\>"
"hex number
syn match ctermNumber "0x[0-9a-f]\+\(u\=l\=\|lu\)\>"
syn match ctermComment "![^=].*$" contains=ctermTodo
syn match ctermComment "!$"
syn match ctermComment "\*.*$" contains=ctermTodo
syn region ctermComment start="comment" end="$" contains=ctermTodo
syn region ctermComment start="remark" end="$" contains=ctermTodo
syn region ctermVar start="\$(" end=")"
" String and Character contstants
" Highlight special characters (those which have a backslash) differently
syn match ctermSpecial contained "\\\d\d\d\|\\."
syn match ctermSpecial contained "\^."
syn region ctermString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=ctermSpecial,ctermVar,ctermSymbols
syn match ctermCharacter "'[^\\]'"
syn match ctermSpecialCharacter "'\\.'"
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link ctermStatement Statement
hi def link ctermFunction Statement
hi def link ctermStrFunction Statement
hi def link ctermIntFunction Statement
hi def link ctermLabel Statement
hi def link ctermConditional Statement
hi def link ctermRepeat Statement
hi def link ctermLibFunc UserDefFunc
hi def link ctermType Type
hi def link ctermFuncArg PreCondit
hi def link ctermPreVarRO PreCondit
hi def link ctermPreVarRW PreConditBold
hi def link ctermVar Type
hi def link ctermComment Comment
hi def link ctermCharacter SpecialChar
hi def link ctermSpecial Special
hi def link ctermSpecialCharacter SpecialChar
hi def link ctermSymbols Special
hi def link ctermString String
hi def link ctermTodo Todo
hi def link ctermOperator Statement
hi def link ctermNumber Number
" redefine the colors
"hi PreConditBold term=bold ctermfg=1 cterm=bold guifg=Purple gui=bold
"hi Special term=bold ctermfg=6 guifg=SlateBlue gui=underline
let b:current_syntax = "cterm"
" vim: ts=8
endif

27
syntax/ctrlh.vim Normal file
View File

@@ -0,0 +1,27 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: CTRL-H (e.g., ASCII manpages)
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2005 Jun 20
" Existing syntax is kept, this file can be used as an addition
" Recognize underlined text: _^Hx
syntax match CtrlHUnderline /_\b./ contains=CtrlHHide
" Recognize bold text: x^Hx
syntax match CtrlHBold /\(.\)\b\1/ contains=CtrlHHide
" Hide the CTRL-H (backspace)
syntax match CtrlHHide /.\b/ contained
" Define the default highlighting.
" Only used when an item doesn't have highlighting yet
hi def link CtrlHHide Ignore
hi def CtrlHUnderline term=underline cterm=underline gui=underline
hi def CtrlHBold term=bold cterm=bold gui=bold
" vim: ts=8
endif

View File

@@ -1,3 +1,149 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: Cucumber
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
" Filenames: *.feature
" Last Change: 2013 May 30
if exists("b:current_syntax")
finish
endif
let s:keepcpo= &cpo
set cpo&vim
syn case match
syn sync minlines=20
let g:cucumber_languages = {
\"en": {"and": "And\\>", "background": "Background\\>", "but": "But\\>", "examples": "Scenarios\\>\\|Examples\\>", "feature": "Business Need\\>\\|Feature\\>\\|Ability\\>", "given": "Given\\>", "scenario": "Scenario\\>", "scenario_outline": "Scenario Template\\>\\|Scenario Outline\\>", "then": "Then\\>", "when": "When\\>"},
\"ar": {"and": "\\%u0648\\>", "background": "\\%u0627\\%u0644\\%u062e\\%u0644\\%u0641\\%u064a\\%u0629\\>", "but": "\\%u0644\\%u0643\\%u0646\\>", "examples": "\\%u0627\\%u0645\\%u062b\\%u0644\\%u0629\\>", "feature": "\\%u062e\\%u0627\\%u0635\\%u064a\\%u0629\\>", "given": "\\%u0628\\%u0641\\%u0631\\%u0636\\>", "scenario": "\\%u0633\\%u064a\\%u0646\\%u0627\\%u0631\\%u064a\\%u0648\\>", "scenario_outline": "\\%u0633\\%u064a\\%u0646\\%u0627\\%u0631\\%u064a\\%u0648 \\%u0645\\%u062e\\%u0637\\%u0637\\>", "then": "\\%u0627\\%u0630\\%u0627\\%u064b\\>\\|\\%u062b\\%u0645\\>", "when": "\\%u0639\\%u0646\\%u062f\\%u0645\\%u0627\\>\\|\\%u0645\\%u062a\\%u0649\\>"},
\"bg": {"and": "\\%u0418\\>", "background": "\\%u041f\\%u0440\\%u0435\\%u0434\\%u0438\\%u0441\\%u0442\\%u043e\\%u0440\\%u0438\\%u044f\\>", "but": "\\%u041d\\%u043e\\>", "examples": "\\%u041f\\%u0440\\%u0438\\%u043c\\%u0435\\%u0440\\%u0438\\>", "feature": "\\%u0424\\%u0443\\%u043d\\%u043a\\%u0446\\%u0438\\%u043e\\%u043d\\%u0430\\%u043b\\%u043d\\%u043e\\%u0441\\%u0442\\>", "given": "\\%u0414\\%u0430\\%u0434\\%u0435\\%u043d\\%u043e\\>", "scenario": "\\%u0421\\%u0446\\%u0435\\%u043d\\%u0430\\%u0440\\%u0438\\%u0439\\>", "scenario_outline": "\\%u0420\\%u0430\\%u043c\\%u043a\\%u0430 \\%u043d\\%u0430 \\%u0441\\%u0446\\%u0435\\%u043d\\%u0430\\%u0440\\%u0438\\%u0439\\>", "then": "\\%u0422\\%u043e\\>", "when": "\\%u041a\\%u043e\\%u0433\\%u0430\\%u0442\\%u043e\\>"},
\"bm": {"and": "Dan\\>", "background": "Latar Belakang\\>", "but": "Tetapi\\>", "examples": "Contoh \\>", "feature": "Fungsi\\>", "given": "Bagi\\>", "scenario": "Senario\\>", "scenario_outline": "Menggariskan Senario \\>", "then": "Kemudian\\>", "when": "Apabila\\>"},
\"ca": {"and": "I\\>", "background": "Antecedents\\>\\|Rerefons\\>", "but": "Per\\%u00f2\\>", "examples": "Exemples\\>", "feature": "Caracter\\%u00edstica\\>\\|Funcionalitat\\>", "given": "At\\%u00e8s\\>\\|Donada\\>\\|Donat\\>\\|Atesa\\>", "scenario": "Escenari\\>", "scenario_outline": "Esquema de l'escenari\\>", "then": "Aleshores\\>\\|Cal\\>", "when": "Quan\\>"},
\"cs": {"and": "A tak\\%u00e9\\>\\|A\\>", "background": "Pozad\\%u00ed\\>\\|Kontext\\>", "but": "Ale\\>", "examples": "P\\%u0159\\%u00edklady\\>", "feature": "Po\\%u017eadavek\\>", "given": "Za p\\%u0159edpokladu\\>\\|Pokud\\>", "scenario": "Sc\\%u00e9n\\%u00e1\\%u0159\\>", "scenario_outline": "N\\%u00e1\\%u010drt Sc\\%u00e9n\\%u00e1\\%u0159e\\>\\|Osnova sc\\%u00e9n\\%u00e1\\%u0159e\\>", "then": "Pak\\>", "when": "Kdy\\%u017e\\>"},
\"cy-GB": {"and": "A\\>", "background": "Cefndir\\>", "but": "Ond\\>", "examples": "Enghreifftiau\\>", "feature": "Arwedd\\>", "given": "Anrhegedig a\\>", "scenario": "Scenario\\>", "scenario_outline": "Scenario Amlinellol\\>", "then": "Yna\\>", "when": "Pryd\\>"},
\"da": {"and": "Og\\>", "background": "Baggrund\\>", "but": "Men\\>", "examples": "Eksempler\\>", "feature": "Egenskab\\>", "given": "Givet\\>", "scenario": "Scenarie\\>", "scenario_outline": "Abstrakt Scenario\\>", "then": "S\\%u00e5\\>", "when": "N\\%u00e5r\\>"},
\"de": {"and": "Und\\>", "background": "Grundlage\\>", "but": "Aber\\>", "examples": "Beispiele\\>", "feature": "Funktionalit\\%u00e4t\\>", "given": "Gegeben sei\\>\\|Angenommen\\>", "scenario": "Szenario\\>", "scenario_outline": "Szenariogrundriss\\>", "then": "Dann\\>", "when": "Wenn\\>"},
\"el": {"and": "\\%u039a\\%u03b1\\%u03b9\\>", "background": "\\%u03a5\\%u03c0\\%u03cc\\%u03b2\\%u03b1\\%u03b8\\%u03c1\\%u03bf\\>", "but": "\\%u0391\\%u03bb\\%u03bb\\%u03ac\\>", "examples": "\\%u03a0\\%u03b1\\%u03c1\\%u03b1\\%u03b4\\%u03b5\\%u03af\\%u03b3\\%u03bc\\%u03b1\\%u03c4\\%u03b1\\>\\|\\%u03a3\\%u03b5\\%u03bd\\%u03ac\\%u03c1\\%u03b9\\%u03b1\\>", "feature": "\\%u0394\\%u03c5\\%u03bd\\%u03b1\\%u03c4\\%u03cc\\%u03c4\\%u03b7\\%u03c4\\%u03b1\\>\\|\\%u039b\\%u03b5\\%u03b9\\%u03c4\\%u03bf\\%u03c5\\%u03c1\\%u03b3\\%u03af\\%u03b1\\>", "given": "\\%u0394\\%u03b5\\%u03b4\\%u03bf\\%u03bc\\%u03ad\\%u03bd\\%u03bf\\%u03c5 \\%u03cc\\%u03c4\\%u03b9\\>\\|\\%u0394\\%u03b5\\%u03b4\\%u03bf\\%u03bc\\%u03ad\\%u03bd\\%u03bf\\%u03c5\\>", "scenario": "\\%u03a3\\%u03b5\\%u03bd\\%u03ac\\%u03c1\\%u03b9\\%u03bf\\>", "scenario_outline": "\\%u03a0\\%u03b5\\%u03c1\\%u03b9\\%u03b3\\%u03c1\\%u03b1\\%u03c6\\%u03ae \\%u03a3\\%u03b5\\%u03bd\\%u03b1\\%u03c1\\%u03af\\%u03bf\\%u03c5\\>", "then": "\\%u03a4\\%u03cc\\%u03c4\\%u03b5\\>", "when": "\\%u038c\\%u03c4\\%u03b1\\%u03bd\\>"},
\"en-Scouse": {"and": "An\\>", "background": "Dis is what went down\\>", "but": "Buh\\>", "examples": "Examples\\>", "feature": "Feature\\>", "given": "Youse know when youse got\\>\\|Givun\\>", "scenario": "The thing of it is\\>", "scenario_outline": "Wharrimean is\\>", "then": "Den youse gotta\\>\\|Dun\\>", "when": "Youse know like when\\>\\|Wun\\>"},
\"en-au": {"and": "Too right\\>", "background": "First off\\>", "but": "Yeah nah\\>", "examples": "You'll wanna\\>", "feature": "Pretty much\\>", "given": "Y'know\\>", "scenario": "Awww, look mate\\>", "scenario_outline": "Reckon it's like\\>", "then": "But at the end of the day I reckon\\>", "when": "It's just unbelievable\\>"},
\"en-lol": {"and": "AN\\>", "background": "B4\\>", "but": "BUT\\>", "examples": "EXAMPLZ\\>", "feature": "OH HAI\\>", "given": "I CAN HAZ\\>", "scenario": "MISHUN\\>", "scenario_outline": "MISHUN SRSLY\\>", "then": "DEN\\>", "when": "WEN\\>"},
\"en-old": {"and": "Ond\\>\\|7\\>", "background": "\\%u00c6r\\>\\|Aer\\>", "but": "Ac\\>", "examples": "Se \\%u00f0e\\>\\|Se \\%u00fee\\>\\|Se the\\>", "feature": "Hw\\%u00e6t\\>\\|Hwaet\\>", "given": "\\%u00d0urh\\>\\|\\%u00deurh\\>\\|Thurh\\>", "scenario": "Swa\\>", "scenario_outline": "Swa hw\\%u00e6r swa\\>\\|Swa hwaer swa\\>", "then": "\\%u00d0a \\%u00f0e\\>\\|\\%u00dea \\%u00fee\\>\\|\\%u00dea\\>\\|\\%u00d0a\\>\\|Tha the\\>\\|Tha\\>", "when": "\\%u00d0a\\>\\|\\%u00dea\\>\\|Tha\\>"},
\"en-pirate": {"and": "Aye\\>", "background": "Yo-ho-ho\\>", "but": "Avast!\\>", "examples": "Dead men tell no tales\\>", "feature": "Ahoy matey!\\>", "given": "Gangway!\\>", "scenario": "Heave to\\>", "scenario_outline": "Shiver me timbers\\>", "then": "Let go and haul\\>", "when": "Blimey!\\>"},
\"en-tx": {"and": "And y'all\\>", "background": "Background\\>", "but": "But y'all\\>", "examples": "Examples\\>", "feature": "Feature\\>", "given": "Given y'all\\>", "scenario": "Scenario\\>", "scenario_outline": "All y'all\\>", "then": "Then y'all\\>", "when": "When y'all\\>"},
\"eo": {"and": "Kaj\\>", "background": "Fono\\>", "but": "Sed\\>", "examples": "Ekzemploj\\>", "feature": "Trajto\\>", "given": "Donita\\%u0135o\\>", "scenario": "Scenaro\\>", "scenario_outline": "Konturo de la scenaro\\>", "then": "Do\\>", "when": "Se\\>"},
\"es": {"and": "Y\\>", "background": "Antecedentes\\>", "but": "Pero\\>", "examples": "Ejemplos\\>", "feature": "Caracter\\%u00edstica\\>", "given": "Dadas\\>\\|Dados\\>\\|Dada\\>\\|Dado\\>", "scenario": "Escenario\\>", "scenario_outline": "Esquema del escenario\\>", "then": "Entonces\\>", "when": "Cuando\\>"},
\"et": {"and": "Ja\\>", "background": "Taust\\>", "but": "Kuid\\>", "examples": "Juhtumid\\>", "feature": "Omadus\\>", "given": "Eeldades\\>", "scenario": "Stsenaarium\\>", "scenario_outline": "Raamstsenaarium\\>", "then": "Siis\\>", "when": "Kui\\>"},
\"fa": {"and": "\\%u0648\\>", "background": "\\%u0632\\%u0645\\%u06cc\\%u0646\\%u0647\\>", "but": "\\%u0627\\%u0645\\%u0627\\>", "examples": "\\%u0646\\%u0645\\%u0648\\%u0646\\%u0647 \\%u0647\\%u0627\\>", "feature": "\\%u0648\\%u0650\\%u06cc\\%u0698\\%u06af\\%u06cc\\>", "given": "\\%u0628\\%u0627 \\%u0641\\%u0631\\%u0636\\>", "scenario": "\\%u0633\\%u0646\\%u0627\\%u0631\\%u06cc\\%u0648\\>", "scenario_outline": "\\%u0627\\%u0644\\%u06af\\%u0648\\%u06cc \\%u0633\\%u0646\\%u0627\\%u0631\\%u06cc\\%u0648\\>", "then": "\\%u0622\\%u0646\\%u06af\\%u0627\\%u0647\\>", "when": "\\%u0647\\%u0646\\%u06af\\%u0627\\%u0645\\%u06cc\\>"},
\"fi": {"and": "Ja\\>", "background": "Tausta\\>", "but": "Mutta\\>", "examples": "Tapaukset\\>", "feature": "Ominaisuus\\>", "given": "Oletetaan\\>", "scenario": "Tapaus\\>", "scenario_outline": "Tapausaihio\\>", "then": "Niin\\>", "when": "Kun\\>"},
\"fr": {"and": "Et\\>", "background": "Contexte\\>", "but": "Mais\\>", "examples": "Exemples\\>", "feature": "Fonctionnalit\\%u00e9\\>", "given": "\\%u00c9tant donn\\%u00e9es\\>\\|\\%u00c9tant donn\\%u00e9s\\>\\|\\%u00c9tant donn\\%u00e9e\\>\\|\\%u00c9tant donn\\%u00e9\\>\\|Etant donn\\%u00e9es\\>\\|Etant donn\\%u00e9s\\>\\|Etant donn\\%u00e9e\\>\\|Etant donn\\%u00e9\\>\\|Soit\\>", "scenario": "Sc\\%u00e9nario\\>", "scenario_outline": "Plan du sc\\%u00e9nario\\>\\|Plan du Sc\\%u00e9nario\\>", "then": "Alors\\>", "when": "Lorsqu'\\|Lorsque\\>\\|Quand\\>"},
\"gl": {"and": "E\\>", "background": "Contexto\\>", "but": "Mais\\>\\|Pero\\>", "examples": "Exemplos\\>", "feature": "Caracter\\%u00edstica\\>", "given": "Dadas\\>\\|Dados\\>\\|Dada\\>\\|Dado\\>", "scenario": "Escenario\\>", "scenario_outline": "Esbozo do escenario\\>", "then": "Ent\\%u00f3n\\>\\|Logo\\>", "when": "Cando\\>"},
\"he": {"and": "\\%u05d5\\%u05d2\\%u05dd\\>", "background": "\\%u05e8\\%u05e7\\%u05e2\\>", "but": "\\%u05d0\\%u05d1\\%u05dc\\>", "examples": "\\%u05d3\\%u05d5\\%u05d2\\%u05de\\%u05d0\\%u05d5\\%u05ea\\>", "feature": "\\%u05ea\\%u05db\\%u05d5\\%u05e0\\%u05d4\\>", "given": "\\%u05d1\\%u05d4\\%u05d9\\%u05e0\\%u05ea\\%u05df\\>", "scenario": "\\%u05ea\\%u05e8\\%u05d7\\%u05d9\\%u05e9\\>", "scenario_outline": "\\%u05ea\\%u05d1\\%u05e0\\%u05d9\\%u05ea \\%u05ea\\%u05e8\\%u05d7\\%u05d9\\%u05e9\\>", "then": "\\%u05d0\\%u05d6\\%u05d9\\>\\|\\%u05d0\\%u05d6\\>", "when": "\\%u05db\\%u05d0\\%u05e9\\%u05e8\\>"},
\"hi": {"and": "\\%u0924\\%u0925\\%u093e\\>\\|\\%u0914\\%u0930\\>", "background": "\\%u092a\\%u0943\\%u0937\\%u094d\\%u0920\\%u092d\\%u0942\\%u092e\\%u093f\\>", "but": "\\%u092a\\%u0930\\>", "examples": "\\%u0909\\%u0926\\%u093e\\%u0939\\%u0930\\%u0923\\>", "feature": "\\%u0930\\%u0942\\%u092a \\%u0932\\%u0947\\%u0916\\>", "given": "\\%u091a\\%u0942\\%u0902\\%u0915\\%u093f\\>\\|\\%u092f\\%u0926\\%u093f\\>\\|\\%u0905\\%u0917\\%u0930\\>", "scenario": "\\%u092a\\%u0930\\%u093f\\%u0926\\%u0943\\%u0936\\%u094d\\%u092f\\>", "scenario_outline": "\\%u092a\\%u0930\\%u093f\\%u0926\\%u0943\\%u0936\\%u094d\\%u092f \\%u0930\\%u0942\\%u092a\\%u0930\\%u0947\\%u0916\\%u093e\\>", "then": "\\%u0924\\%u092c\\>", "when": "\\%u091c\\%u092c\\>"},
\"hr": {"and": "I\\>", "background": "Pozadina\\>", "but": "Ali\\>", "examples": "Scenariji\\>\\|Primjeri\\>", "feature": "Mogu\\%u0107nost\\>\\|Mogucnost\\>\\|Osobina\\>", "given": "Zadano\\>\\|Zadani\\>\\|Zadan\\>", "scenario": "Scenarij\\>", "scenario_outline": "Koncept\\>\\|Skica\\>", "then": "Onda\\>", "when": "Kada\\>\\|Kad\\>"},
\"hu": {"and": "\\%u00c9s\\>", "background": "H\\%u00e1tt\\%u00e9r\\>", "but": "De\\>", "examples": "P\\%u00e9ld\\%u00e1k\\>", "feature": "Jellemz\\%u0151\\>", "given": "Amennyiben\\>\\|Adott\\>", "scenario": "Forgat\\%u00f3k\\%u00f6nyv\\>", "scenario_outline": "Forgat\\%u00f3k\\%u00f6nyv v\\%u00e1zlat\\>", "then": "Akkor\\>", "when": "Amikor\\>\\|Majd\\>\\|Ha\\>"},
\"id": {"and": "Dan\\>", "background": "Dasar\\>", "but": "Tapi\\>", "examples": "Contoh\\>", "feature": "Fitur\\>", "given": "Dengan\\>", "scenario": "Skenario\\>", "scenario_outline": "Skenario konsep\\>", "then": "Maka\\>", "when": "Ketika\\>"},
\"is": {"and": "Og\\>", "background": "Bakgrunnur\\>", "but": "En\\>", "examples": "Atbur\\%u00f0ar\\%u00e1sir\\>\\|D\\%u00e6mi\\>", "feature": "Eiginleiki\\>", "given": "Ef\\>", "scenario": "Atbur\\%u00f0ar\\%u00e1s\\>", "scenario_outline": "L\\%u00fdsing Atbur\\%u00f0ar\\%u00e1sar\\>\\|L\\%u00fdsing D\\%u00e6ma\\>", "then": "\\%u00de\\%u00e1\\>", "when": "\\%u00deegar\\>"},
\"it": {"and": "E\\>", "background": "Contesto\\>", "but": "Ma\\>", "examples": "Esempi\\>", "feature": "Funzionalit\\%u00e0\\>", "given": "Dato\\>\\|Data\\>\\|Dati\\>\\|Date\\>", "scenario": "Scenario\\>", "scenario_outline": "Schema dello scenario\\>", "then": "Allora\\>", "when": "Quando\\>"},
\"ja": {"and": "\\%u304b\\%u3064", "background": "\\%u80cc\\%u666f\\>", "but": "\\%u3057\\%u304b\\%u3057\\|\\%u305f\\%u3060\\%u3057\\|\\%u4f46\\%u3057", "examples": "\\%u30b5\\%u30f3\\%u30d7\\%u30eb\\>\\|\\%u4f8b\\>", "feature": "\\%u30d5\\%u30a3\\%u30fc\\%u30c1\\%u30e3\\>\\|\\%u6a5f\\%u80fd\\>", "given": "\\%u524d\\%u63d0", "scenario": "\\%u30b7\\%u30ca\\%u30ea\\%u30aa\\>", "scenario_outline": "\\%u30b7\\%u30ca\\%u30ea\\%u30aa\\%u30a2\\%u30a6\\%u30c8\\%u30e9\\%u30a4\\%u30f3\\>\\|\\%u30b7\\%u30ca\\%u30ea\\%u30aa\\%u30c6\\%u30f3\\%u30d7\\%u30ec\\%u30fc\\%u30c8\\>\\|\\%u30b7\\%u30ca\\%u30ea\\%u30aa\\%u30c6\\%u30f3\\%u30d7\\%u30ec\\>\\|\\%u30c6\\%u30f3\\%u30d7\\%u30ec\\>", "then": "\\%u306a\\%u3089\\%u3070", "when": "\\%u3082\\%u3057"},
\"ko": {"and": "\\%uadf8\\%ub9ac\\%uace0", "background": "\\%ubc30\\%uacbd\\>", "but": "\\%ud558\\%uc9c0\\%ub9cc\\|\\%ub2e8", "examples": "\\%uc608\\>", "feature": "\\%uae30\\%ub2a5\\>", "given": "\\%uc870\\%uac74\\|\\%uba3c\\%uc800", "scenario": "\\%uc2dc\\%ub098\\%ub9ac\\%uc624\\>", "scenario_outline": "\\%uc2dc\\%ub098\\%ub9ac\\%uc624 \\%uac1c\\%uc694\\>", "then": "\\%uadf8\\%ub7ec\\%uba74", "when": "\\%ub9cc\\%uc77c\\|\\%ub9cc\\%uc57d"},
\"lt": {"and": "Ir\\>", "background": "Kontekstas\\>", "but": "Bet\\>", "examples": "Pavyzd\\%u017eiai\\>\\|Scenarijai\\>\\|Variantai\\>", "feature": "Savyb\\%u0117\\>", "given": "Duota\\>", "scenario": "Scenarijus\\>", "scenario_outline": "Scenarijaus \\%u0161ablonas\\>", "then": "Tada\\>", "when": "Kai\\>"},
\"lu": {"and": "an\\>\\|a\\>", "background": "Hannergrond\\>", "but": "m\\%u00e4\\>\\|awer\\>", "examples": "Beispiller\\>", "feature": "Funktionalit\\%u00e9it\\>", "given": "ugeholl\\>", "scenario": "Szenario\\>", "scenario_outline": "Plang vum Szenario\\>", "then": "dann\\>", "when": "wann\\>"},
\"lv": {"and": "Un\\>", "background": "Situ\\%u0101cija\\>\\|Konteksts\\>", "but": "Bet\\>", "examples": "Piem\\%u0113ri\\>\\|Paraugs\\>", "feature": "Funkcionalit\\%u0101te\\>\\|F\\%u012b\\%u010da\\>", "given": "Kad\\>", "scenario": "Scen\\%u0101rijs\\>", "scenario_outline": "Scen\\%u0101rijs p\\%u0113c parauga\\>", "then": "Tad\\>", "when": "Ja\\>"},
\"nl": {"and": "En\\>", "background": "Achtergrond\\>", "but": "Maar\\>", "examples": "Voorbeelden\\>", "feature": "Functionaliteit\\>", "given": "Gegeven\\>\\|Stel\\>", "scenario": "Scenario\\>", "scenario_outline": "Abstract Scenario\\>", "then": "Dan\\>", "when": "Als\\>"},
\"no": {"and": "Og\\>", "background": "Bakgrunn\\>", "but": "Men\\>", "examples": "Eksempler\\>", "feature": "Egenskap\\>", "given": "Gitt\\>", "scenario": "Scenario\\>", "scenario_outline": "Abstrakt Scenario\\>\\|Scenariomal\\>", "then": "S\\%u00e5\\>", "when": "N\\%u00e5r\\>"},
\"pl": {"and": "Oraz\\>\\|I\\>", "background": "Za\\%u0142o\\%u017cenia\\>", "but": "Ale\\>", "examples": "Przyk\\%u0142ady\\>", "feature": "W\\%u0142a\\%u015bciwo\\%u015b\\%u0107\\>\\|Potrzeba biznesowa\\>\\|Funkcja\\>\\|Aspekt\\>", "given": "Zak\\%u0142adaj\\%u0105c\\>\\|Maj\\%u0105c\\>", "scenario": "Scenariusz\\>", "scenario_outline": "Szablon scenariusza\\>", "then": "Wtedy\\>", "when": "Je\\%u017celi\\>\\|Je\\%u015bli\\>\\|Kiedy\\>\\|Gdy\\>"},
\"pt": {"and": "E\\>", "background": "Cen\\%u00e1rio de Fundo\\>\\|Cenario de Fundo\\>\\|Contexto\\>\\|Fundo\\>", "but": "Mas\\>", "examples": "Cen\\%u00e1rios\\>\\|Exemplos\\>\\|Cenarios\\>", "feature": "Caracter\\%u00edstica\\>\\|Funcionalidade\\>\\|Caracteristica\\>", "given": "Dadas\\>\\|Dados\\>\\|Dada\\>\\|Dado\\>", "scenario": "Cen\\%u00e1rio\\>\\|Cenario\\>", "scenario_outline": "Delinea\\%u00e7\\%u00e3o do Cen\\%u00e1rio\\>\\|Esquema do Cen\\%u00e1rio\\>\\|Delineacao do Cenario\\>\\|Esquema do Cenario\\>", "then": "Ent\\%u00e3o\\>\\|Entao\\>", "when": "Quando\\>"},
\"ro": {"and": "\\%u015ei\\>\\|\\%u0218i\\>\\|Si\\>", "background": "Context\\>", "but": "Dar\\>", "examples": "Exemple\\>", "feature": "Func\\%u0163ionalitate\\>\\|Func\\%u021bionalitate\\>\\|Functionalitate\\>", "given": "Da\\%u0163i fiind\\>\\|Da\\%u021bi fiind\\>\\|Dati fiind\\>\\|Date fiind\\>\\|Dat fiind\\>", "scenario": "Scenariu\\>", "scenario_outline": "Structur\\%u0103 scenariu\\>\\|Structura scenariu\\>", "then": "Atunci\\>", "when": "C\\%u00e2nd\\>\\|Cand\\>"},
\"ru": {"and": "\\%u041a \\%u0442\\%u043e\\%u043c\\%u0443 \\%u0436\\%u0435\\>\\|\\%u0422\\%u0430\\%u043a\\%u0436\\%u0435\\>\\|\\%u0418\\>", "background": "\\%u041f\\%u0440\\%u0435\\%u0434\\%u044b\\%u0441\\%u0442\\%u043e\\%u0440\\%u0438\\%u044f\\>\\|\\%u041a\\%u043e\\%u043d\\%u0442\\%u0435\\%u043a\\%u0441\\%u0442\\>", "but": "\\%u041d\\%u043e\\>\\|\\%u0410\\>", "examples": "\\%u041f\\%u0440\\%u0438\\%u043c\\%u0435\\%u0440\\%u044b\\>", "feature": "\\%u0424\\%u0443\\%u043d\\%u043a\\%u0446\\%u0438\\%u043e\\%u043d\\%u0430\\%u043b\\>\\|\\%u0421\\%u0432\\%u043e\\%u0439\\%u0441\\%u0442\\%u0432\\%u043e\\>\\|\\%u0424\\%u0443\\%u043d\\%u043a\\%u0446\\%u0438\\%u044f\\>", "given": "\\%u0414\\%u043e\\%u043f\\%u0443\\%u0441\\%u0442\\%u0438\\%u043c\\>\\|\\%u041f\\%u0443\\%u0441\\%u0442\\%u044c\\>\\|\\%u0414\\%u0430\\%u043d\\%u043e\\>", "scenario": "\\%u0421\\%u0446\\%u0435\\%u043d\\%u0430\\%u0440\\%u0438\\%u0439\\>", "scenario_outline": "\\%u0421\\%u0442\\%u0440\\%u0443\\%u043a\\%u0442\\%u0443\\%u0440\\%u0430 \\%u0441\\%u0446\\%u0435\\%u043d\\%u0430\\%u0440\\%u0438\\%u044f\\>", "then": "\\%u0422\\%u043e\\%u0433\\%u0434\\%u0430\\>\\|\\%u0422\\%u043e\\>", "when": "\\%u041a\\%u043e\\%u0433\\%u0434\\%u0430\\>\\|\\%u0415\\%u0441\\%u043b\\%u0438\\>"},
\"sk": {"and": "A z\\%u00e1rove\\%u0148\\>\\|A taktie\\%u017e\\>\\|A tie\\%u017e\\>\\|A\\>", "background": "Pozadie\\>", "but": "Ale\\>", "examples": "Pr\\%u00edklady\\>", "feature": "Po\\%u017eiadavka\\>\\|Vlastnos\\%u0165\\>\\|Funkcia\\>", "given": "Za predpokladu\\>\\|Pokia\\%u013e\\>", "scenario": "Scen\\%u00e1r\\>", "scenario_outline": "N\\%u00e1\\%u010drt Scen\\%u00e1ru\\>\\|N\\%u00e1\\%u010drt Scen\\%u00e1ra\\>\\|Osnova Scen\\%u00e1ra\\>", "then": "Potom\\>\\|Tak\\>", "when": "Ke\\%u010f\\>\\|Ak\\>"},
\"sr-Cyrl": {"and": "\\%u0418\\>", "background": "\\%u041a\\%u043e\\%u043d\\%u0442\\%u0435\\%u043a\\%u0441\\%u0442\\>\\|\\%u041f\\%u043e\\%u0437\\%u0430\\%u0434\\%u0438\\%u043d\\%u0430\\>\\|\\%u041e\\%u0441\\%u043d\\%u043e\\%u0432\\%u0430\\>", "but": "\\%u0410\\%u043b\\%u0438\\>", "examples": "\\%u0421\\%u0446\\%u0435\\%u043d\\%u0430\\%u0440\\%u0438\\%u0458\\%u0438\\>\\|\\%u041f\\%u0440\\%u0438\\%u043c\\%u0435\\%u0440\\%u0438\\>", "feature": "\\%u0424\\%u0443\\%u043d\\%u043a\\%u0446\\%u0438\\%u043e\\%u043d\\%u0430\\%u043b\\%u043d\\%u043e\\%u0441\\%u0442\\>\\|\\%u041c\\%u043e\\%u0433\\%u0443\\%u045b\\%u043d\\%u043e\\%u0441\\%u0442\\>\\|\\%u041e\\%u0441\\%u043e\\%u0431\\%u0438\\%u043d\\%u0430\\>", "given": "\\%u0417\\%u0430\\%u0434\\%u0430\\%u0442\\%u043e\\>\\|\\%u0417\\%u0430\\%u0434\\%u0430\\%u0442\\%u0435\\>\\|\\%u0417\\%u0430\\%u0434\\%u0430\\%u0442\\%u0438\\>", "scenario": "\\%u0421\\%u0446\\%u0435\\%u043d\\%u0430\\%u0440\\%u0438\\%u043e\\>\\|\\%u041f\\%u0440\\%u0438\\%u043c\\%u0435\\%u0440\\>", "scenario_outline": "\\%u0421\\%u0442\\%u0440\\%u0443\\%u043a\\%u0442\\%u0443\\%u0440\\%u0430 \\%u0441\\%u0446\\%u0435\\%u043d\\%u0430\\%u0440\\%u0438\\%u0458\\%u0430\\>\\|\\%u041a\\%u043e\\%u043d\\%u0446\\%u0435\\%u043f\\%u0442\\>\\|\\%u0421\\%u043a\\%u0438\\%u0446\\%u0430\\>", "then": "\\%u041e\\%u043d\\%u0434\\%u0430\\>", "when": "\\%u041a\\%u0430\\%u0434\\%u0430\\>\\|\\%u041a\\%u0430\\%u0434\\>"},
\"sr-Latn": {"and": "I\\>", "background": "Kontekst\\>\\|Pozadina\\>\\|Osnova\\>", "but": "Ali\\>", "examples": "Scenariji\\>\\|Primeri\\>", "feature": "Mogu\\%u0107nost\\>\\|Funkcionalnost\\>\\|Mogucnost\\>\\|Osobina\\>", "given": "Zadato\\>\\|Zadate\\>\\|Zatati\\>", "scenario": "Scenario\\>\\|Primer\\>", "scenario_outline": "Struktura scenarija\\>\\|Koncept\\>\\|Skica\\>", "then": "Onda\\>", "when": "Kada\\>\\|Kad\\>"},
\"sv": {"and": "Och\\>", "background": "Bakgrund\\>", "but": "Men\\>", "examples": "Exempel\\>", "feature": "Egenskap\\>", "given": "Givet\\>", "scenario": "Scenario\\>", "scenario_outline": "Abstrakt Scenario\\>\\|Scenariomall\\>", "then": "S\\%u00e5\\>", "when": "N\\%u00e4r\\>"},
\"th": {"and": "\\%u0e41\\%u0e25\\%u0e30\\>", "background": "\\%u0e41\\%u0e19\\%u0e27\\%u0e04\\%u0e34\\%u0e14\\>", "but": "\\%u0e41\\%u0e15\\%u0e48\\>", "examples": "\\%u0e0a\\%u0e38\\%u0e14\\%u0e02\\%u0e2d\\%u0e07\\%u0e40\\%u0e2b\\%u0e15\\%u0e38\\%u0e01\\%u0e32\\%u0e23\\%u0e13\\%u0e4c\\>\\|\\%u0e0a\\%u0e38\\%u0e14\\%u0e02\\%u0e2d\\%u0e07\\%u0e15\\%u0e31\\%u0e27\\%u0e2d\\%u0e22\\%u0e48\\%u0e32\\%u0e07\\>", "feature": "\\%u0e04\\%u0e27\\%u0e32\\%u0e21\\%u0e15\\%u0e49\\%u0e2d\\%u0e07\\%u0e01\\%u0e32\\%u0e23\\%u0e17\\%u0e32\\%u0e07\\%u0e18\\%u0e38\\%u0e23\\%u0e01\\%u0e34\\%u0e08\\>\\|\\%u0e04\\%u0e27\\%u0e32\\%u0e21\\%u0e2a\\%u0e32\\%u0e21\\%u0e32\\%u0e23\\%u0e16\\>\\|\\%u0e42\\%u0e04\\%u0e23\\%u0e07\\%u0e2b\\%u0e25\\%u0e31\\%u0e01\\>", "given": "\\%u0e01\\%u0e33\\%u0e2b\\%u0e19\\%u0e14\\%u0e43\\%u0e2b\\%u0e49\\>", "scenario": "\\%u0e40\\%u0e2b\\%u0e15\\%u0e38\\%u0e01\\%u0e32\\%u0e23\\%u0e13\\%u0e4c\\>", "scenario_outline": "\\%u0e42\\%u0e04\\%u0e23\\%u0e07\\%u0e2a\\%u0e23\\%u0e49\\%u0e32\\%u0e07\\%u0e02\\%u0e2d\\%u0e07\\%u0e40\\%u0e2b\\%u0e15\\%u0e38\\%u0e01\\%u0e32\\%u0e23\\%u0e13\\%u0e4c\\>\\|\\%u0e2a\\%u0e23\\%u0e38\\%u0e1b\\%u0e40\\%u0e2b\\%u0e15\\%u0e38\\%u0e01\\%u0e32\\%u0e23\\%u0e13\\%u0e4c\\>", "then": "\\%u0e14\\%u0e31\\%u0e07\\%u0e19\\%u0e31\\%u0e49\\%u0e19\\>", "when": "\\%u0e40\\%u0e21\\%u0e37\\%u0e48\\%u0e2d\\>"},
\"tl": {"and": "\\%u0c2e\\%u0c30\\%u0c3f\\%u0c2f\\%u0c41\\>", "background": "\\%u0c28\\%u0c47\\%u0c2a\\%u0c25\\%u0c4d\\%u0c2f\\%u0c02\\>", "but": "\\%u0c15\\%u0c3e\\%u0c28\\%u0c3f\\>", "examples": "\\%u0c09\\%u0c26\\%u0c3e\\%u0c39\\%u0c30\\%u0c23\\%u0c32\\%u0c41\\>", "feature": "\\%u0c17\\%u0c41\\%u0c23\\%u0c2e\\%u0c41\\>", "given": "\\%u0c1a\\%u0c46\\%u0c2a\\%u0c4d\\%u0c2a\\%u0c2c\\%u0c21\\%u0c3f\\%u0c28\\%u0c26\\%u0c3f\\>", "scenario": "\\%u0c38\\%u0c28\\%u0c4d\\%u0c28\\%u0c3f\\%u0c35\\%u0c47\\%u0c36\\%u0c02\\>", "scenario_outline": "\\%u0c15\\%u0c25\\%u0c28\\%u0c02\\>", "then": "\\%u0c05\\%u0c2a\\%u0c4d\\%u0c2a\\%u0c41\\%u0c21\\%u0c41\\>", "when": "\\%u0c08 \\%u0c2a\\%u0c30\\%u0c3f\\%u0c38\\%u0c4d\\%u0c25\\%u0c3f\\%u0c24\\%u0c3f\\%u0c32\\%u0c4b\\>"},
\"tr": {"and": "Ve\\>", "background": "Ge\\%u00e7mi\\%u015f\\>", "but": "Fakat\\>\\|Ama\\>", "examples": "\\%u00d6rnekler\\>", "feature": "\\%u00d6zellik\\>", "given": "Diyelim ki\\>", "scenario": "Senaryo\\>", "scenario_outline": "Senaryo tasla\\%u011f\\%u0131\\>", "then": "O zaman\\>", "when": "E\\%u011fer ki\\>"},
\"tt": {"and": "\\%u04ba\\%u04d9\\%u043c\\>\\|\\%u0412\\%u04d9\\>", "background": "\\%u041a\\%u0435\\%u0440\\%u0435\\%u0448\\>", "but": "\\%u041b\\%u04d9\\%u043a\\%u0438\\%u043d\\>\\|\\%u04d8\\%u043c\\%u043c\\%u0430\\>", "examples": "\\%u04ae\\%u0440\\%u043d\\%u04d9\\%u043a\\%u043b\\%u04d9\\%u0440\\>\\|\\%u041c\\%u0438\\%u0441\\%u0430\\%u043b\\%u043b\\%u0430\\%u0440\\>", "feature": "\\%u04ae\\%u0437\\%u0435\\%u043d\\%u0447\\%u04d9\\%u043b\\%u0435\\%u043a\\%u043b\\%u0435\\%u043b\\%u0435\\%u043a\\>\\|\\%u041c\\%u04e9\\%u043c\\%u043a\\%u0438\\%u043d\\%u043b\\%u0435\\%u043a\\>", "given": "\\%u04d8\\%u0439\\%u0442\\%u0438\\%u043a\\>", "scenario": "\\%u0421\\%u0446\\%u0435\\%u043d\\%u0430\\%u0440\\%u0438\\%u0439\\>", "scenario_outline": "\\%u0421\\%u0446\\%u0435\\%u043d\\%u0430\\%u0440\\%u0438\\%u0439\\%u043d\\%u044b\\%u04a3 \\%u0442\\%u04e9\\%u0437\\%u0435\\%u043b\\%u0435\\%u0448\\%u0435\\>", "then": "\\%u041d\\%u04d9\\%u0442\\%u0438\\%u0497\\%u04d9\\%u0434\\%u04d9\\>", "when": "\\%u04d8\\%u0433\\%u04d9\\%u0440\\>"},
\"uk": {"and": "\\%u0410 \\%u0442\\%u0430\\%u043a\\%u043e\\%u0436\\>\\|\\%u0422\\%u0430\\>\\|\\%u0406\\>", "background": "\\%u041f\\%u0435\\%u0440\\%u0435\\%u0434\\%u0443\\%u043c\\%u043e\\%u0432\\%u0430\\>", "but": "\\%u0410\\%u043b\\%u0435\\>", "examples": "\\%u041f\\%u0440\\%u0438\\%u043a\\%u043b\\%u0430\\%u0434\\%u0438\\>", "feature": "\\%u0424\\%u0443\\%u043d\\%u043a\\%u0446\\%u0456\\%u043e\\%u043d\\%u0430\\%u043b\\>", "given": "\\%u041f\\%u0440\\%u0438\\%u043f\\%u0443\\%u0441\\%u0442\\%u0438\\%u043c\\%u043e, \\%u0449\\%u043e\\>\\|\\%u041f\\%u0440\\%u0438\\%u043f\\%u0443\\%u0441\\%u0442\\%u0438\\%u043c\\%u043e\\>\\|\\%u041d\\%u0435\\%u0445\\%u0430\\%u0439\\>\\|\\%u0414\\%u0430\\%u043d\\%u043e\\>", "scenario": "\\%u0421\\%u0446\\%u0435\\%u043d\\%u0430\\%u0440\\%u0456\\%u0439\\>", "scenario_outline": "\\%u0421\\%u0442\\%u0440\\%u0443\\%u043a\\%u0442\\%u0443\\%u0440\\%u0430 \\%u0441\\%u0446\\%u0435\\%u043d\\%u0430\\%u0440\\%u0456\\%u044e\\>", "then": "\\%u0422\\%u043e\\%u0434\\%u0456\\>\\|\\%u0422\\%u043e\\>", "when": "\\%u042f\\%u043a\\%u0449\\%u043e\\>\\|\\%u041a\\%u043e\\%u043b\\%u0438\\>"},
\"uz": {"and": "\\%u0412\\%u0430\\>", "background": "\\%u0422\\%u0430\\%u0440\\%u0438\\%u0445\\>", "but": "\\%u041b\\%u0435\\%u043a\\%u0438\\%u043d\\>\\|\\%u0411\\%u0438\\%u0440\\%u043e\\%u043a\\>\\|\\%u0410\\%u043c\\%u043c\\%u043e\\>", "examples": "\\%u041c\\%u0438\\%u0441\\%u043e\\%u043b\\%u043b\\%u0430\\%u0440\\>", "feature": "\\%u0424\\%u0443\\%u043d\\%u043a\\%u0446\\%u0438\\%u043e\\%u043d\\%u0430\\%u043b\\>", "given": "\\%u0410\\%u0433\\%u0430\\%u0440\\>", "scenario": "\\%u0421\\%u0446\\%u0435\\%u043d\\%u0430\\%u0440\\%u0438\\%u0439\\>", "scenario_outline": "\\%u0421\\%u0446\\%u0435\\%u043d\\%u0430\\%u0440\\%u0438\\%u0439 \\%u0441\\%u0442\\%u0440\\%u0443\\%u043a\\%u0442\\%u0443\\%u0440\\%u0430\\%u0441\\%u0438\\>", "then": "\\%u0423\\%u043d\\%u0434\\%u0430\\>", "when": "\\%u0410\\%u0433\\%u0430\\%u0440\\>"},
\"vi": {"and": "V\\%u00e0\\>", "background": "B\\%u1ed1i c\\%u1ea3nh\\>", "but": "Nh\\%u01b0ng\\>", "examples": "D\\%u1eef li\\%u1ec7u\\>", "feature": "T\\%u00ednh n\\%u0103ng\\>", "given": "Bi\\%u1ebft\\>\\|Cho\\>", "scenario": "T\\%u00ecnh hu\\%u1ed1ng\\>\\|K\\%u1ecbch b\\%u1ea3n\\>", "scenario_outline": "Khung t\\%u00ecnh hu\\%u1ed1ng\\>\\|Khung k\\%u1ecbch b\\%u1ea3n\\>", "then": "Th\\%u00ec\\>", "when": "Khi\\>"},
\"zh-CN": {"and": "\\%u800c\\%u4e14\\|\\%u5e76\\%u4e14\\|\\%u540c\\%u65f6", "background": "\\%u80cc\\%u666f\\>", "but": "\\%u4f46\\%u662f", "examples": "\\%u4f8b\\%u5b50\\>", "feature": "\\%u529f\\%u80fd\\>", "given": "\\%u5047\\%u5982\\|\\%u5047\\%u8bbe\\|\\%u5047\\%u5b9a", "scenario": "\\%u573a\\%u666f\\>\\|\\%u5267\\%u672c\\>", "scenario_outline": "\\%u573a\\%u666f\\%u5927\\%u7eb2\\>\\|\\%u5267\\%u672c\\%u5927\\%u7eb2\\>", "then": "\\%u90a3\\%u4e48", "when": "\\%u5f53"},
\"zh-TW": {"and": "\\%u800c\\%u4e14\\|\\%u4e26\\%u4e14\\|\\%u540c\\%u6642", "background": "\\%u80cc\\%u666f\\>", "but": "\\%u4f46\\%u662f", "examples": "\\%u4f8b\\%u5b50\\>", "feature": "\\%u529f\\%u80fd\\>", "given": "\\%u5047\\%u5982\\|\\%u5047\\%u8a2d\\|\\%u5047\\%u5b9a", "scenario": "\\%u5834\\%u666f\\>\\|\\%u5287\\%u672c\\>", "scenario_outline": "\\%u5834\\%u666f\\%u5927\\%u7db1\\>\\|\\%u5287\\%u672c\\%u5927\\%u7db1\\>", "then": "\\%u90a3\\%u9ebc", "when": "\\%u7576"}}
function! s:pattern(key)
let language = matchstr(getline(1),'#\s*language:\s*\zs\S\+')
if &fileencoding == 'latin1' && language == ''
let language = 'en'
endif
if has_key(g:cucumber_languages, language)
let languages = [g:cucumber_languages[language]]
else
let languages = values(g:cucumber_languages)
end
return '\<\%('.join(map(languages,'get(v:val,a:key,"\\%(a\\&b\\)")'),'\|').'\)'
endfunction
function! s:Add(name)
let next = " skipempty skipwhite nextgroup=".join(map(["Region","AndRegion","ButRegion","Comment","String","Table"],'"cucumber".a:name.v:val'),",")
exe "syn region cucumber".a:name.'Region matchgroup=cucumber'.a:name.' start="\%(^\s*\)\@<=\%('.s:pattern(tolower(a:name)).'\)" end="$"'.next
exe 'syn region cucumber'.a:name.'AndRegion matchgroup=cucumber'.a:name.'And start="\%(^\s*\)\@<='.s:pattern('and').'" end="$" contained'.next
exe 'syn region cucumber'.a:name.'ButRegion matchgroup=cucumber'.a:name.'But start="\%(^\s*\)\@<='.s:pattern('but').'" end="$" contained'.next
exe 'syn match cucumber'.a:name.'Comment "\%(^\s*\)\@<=#.*" contained'.next
exe 'syn region cucumber'.a:name.'String start=+\%(^\s*\)\@<="""+ end=+"""+ contained'.next
exe 'syn match cucumber'.a:name.'Table "\%(^\s*\)\@<=|.*" contained contains=cucumberDelimiter'.next
exe 'hi def link cucumber'.a:name.'Comment cucumberComment'
exe 'hi def link cucumber'.a:name.'String cucumberString'
exe 'hi def link cucumber'.a:name.'But cucumber'.a:name.'And'
exe 'hi def link cucumber'.a:name.'And cucumber'.a:name
exe 'syn cluster cucumberStepRegions add=cucumber'.a:name.'Region,cucumber'.a:name.'AndRegion,cucumber'.a:name.'ButRegion'
endfunction
syn match cucumberComment "\%(^\s*\)\@<=#.*"
syn match cucumberComment "\%(\%^\s*\)\@<=#.*" contains=cucumberLanguage
syn match cucumberLanguage "\%(#\s*\)\@<=language:" contained
syn match cucumberUnparsed "\S.*" nextgroup=cucumberUnparsedComment,cucumberUnparsed,cucumberTags,cucumberBackground,cucumberScenario,cucumberScenarioOutline,cucumberExamples skipwhite skipempty contained
syn match cucumberUnparsedComment "#.*" nextgroup=cucumberUnparsedComment,cucumberUnparsed,cucumberTags,cucumberBackground,cucumberScenario,cucumberScenarioOutline,cucumberExamples skipwhite skipempty contained
exe 'syn match cucumberFeature "\%(^\s*\)\@<='.s:pattern('feature').':" nextgroup=cucumberUnparsedComment,cucumberUnparsed,cucumberBackground,cucumberScenario,cucumberScenarioOutline,cucumberExamples skipwhite skipempty'
exe 'syn match cucumberBackground "\%(^\s*\)\@<='.s:pattern('background').':"'
exe 'syn match cucumberScenario "\%(^\s*\)\@<='.s:pattern('scenario').':"'
exe 'syn match cucumberScenarioOutline "\%(^\s*\)\@<='.s:pattern('scenario_outline').':"'
exe 'syn match cucumberExamples "\%(^\s*\)\@<='.s:pattern('examples').':" nextgroup=cucumberExampleTable skipempty skipwhite'
syn match cucumberPlaceholder "<[^<>]*>" contained containedin=@cucumberStepRegions
syn match cucumberExampleTable "\%(^\s*\)\@<=|.*" contains=cucumberDelimiter
syn match cucumberDelimiter "\\\@<!\%(\\\\\)*\zs|" contained
syn match cucumberTags "\%(^\s*\)\@<=\%(@[^@[:space:]]\+\s\+\)*@[^@[:space:]]\+\s*$" contains=@NoSpell
call s:Add('Then')
call s:Add('When')
call s:Add('Given')
hi def link cucumberUnparsedComment cucumberComment
hi def link cucumberComment Comment
hi def link cucumberLanguage SpecialComment
hi def link cucumberFeature Macro
hi def link cucumberBackground Define
hi def link cucumberScenario Define
hi def link cucumberScenarioOutline Define
hi def link cucumberExamples Define
hi def link cucumberPlaceholder Constant
hi def link cucumberDelimiter Delimiter
hi def link cucumberTags Tag
hi def link cucumberString String
hi def link cucumberGiven Conditional
hi def link cucumberWhen Function
hi def link cucumberThen Type
let b:current_syntax = "cucumber"
let &cpo = s:keepcpo
unlet s:keepcpo
" vim:set sts=2 sw=2:
endif
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cucumber') == -1
" Vim syntax file

69
syntax/cuda.vim Normal file
View File

@@ -0,0 +1,69 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: CUDA (NVIDIA Compute Unified Device Architecture)
" Maintainer: Timothy B. Terriberry <tterribe@users.sourceforge.net>
" Last Change: 2007 Oct 13
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" Read the C syntax to start with
runtime! syntax/c.vim
" CUDA extentions
syn keyword cudaStorageClass __device__ __global__ __host__
syn keyword cudaStorageClass __constant__ __shared__
syn keyword cudaStorageClass __inline__ __align__ __thread__
"syn keyword cudaStorageClass __import__ __export__ __location__
syn keyword cudaStructure template
syn keyword cudaType char1 char2 char3 char4
syn keyword cudaType uchar1 uchar2 uchar3 uchar4
syn keyword cudaType short1 short2 short3 short4
syn keyword cudaType ushort1 ushort2 ushort3 ushort4
syn keyword cudaType int1 int2 int3 int4
syn keyword cudaType uint1 uint2 uint3 uint4
syn keyword cudaType long1 long2 long3 long4
syn keyword cudaType ulong1 ulong2 ulong3 ulong4
syn keyword cudaType float1 float2 float3 float4
syn keyword cudaType ufloat1 ufloat2 ufloat3 ufloat4
syn keyword cudaType dim3 texture textureReference
syn keyword cudaType cudaError_t cudaDeviceProp cudaMemcpyKind
syn keyword cudaType cudaArray cudaChannelFormatKind
syn keyword cudaType cudaChannelFormatDesc cudaTextureAddressMode
syn keyword cudaType cudaTextureFilterMode cudaTextureReadMode
syn keyword cudaVariable gridDim blockIdx blockDim threadIdx
syn keyword cudaConstant __DEVICE_EMULATION__
syn keyword cudaConstant cudaSuccess
" Many more errors are defined, but only these are listed in the maunal
syn keyword cudaConstant cudaErrorMemoryAllocation
syn keyword cudaConstant cudaErrorInvalidDevicePointer
syn keyword cudaConstant cudaErrorInvalidSymbol
syn keyword cudaConstant cudaErrorMixedDeviceExecution
syn keyword cudaConstant cudaMemcpyHostToHost
syn keyword cudaConstant cudaMemcpyHostToDevice
syn keyword cudaConstant cudaMemcpyDeviceToHost
syn keyword cudaConstant cudaMemcpyDeviceToDevice
syn keyword cudaConstant cudaReadModeElementType
syn keyword cudaConstant cudaReadModeNormalizedFloat
syn keyword cudaConstant cudaFilterModePoint
syn keyword cudaConstant cudaFilterModeLinear
syn keyword cudaConstant cudaAddressModeClamp
syn keyword cudaConstant cudaAddressModeWrap
syn keyword cudaConstant cudaChannelFormatKindSigned
syn keyword cudaConstant cudaChannelFormatKindUnsigned
syn keyword cudaConstant cudaChannelFormatKindFloat
hi def link cudaStorageClass StorageClass
hi def link cudaStructure Structure
hi def link cudaType Type
hi def link cudaVariable Identifier
hi def link cudaConstant Constant
let b:current_syntax = "cuda"
" vim: ts=8
endif

128
syntax/cupl.vim Normal file
View File

@@ -0,0 +1,128 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: CUPL
" Maintainer: John Cook <johncook3@gmail.com>
" Last Change: 2011 Dec 27
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" this language is oblivious to case.
syn case ignore
" A bunch of keywords
syn keyword cuplHeader name partno date revision rev designer company nextgroup=cuplHeaderContents
syn keyword cuplHeader assembly assy location device nextgroup=cuplHeaderContents
syn keyword cuplTodo contained TODO XXX FIXME
" cuplHeaderContents uses default highlighting except for numbers
syn match cuplHeaderContents ".\+;"me=e-1 contains=cuplNumber contained
" String contstants
syn region cuplString start=+'+ end=+'+
syn region cuplString start=+"+ end=+"+
syn keyword cuplStatement append condition
syn keyword cuplStatement default else
syn keyword cuplStatement field fld format function fuse
syn keyword cuplStatement group if jump loc
syn keyword cuplStatement macro min node out
syn keyword cuplStatement pin pinnode present table
syn keyword cuplStatement sequence sequenced sequencejk sequencers sequencet
syn keyword cuplFunction log2 log8 log16 log
" Valid integer number formats (decimal, binary, octal, hex)
syn match cuplNumber "\<[-+]\=[0-9]\+\>"
syn match cuplNumber "'d'[0-9]\+\>"
syn match cuplNumber "'b'[01x]\+\>"
syn match cuplNumber "'o'[0-7x]\+\>"
syn match cuplNumber "'h'[0-9a-fx]\+\>"
" operators
syn match cuplLogicalOperator "[!#&$]"
syn match cuplArithmeticOperator "[-+*/%]"
syn match cuplArithmeticOperator "\*\*"
syn match cuplAssignmentOperator ":\=="
syn match cuplEqualityOperator ":"
syn match cuplTruthTableOperator "=>"
" Signal extensions
syn match cuplExtension "\.[as][pr]\>"
syn match cuplExtension "\.oe\>"
syn match cuplExtension "\.oemux\>"
syn match cuplExtension "\.[dlsrjk]\>"
syn match cuplExtension "\.ck\>"
syn match cuplExtension "\.dq\>"
syn match cuplExtension "\.ckmux\>"
syn match cuplExtension "\.tec\>"
syn match cuplExtension "\.cnt\>"
syn match cuplRangeOperator "\.\." contained
" match ranges like memadr:[0000..1FFF]
" and highlight both the numbers and the .. operator
syn match cuplNumberRange "\<\x\+\.\.\x\+\>" contains=cuplRangeOperator
" match vectors of type [name3..0] (decimal numbers only)
" but assign them no special highlighting except for the .. operator
syn match cuplBitVector "\<\a\+\d\+\.\.\d\+\>" contains=cuplRangeOperator
" other special characters
syn match cuplSpecialChar "[\[\](){},;]"
" directives
" (define these after cuplOperator so $xxx overrides $)
syn match cuplDirective "\$msg"
syn match cuplDirective "\$macro"
syn match cuplDirective "\$mend"
syn match cuplDirective "\$repeat"
syn match cuplDirective "\$repend"
syn match cuplDirective "\$define"
syn match cuplDirective "\$include"
" multi-line comments
syn region cuplComment start=+/\*+ end=+\*/+ contains=cuplNumber,cuplTodo
syn sync minlines=1
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
" The default highlighting.
hi def link cuplHeader cuplStatement
hi def link cuplLogicalOperator cuplOperator
hi def link cuplRangeOperator cuplOperator
hi def link cuplArithmeticOperator cuplOperator
hi def link cuplAssignmentOperator cuplOperator
hi def link cuplEqualityOperator cuplOperator
hi def link cuplTruthTableOperator cuplOperator
hi def link cuplOperator cuplStatement
hi def link cuplFunction cuplStatement
hi def link cuplStatement Statement
hi def link cuplNumberRange cuplNumber
hi def link cuplNumber cuplString
hi def link cuplString String
hi def link cuplComment Comment
hi def link cuplExtension cuplSpecial
hi def link cuplSpecialChar cuplSpecial
hi def link cuplSpecial Special
hi def link cuplDirective PreProc
hi def link cuplTodo Todo
let b:current_syntax = "cupl"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim:ts=8
endif

67
syntax/cuplsim.vim Normal file
View File

@@ -0,0 +1,67 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: CUPL simulation
" Maintainer: John Cook <john.cook@kla-tencor.com>
" Last Change: 2001 Apr 25
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" Read the CUPL syntax to start with
runtime! syntax/cupl.vim
unlet b:current_syntax
" omit definition-specific stuff
syn clear cuplStatement
syn clear cuplFunction
syn clear cuplLogicalOperator
syn clear cuplArithmeticOperator
syn clear cuplAssignmentOperator
syn clear cuplEqualityOperator
syn clear cuplTruthTableOperator
syn clear cuplExtension
" simulation order statement
syn match cuplsimOrder "order:" nextgroup=cuplsimOrderSpec skipempty
syn region cuplsimOrderSpec start="." end=";"me=e-1 contains=cuplComment,cuplsimOrderFormat,cuplBitVector,cuplSpecialChar,cuplLogicalOperator,cuplCommaOperator contained
" simulation base statement
syn match cuplsimBase "base:" nextgroup=cuplsimBaseSpec skipempty
syn region cuplsimBaseSpec start="." end=";"me=e-1 contains=cuplComment,cuplsimBaseType contained
syn keyword cuplsimBaseType octal decimal hex contained
" simulation vectors statement
syn match cuplsimVectors "vectors:"
" simulator format control
syn match cuplsimOrderFormat "%\d\+\>" contained
" simulator control
syn match cuplsimStimulus "[10ckpx]\+"
syn match cuplsimStimulus +'\(\x\|x\)\+'+
syn match cuplsimOutput "[lhznx*]\+"
syn match cuplsimOutput +"\x\+"+
syn sync minlines=1
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
" append to the highlighting links in cupl.vim
" The default highlighting.
hi def link cuplsimOrder cuplStatement
hi def link cuplsimBase cuplStatement
hi def link cuplsimBaseType cuplStatement
hi def link cuplsimVectors cuplStatement
hi def link cuplsimStimulus cuplNumber
hi def link cuplsimOutput cuplNumber
hi def link cuplsimOrderFormat cuplNumber
let b:current_syntax = "cuplsim"
" vim:ts=8
endif

34
syntax/cvs.vim Normal file
View File

@@ -0,0 +1,34 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: CVS commit file
" Maintainer: Matt Dunford (zoot@zotikos.com)
" URL: http://www.zotikos.com/downloads/cvs.vim
" Last Change: Sat Nov 24 23:25:11 CET 2001
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn region cvsLine start="^CVS: " end="$" contains=cvsFile,cvsCom,cvsFiles,cvsTag
syn match cvsFile contained " \t\(\(\S\+\) \)\+"
syn match cvsTag contained " Tag:"
syn match cvsFiles contained "\(Added\|Modified\|Removed\) Files:"
syn region cvsCom start="Committing in" end="$" contains=cvsDir contained extend keepend
syn match cvsDir contained "\S\+$"
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link cvsLine Comment
hi def link cvsDir cvsFile
hi def link cvsFile Constant
hi def link cvsFiles cvsCom
hi def link cvsTag cvsCom
hi def link cvsCom Statement
let b:current_syntax = "cvs"
endif

43
syntax/cvsrc.vim Normal file
View File

@@ -0,0 +1,43 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
" Vim syntax file
" Language: cvs(1) RC file
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2006-04-19
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn region cvsrcString display oneline start=+"+ skip=+\\\\\|\\\\"+ end=+"+
syn region cvsrcString display oneline start=+'+ skip=+\\\\\|\\\\'+ end=+'+
syn match cvsrcNumber display '\<\d\+\>'
syn match cvsrcBegin display '^' nextgroup=cvsrcCommand skipwhite
syn region cvsrcCommand contained transparent matchgroup=cvsrcCommand
\ start='add\|admin\|checkout\|commit\|cvs\|diff'
\ start='export\|history\|import\|init\|log'
\ start='rdiff\|release\|remove\|rtag\|status\|tag'
\ start='update'
\ end='$'
\ contains=cvsrcOption,cvsrcString,cvsrcNumber
\ keepend
syn match cvsrcOption contained display '-\a\+'
hi def link cvsrcString String
hi def link cvsrcNumber Number
hi def link cvsrcCommand Keyword
hi def link cvsrcOption Identifier
let b:current_syntax = "cvsrc"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

Some files were not shown because too many files have changed in this diff Show More