1" Vim syntax file 2" Language: task data 3" Maintainer: John Florian <[email protected]> 4" Updated: Wed Jul 8 19:46:20 EDT 2009 5 6 7" For version 5.x: Clear all syntax items. 8" For version 6.x: Quit when a syntax file was already loaded. 9if version < 600 10 syntax clear 11elseif exists("b:current_syntax") 12 finish 13endif 14let s:keepcpo= &cpo 15set cpo&vim 16 17" Key Names for values. 18syn keyword taskdataKey description due end entry imask mask parent 19syn keyword taskdataKey priority project recur start status tags uuid 20syn match taskdataKey "annotation_\d\+" 21syn match taskdataUndo "^time.*$" 22syn match taskdataUndo "^\(old \|new \|---\)" 23 24" Values associated with key names. 25" 26" Strings 27syn region taskdataString matchgroup=Normal start=+"+ end=+"+ 28 \ contains=taskdataEncoded,taskdataUUID,@Spell 29" 30" Special Embedded Characters (e.g., ",") 31syn match taskdataEncoded "&\a\+;" contained 32" UUIDs 33syn match taskdataUUID "\x\{8}-\(\x\{4}-\)\{3}\x\{12}" contained 34 35 36" The default methods for highlighting. Can be overridden later. 37hi def link taskdataEncoded Function 38hi def link taskdataKey Statement 39hi def link taskdataString String 40hi def link taskdataUUID Special 41hi def link taskdataUndo Type 42 43let b:current_syntax = "taskdata" 44 45let &cpo = s:keepcpo 46unlet s:keepcpo 47 48" vim:noexpandtab 49