updated for version 7.0097
This commit is contained in:
@ -1,104 +1,111 @@
|
||||
" Vim syntax file
|
||||
" Language: calendar(1) file.
|
||||
" Maintainer: Nikolai Weibull <source@pcppopper.org>
|
||||
" URL: http://www.pcppopper.org/vim/syntax/pcp/calendar/
|
||||
" Latest Revision: 2004-05-06
|
||||
" arch-tag: d714127d-469d-43bd-9c79-c2a46ec54535
|
||||
" Language: calendar(1) input file
|
||||
" Maintainer: Nikolai Weibull <nikolai+work.vim@bitwi.se>
|
||||
" Latest Revision: 2005-06-29
|
||||
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
" Todo
|
||||
syn keyword calendarTodo contained TODO FIXME XXX NOTE
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Comments
|
||||
syn region calendarComment matchgroup=calendarComment start='/\*' end='\*/' contains=calendarTodo
|
||||
syn keyword calendarTodo contained TODO FIXME XXX NOTE
|
||||
|
||||
" Strings
|
||||
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 calendarComment matchgroup=calendarComment
|
||||
\ start='/\*' end='\*/'
|
||||
\ contains=calendarTodo,@Spell
|
||||
|
||||
" cpp(1) Preprocessor directives (adapted from syntax/c.vim)
|
||||
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 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
|
||||
|
||||
" Keywords
|
||||
syn keyword calendarKeyword CHARSET BODUN LANG
|
||||
syn keyword calendarKeyword CHARSET BODUN LANG
|
||||
syn case ignore
|
||||
syn keyword calendarKeyword Easter Pashka
|
||||
syn keyword calendarKeyword Easter Pashka
|
||||
syn case match
|
||||
|
||||
" Dates
|
||||
syn case ignore
|
||||
syn match calendarNumber '\<\d\+\>'
|
||||
syn keyword calendarMonth Jan[uary] Feb[ruary] Mar[ch] Apr[il] May Jun[e]
|
||||
syn keyword calendarMonth Jul[y] Aug[ust] Sep[tember] Oct[ober]
|
||||
syn keyword calendarMonth Nov[ember] Dec[ember]
|
||||
syn match calendarMonth '\<\%(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 '\<\%(Mon\|Tue\|Wed\|Thu\|Fri\|Sat\|Sun\)\.' nextgroup=calendarWeekdayMod
|
||||
syn match calendarWeekdayMod '[+-]\d\+\>'
|
||||
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
|
||||
|
||||
" Times
|
||||
syn match calendarTime '\<\%([01]\=\d\|2[0-3]\):[0-5]\d\%(:[0-5]\d\)\='
|
||||
syn match calendarTime '\<\%(0\=[1-9]\|1[0-2]\):[0-5]\d\%(:[0-5]\d\)\=\s*[AaPp][Mm]'
|
||||
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]'
|
||||
|
||||
" Variables
|
||||
syn match calendarVariable '\*'
|
||||
syn match calendarVariable '\*'
|
||||
|
||||
let b:c_minlines = 50 " #if 0 constructs can be long
|
||||
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
|
||||
|
||||
" 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_calendar_syn_inits")
|
||||
if version < 508
|
||||
let did_calendar_syn_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
|
||||
HiLink calendarTodo Todo
|
||||
HiLink calendarComment Comment
|
||||
HiLink calendarCppString String
|
||||
HiLink calendarSpecial SpecialChar
|
||||
HiLink calendarPreCondit PreCondit
|
||||
HiLink calendarCppOut Comment
|
||||
HiLink calendarCppOut2 calendarCppOut
|
||||
HiLink calendarCppSkip calendarCppOut
|
||||
HiLink calendarIncluded String
|
||||
HiLink calendarInclude Include
|
||||
HiLink calendarDefine Macro
|
||||
HiLink calendarPreProc PreProc
|
||||
HiLink calendarKeyword Keyword
|
||||
HiLink calendarNumber Number
|
||||
HiLink calendarMonth String
|
||||
HiLink calendarWeekday String
|
||||
HiLink calendarWeekdayMod Special
|
||||
HiLink calendarTime Number
|
||||
HiLink calendarVariable Identifier
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
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"
|
||||
|
||||
" vim: set sts=2 sw=2:
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
Reference in New Issue
Block a user