1" Vim syntax file 2" Language: task data 3" Maintainer: John Florian <jflorian@doubledog.org> 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 14 15" Key Names for values. 16syn keyword taskdataKey description due end entry imask mask parent 17syn keyword taskdataKey priority project recur start status tags uuid 18syn match taskdataKey "annotation_\d\+" 19syn match taskdataUndo "^time.*$" 20syn match taskdataUndo "^\(old \|new \|---\)" 21 22" Values associated with key names. 23" 24" Strings 25syn region taskdataString matchgroup=Normal start=+"+ end=+"+ 26 \ contains=taskdataEncoded,taskdataUUID,@Spell 27" 28" Special Embedded Characters (e.g., ",") 29syn match taskdataEncoded "&\a\+;" contained 30" UUIDs 31syn match taskdataUUID "\x\{8}-\(\x\{4}-\)\{3}\x\{12}" contained 32 33 34" The default methods for highlighting. Can be overridden later. 35hi def link taskdataEncoded Function 36hi def link taskdataKey Statement 37hi def link taskdataString String 38hi def link taskdataUUID Special 39hi def link taskdataUndo Type 40 41let b:current_syntax = "taskdata" 42 43" vim:noexpandtab 44