123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126 |
- if exists("b:current_syntax")
- finish
- endif
- syntax match ShaDaEntryHeader
- \ '^\u.\{-} with timestamp \d\{4}-\d\d-\d\dT\d\d:\d\d:\d\d:$'
- syntax match ShaDaEntryName '^\u.\{-}\ze with' contained
- \ containedin=ShaDaEntryHeader
- syntax match ShaDaEntryTimestamp 'timestamp \zs\d\{4}-\d\d-\d\dT\d\d:\d\d:\d\d'
- \ contained containedin=ShaDaEntryHeader
- syntax match ShaDaEntryTimestampNumber '\d\+' contained
- \ containedin=ShaDaEntryTimestamp
- syntax match ShaDaComment '^\s*#.*$'
- syntax region ShaDaEntryMapLong start='^ % Key_* Description_* Value$'
- \ end='^ %\|^\S'me=s-1 contains=ShaDaComment,ShaDaEntryMapLongEntryStart
- syntax region ShaDaEntryMapShort start='^ % Key_* Value$'
- \ end='^ %\|^\S'me=s-1 contains=ShaDaComment,ShaDaEntryMapShortEntryStart
- syntax match ShaDaEntryMapHeader '^ % Key_* \(Description_* \)\?Value$'
- \ contained containedin=ShaDaEntryMapLong,ShaDaEntryMapShort
- syntax match ShaDaEntryMapLongEntryStart '^ + 'hs=e-2,he=e-1
- \ nextgroup=ShaDaEntryMapLongKey
- syntax match ShaDaEntryMapLongKey '\S\+ \+\ze\S'he=e-2 contained
- \ nextgroup=ShaDaEntryMapLongDescription
- syntax match ShaDaEntryMapLongDescription '.\{-} \ze\S'he=e-2 contained
- \ nextgroup=@ShaDaEntryMsgpackValue
- syntax match ShaDaEntryMapShortEntryStart '^ + 'hs=e-2,he=e-1 contained
- \ nextgroup=ShaDaEntryMapShortKey
- syntax match ShaDaEntryMapShortKey '\S\+ \+\ze\S'he=e-2 contained
- \ nextgroup=@ShaDaEntryMsgpackValue
- syntax match ShaDaEntryMapBinArrayStart '^ | - 'hs=e-4,he=e-1 contained
- \ containedin=ShaDaEntryMapLong,ShaDaEntryMapShort
- \ nextgroup=@ShaDaEntryMsgpackValue
- syntax region ShaDaEntryArray start='^ @ Description_* Value$'
- \ end='^\S'me=s-1 keepend
- \ contains=ShaDaComment,ShaDaEntryArrayEntryStart,ShaDaEntryArrayHeader
- syntax match ShaDaEntryArrayHeader '^ @ Description_* Value$' contained
- syntax match ShaDaEntryArrayEntryStart '^ - 'hs=e-2,he=e-1
- \ nextgroup=ShaDaEntryArrayDescription
- syntax match ShaDaEntryArrayDescription '.\{-} \ze\S'he=e-2 contained
- \ nextgroup=@ShaDaEntryMsgpackValue
- syntax match ShaDaEntryRawMsgpack '^ = ' nextgroup=@ShaDaEntryMsgpackValue
- syntax cluster ShaDaEntryMsgpackValue
- \ add=ShaDaMsgpackKeyword,ShaDaMsgpackShaDaKeyword
- \ add=ShaDaMsgpackInteger,ShaDaMsgpackCharacter,ShaDaMsgpackFloat
- \ add=ShaDaMsgpackBinaryString,ShaDaMsgpackString,ShaDaMsgpackExt
- \ add=ShaDaMsgpackArray,ShaDaMsgpackMap
- \ add=ShaDaMsgpackMultilineArray
- syntax keyword ShaDaMsgpackKeyword contained NIL TRUE FALSE
- syntax keyword ShaDaMsgpackShaDaKeyword contained
- \ CMD SEARCH EXPR INPUT DEBUG
- \ CHARACTERWISE LINEWISE BLOCKWISE
- syntax region ShaDaMsgpackBinaryString matchgroup=ShaDaMsgpackStringQuotes
- \ start='"' skip='\\"' end='"' contained keepend
- syntax match ShaDaMsgpackBinaryStringEscape '\\[\\0n"]'
- \ contained containedin=ShaDaMsgpackBinaryString
- syntax match ShaDaMsgpackString '=' contained nextgroup=ShaDaMsgpackBinaryString
- syntax match ShaDaMsgpackExt '+(-\?\d\+)' contained
- \ nextgroup=ShaDaMsgpackBinaryString
- syntax match ShaDaMsgpackExtType '-\?\d\+' contained containedin=ShaDaMsgpackExt
- syntax match ShaDaMsgpackCharacter /'.'/ contained
- syntax match ShaDaMsgpackInteger '-\?\%(0x\x\{,16}\|\d\+\)' contained
- syntax match ShaDaMsgpackFloat '-\?\d\+\.\d\+\%(e[+-]\?\d\+\)\?' contained
- syntax region ShaDaMsgpackArray matchgroup=ShaDaMsgpackArrayBraces
- \ start='\[' end='\]' contained
- \ contains=@ShaDaEntryMsgpackValue,ShaDaMsgpackComma
- syntax region ShaDaMsgpackMap matchgroup=ShaDaMsgpackMapBraces
- \ start='{' end='}' contained
- \ contains=@ShaDaEntryMsgpackValue,ShaDaMsgpackComma,ShaDaMsgpackColon
- syntax match ShaDaMsgpackComma ',' contained
- syntax match ShaDaMsgpackColon ':' contained
- syntax match ShaDaMsgpackMultilineArray '@' contained
- hi def link ShaDaComment Comment
- hi def link ShaDaEntryNumber Number
- hi def link ShaDaEntryTimestamp Operator
- hi def link ShaDaEntryName Keyword
- hi def link ShaDaEntryMapHeader PreProc
- hi def link ShaDaEntryMapEntryStart Label
- hi def link ShaDaEntryMapLongEntryStart ShaDaEntryMapEntryStart
- hi def link ShaDaEntryMapShortEntryStart ShaDaEntryMapEntryStart
- hi def link ShaDaEntryMapBinArrayStart ShaDaEntryMapEntryStart
- hi def link ShaDaEntryArrayEntryStart ShaDaEntryMapEntryStart
- hi def link ShaDaEntryMapKey String
- hi def link ShaDaEntryMapLongKey ShaDaEntryMapKey
- hi def link ShaDaEntryMapShortKey ShaDaEntryMapKey
- hi def link ShaDaEntryMapDescription Comment
- hi def link ShaDaEntryMapLongDescription ShaDaEntryMapDescription
- hi def link ShaDaEntryMapShortDescription ShaDaEntryMapDescription
- hi def link ShaDaEntryArrayHeader PreProc
- hi def link ShaDaEntryArrayDescription ShaDaEntryMapDescription
- hi def link ShaDaMsgpackKeyword Keyword
- hi def link ShaDaMsgpackShaDaKeyword ShaDaMsgpackKeyword
- hi def link ShaDaMsgpackCharacter Character
- hi def link ShaDaMsgpackInteger Number
- hi def link ShaDaMsgpackFloat Float
- hi def link ShaDaMsgpackBinaryString String
- hi def link ShaDaMsgpackBinaryStringEscape SpecialChar
- hi def link ShaDaMsgpackExtType Typedef
- hi def link ShaDaMsgpackStringQuotes Operator
- hi def link ShaDaMsgpackString ShaDaMsgpackStringQuotes
- hi def link ShaDaMsgpackExt ShaDaMsgpackStringQuotes
- hi def link ShaDaMsgpackMapBraces Operator
- hi def link ShaDaMsgpackArrayBraces ShaDaMsgpackMapBraces
- hi def link ShaDaMsgpackComma Operator
- hi def link ShaDaMsgpackColon ShaDaMsgpackComma
- hi def link ShaDaMsgpackMultilineArray Operator
- let b:current_syntax = "shada"
|