You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
1.3 KiB
VimL
49 lines
1.3 KiB
VimL
11 years ago
|
" Vim syntax file
|
||
|
" Language: Taskpaper (http://hogbaysoftware.com/projects/taskpaper)
|
||
|
" Maintainer: David O'Callaghan <david.ocallaghan@cs.tcd.ie>
|
||
|
" URL: https://github.com/davidoc/taskpaper.vim
|
||
|
" Last Change: 2012-03-07
|
||
|
|
||
|
if version < 600
|
||
|
syntax clear
|
||
|
elseif exists("b:current_syntax")
|
||
|
finish
|
||
|
endif
|
||
|
|
||
|
if version < 508
|
||
|
command! -nargs=+ HiLink hi link <args>
|
||
|
else
|
||
|
command! -nargs=+ HiLink hi def link <args>
|
||
|
endif
|
||
|
|
||
|
" Define tag styles
|
||
|
if !exists('g:task_paper_styles')
|
||
|
let g:task_paper_styles = {'FAIL': 'guibg=Red guifg=White'}
|
||
|
endif
|
||
|
|
||
|
syn case ignore
|
||
|
|
||
|
syn match taskpaperComment /^.*$/ contains=taskpaperContext
|
||
|
syn match taskpaperProject /^.\+:\(\s\+@[^ \t(]\+\(([^)]*)\)\?\)*$/ contains=taskpaperContext
|
||
|
syn match taskpaperListItem /^\t*-\s\+/
|
||
|
syn match taskpaperContext /\s\zs@[^ \t(]\+\(([^)]*)\)\?/
|
||
|
syn match taskpaperDone /^.*\s@done\(\(\s\|([^)]*)\).*\)\?$/
|
||
|
syn match taskpaperCancelled /^.*\s@cancelled\(\(\s\|([^)]*)\).*\)\?$/
|
||
|
|
||
|
syn sync fromstart
|
||
|
|
||
|
"highlighting for Taskpaper groups
|
||
|
HiLink taskpaperListItem Identifier
|
||
|
HiLink taskpaperContext Identifier
|
||
|
HiLink taskpaperProject Title
|
||
|
HiLink taskpaperDone NonText
|
||
|
HiLink taskpaperCancelled NonText
|
||
|
HiLink taskpaperComment Comment
|
||
|
|
||
|
call taskpaper#tag_style_dict(g:task_paper_styles)
|
||
|
|
||
|
let b:current_syntax = "taskpaper"
|
||
|
|
||
|
delcommand HiLink
|
||
|
" vim: ts=8
|