Bram Moolenaar | 5c73622 | 2010-01-06 20:54:52 +0100 | [diff] [blame] | 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. |
| 9 | if version < 600 |
| 10 | syntax clear |
| 11 | elseif exists("b:current_syntax") |
| 12 | finish |
| 13 | endif |
Bram Moolenaar | 9a7224b | 2012-04-30 15:56:52 +0200 | [diff] [blame] | 14 | let s:keepcpo= &cpo |
| 15 | set cpo&vim |
Bram Moolenaar | 5c73622 | 2010-01-06 20:54:52 +0100 | [diff] [blame] | 16 | |
| 17 | " Key Names for values. |
| 18 | syn keyword taskdataKey description due end entry imask mask parent |
| 19 | syn keyword taskdataKey priority project recur start status tags uuid |
| 20 | syn match taskdataKey "annotation_\d\+" |
| 21 | syn match taskdataUndo "^time.*$" |
| 22 | syn match taskdataUndo "^\(old \|new \|---\)" |
| 23 | |
| 24 | " Values associated with key names. |
| 25 | " |
| 26 | " Strings |
| 27 | syn region taskdataString matchgroup=Normal start=+"+ end=+"+ |
| 28 | \ contains=taskdataEncoded,taskdataUUID,@Spell |
| 29 | " |
| 30 | " Special Embedded Characters (e.g., ",") |
| 31 | syn match taskdataEncoded "&\a\+;" contained |
| 32 | " UUIDs |
| 33 | syn match taskdataUUID "\x\{8}-\(\x\{4}-\)\{3}\x\{12}" contained |
| 34 | |
| 35 | |
| 36 | " The default methods for highlighting. Can be overridden later. |
| 37 | hi def link taskdataEncoded Function |
| 38 | hi def link taskdataKey Statement |
| 39 | hi def link taskdataString String |
| 40 | hi def link taskdataUUID Special |
| 41 | hi def link taskdataUndo Type |
| 42 | |
| 43 | let b:current_syntax = "taskdata" |
| 44 | |
Bram Moolenaar | 9a7224b | 2012-04-30 15:56:52 +0200 | [diff] [blame] | 45 | let &cpo = s:keepcpo |
| 46 | unlet s:keepcpo |
| 47 | |
Bram Moolenaar | 5c73622 | 2010-01-06 20:54:52 +0100 | [diff] [blame] | 48 | " vim:noexpandtab |