Initial class construction
This commit is contained in:
122
Git/usr/share/vim/vim81/syntax/slpreg.vim
Normal file
122
Git/usr/share/vim/vim81/syntax/slpreg.vim
Normal file
@ -0,0 +1,122 @@
|
||||
" Vim syntax file
|
||||
" Language: RFC 2614 - An API for Service Location registration 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 slpregTodo contained TODO FIXME XXX NOTE
|
||||
|
||||
syn region slpregComment display oneline start='^[#;]' end='$'
|
||||
\ contains=slpregTodo,@Spell
|
||||
|
||||
syn match slpregBegin display '^'
|
||||
\ nextgroup=slpregServiceURL,
|
||||
\ slpregComment
|
||||
|
||||
syn match slpregServiceURL contained display 'service:'
|
||||
\ nextgroup=slpregServiceType
|
||||
|
||||
syn match slpregServiceType contained display '\a[[:alpha:][:digit:]+-]*\%(\.\a[[:alpha:][:digit:]+-]*\)\=\%(:\a[[:alpha:][:digit:]+-]*\)\='
|
||||
\ nextgroup=slpregServiceSAPCol
|
||||
|
||||
syn match slpregServiceSAPCol contained display ':'
|
||||
\ nextgroup=slpregSAP
|
||||
|
||||
syn match slpregSAP contained '[^,]\+'
|
||||
\ nextgroup=slpregLangSep
|
||||
"syn match slpregSAP contained display '\%(//\%(\%([[:alpha:][:digit:]$-_.~!*\'(),+;&=]*@\)\=\%([[:alnum:]][[:alnum:]-]*[[:alnum:]]\|[[:alnum:]]\.\)*\%(\a[[:alnum:]-]*[[:alnum:]]\|\a\)\%(:\d\+\)\=\)\=\|/at/\%([[:alpha:][:digit:]$-_.~]\|\\\x\x\)\{1,31}:\%([[:alpha:][:digit:]$-_.~]\|\\\x\x\)\{1,31}\%([[:alpha:][:digit:]$-_.~]\|\\\x\x\)\{1,31}\|/ipx/\x\{8}:\x\{12}:\x\{4}\)\%(/\%([[:alpha:][:digit:]$-_.~!*\'()+;?:@&=+]\|\\\x\x\)*\)*\%(;[^()\\!<=>~[:cntrl:]* \t_]\+\%(=[^()\\!<=>~[:cntrl:] ]\+\)\=\)*'
|
||||
|
||||
syn match slpregLangSep contained display ','
|
||||
\ nextgroup=slpregLang
|
||||
|
||||
syn match slpregLang contained display '\a\{1,8}\%(-\a\{1,8\}\)\='
|
||||
\ nextgroup=slpregLTimeSep
|
||||
|
||||
syn match slpregLTimeSep contained display ','
|
||||
\ nextgroup=slpregLTime
|
||||
|
||||
syn match slpregLTime contained display '\d\{1,5}'
|
||||
\ nextgroup=slpregType,slpregUNewline
|
||||
|
||||
syn match slpregType contained display '\a[[:alpha:][:digit:]+-]*'
|
||||
\ nextgroup=slpregUNewLine
|
||||
|
||||
syn match slpregUNewLine contained '\s*\n'
|
||||
\ nextgroup=slpregScopes,slpregAttrList skipnl
|
||||
|
||||
syn keyword slpregScopes contained scopes
|
||||
\ nextgroup=slpregScopesEq
|
||||
|
||||
syn match slpregScopesEq contained '=' nextgroup=slpregScopeName
|
||||
|
||||
syn match slpregScopeName contained '[^(),\\!<=>[:cntrl:];*+ ]\+'
|
||||
\ nextgroup=slpregScopeNameSep,
|
||||
\ slpregScopeNewline
|
||||
|
||||
syn match slpregScopeNameSep contained ','
|
||||
\ nextgroup=slpregScopeName
|
||||
|
||||
syn match slpregScopeNewline contained '\s*\n'
|
||||
\ nextgroup=slpregAttribute skipnl
|
||||
|
||||
syn match slpregAttribute contained '[^(),\\!<=>[:cntrl:]* \t_]\+'
|
||||
\ nextgroup=slpregAttributeEq,
|
||||
\ slpregScopeNewline
|
||||
|
||||
syn match slpregAttributeEq contained '='
|
||||
\ nextgroup=@slpregAttrValue
|
||||
|
||||
syn cluster slpregAttrValueCon contains=slpregAttribute,slpregAttrValueSep
|
||||
|
||||
syn cluster slpregAttrValue contains=slpregAttrIValue,slpregAttrSValue,
|
||||
\ slpregAttrBValue,slpregAttrSSValue
|
||||
|
||||
syn match slpregAttrSValue contained display '[^(),\\!<=>~[:cntrl:]]\+'
|
||||
\ nextgroup=@slpregAttrValueCon skipwhite skipnl
|
||||
|
||||
syn match slpregAttrSSValue contained display '\\FF\%(\\\x\x\)\+'
|
||||
\ nextgroup=@slpregAttrValueCon skipwhite skipnl
|
||||
|
||||
syn match slpregAttrIValue contained display '[-]\=\d\+\>'
|
||||
\ nextgroup=@slpregAttrValueCon skipwhite skipnl
|
||||
|
||||
syn keyword slpregAttrBValue contained true false
|
||||
\ nextgroup=@slpregAttrValueCon skipwhite skipnl
|
||||
|
||||
syn match slpregAttrValueSep contained display ','
|
||||
\ nextgroup=@slpregAttrValue skipwhite skipnl
|
||||
|
||||
hi def link slpregTodo Todo
|
||||
hi def link slpregComment Comment
|
||||
hi def link slpregServiceURL Type
|
||||
hi def link slpregServiceType slpregServiceURL
|
||||
hi def link slpregServiceSAPCol slpregServiceURL
|
||||
hi def link slpregSAP slpregServiceURL
|
||||
hi def link slpregDelimiter Delimiter
|
||||
hi def link slpregLangSep slpregDelimiter
|
||||
hi def link slpregLang String
|
||||
hi def link slpregLTimeSep slpregDelimiter
|
||||
hi def link slpregLTime Number
|
||||
hi def link slpregType Type
|
||||
hi def link slpregScopes Identifier
|
||||
hi def link slpregScopesEq Operator
|
||||
hi def link slpregScopeName String
|
||||
hi def link slpregScopeNameSep slpregDelimiter
|
||||
hi def link slpregAttribute Identifier
|
||||
hi def link slpregAttributeEq Operator
|
||||
hi def link slpregAttrSValue String
|
||||
hi def link slpregAttrSSValue slpregAttrSValue
|
||||
hi def link slpregAttrIValue Number
|
||||
hi def link slpregAttrBValue Boolean
|
||||
hi def link slpregAttrValueSep slpregDelimiter
|
||||
|
||||
let b:current_syntax = "slpreg"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
Reference in New Issue
Block a user