From: Julien Moutinho Date: Tue, 29 Jul 2014 02:10:04 +0000 (+0200) Subject: Correction : vim/syntax/hledger.vim X-Git-Tag: v2014.08.02~8 X-Git-Url: https://git.cyclocoop.org/?p=tool%2Fhledger.git;a=commitdiff_plain;h=cb540d8637cf0196f2bd2a192597afe9fadcdf19 Correction : vim/syntax/hledger.vim --- diff --git a/vim/syntax/hledger.vim b/vim/syntax/hledger.vim index 3f58d7a..1943692 100644 --- a/vim/syntax/hledger.vim +++ b/vim/syntax/hledger.vim @@ -8,7 +8,6 @@ if exists("b:current_syntax") finish endif - syn clear syn sync fromstart syn sync linebreaks=1 @@ -22,41 +21,53 @@ syn match hledgerAccountSeparator ":" contained syn region hledgerInclude start=/^!include/ end=/^/ syn region hledgerDirective start=/^[A-Z]/ end=/^/ contains=hledgerComment -syn region hledgerTransaction start=/^\d[^ ]\+ / end=/^\s*$/ -syn match hledgerTransactionHead "^[0-9/]\+\(=[0-9/]\+\)\?\(\s\+[!*]\)\?" contained containedin=hledgerTransaction -syn match hledgerTransactionDate "[0-9/]\+" contained containedin=hledgerTransactionHead -syn match hledgerTransactionComment ";.*" contained containedin=hledgerTransaction,hledgerPosting,hledgerPostingOdd +syn region hledgerTransaction start=/^\d[^ ]\+/ end=/^\s*$/ +syn match hledgerTransactionHead "^[0-9/]\+\(=[0-9/]\+\)\?\(\s\+[!*]\)\?" contained containedin=hledgerTransaction nextgroup=hledgerTransactionDescription +syn match hledgerTransactionDate "[0-9/]\+" contained containedin=hledgerTransactionHead +syn match hledgerTransactionDescription "\s[^;]\+"ms=s+1 contained containedin=hledgerTransaction +syn match hledgerTransactionComment ";.*" contained containedin=hledgerTransaction,hledgerPosting,hledgerPostingOdd -syn region hledgerPostingOdd start=/^\s\+[^; ]/ end=/^/ contained containedin=hledgerTransaction nextgroup=hledgerPosting -syn region hledgerPosting start=/^\s\+[^; ]/ end=/^/ contained containedin=hledgerTransaction nextgroup=hledgerPostingOdd +syn match hledgerPostingAmountOdd " \(\s*[^; ]\+\)\+"ms=s+0 contained containedin=hledgerPostingOdd contains=hledgerNumberOdd +syn match hledgerPostingAmount " \(\s*[^; ]\+\)\+"ms=s+0 contained containedin=hledgerPosting contains=hledgerNumber syn match hledgerPostingAccountOdd "^\s\+[^; ][^; ]*" contained containedin=hledgerPostingOdd nextgroup=hledgerPostingAmountOdd contains=hledgerNumberOdd,hledgerAccountSeparatorOdd syn match hledgerPostingAccount "^\s\+[^; ][^; ]*" contained containedin=hledgerPosting nextgroup=hledgerPostingAmount contains=hledgerNumber,hledgerAccountSeparator -syn match hledgerPostingAmountOdd " *\([^;]*\|$\)" contained containedin=hledgerPostingOdd contains=hledgerNumberOdd -syn match hledgerPostingAmount " *\([^;]*\|$\)" contained containedin=hledgerPosting contains=hledgerNumber +syn region hledgerPostingOdd start=/^\s\+[^; ]/ end=/^/ contained containedin=hledgerTransaction nextgroup=hledgerPosting +syn region hledgerPosting start=/^\s\+[^; ]/ end=/^/ contained containedin=hledgerTransaction nextgroup=hledgerPostingOdd -syn match hledgerTag /[^:, ]\+:[^,]*/ contained containedin=hledgerTransactionComment nextgroup=hledgerTagValue -syn match hledgerTagValue /:[^,]*/ms=s+1 contained containedin=hledgerTag +syn match hledgerTag /[^;, :]\+:[^;,]*/ contained containedin=hledgerTransactionComment nextgroup=hledgerTagValue +syn match hledgerTagValue /[^;, :]:[^,;]*/ms=s+2 contained containedin=hledgerTag if version >= 508 || !exists("did_hledger_syntax_inits") - hi hledgerComment term=bold cterm=bold ctermfg=6 ctermbg=0 gui=bold guifg=#4169E1 - hi hledgerInclude term=bold cterm=bold gui=bold - hi hledgerDirective term=bold cterm=bold gui=bold - hi hledgerAccountSeparatorOdd term=bold cterm=bold ctermfg=3 ctermbg=none gui=bold guifg=black guibg=gray90 - hi hledgerAccountSeparator term=bold cterm=bold ctermfg=3 ctermbg=none gui=bold guifg=black guibg=lightgreen - hi hledgerNumberOdd term=bold cterm=bold ctermfg=4 ctermbg=none gui=bold guifg=blue guibg=gray90 - hi hledgerNumber term=bold cterm=bold ctermfg=4 ctermbg=none gui=bold guifg=blue guibg=lightgreen - hi hledgerPostingOdd cterm=bold ctermbg=none guibg=gray90 - hi hledgerPosting cterm=bold ctermbg=none guibg=lightgreen - hi hledgerPostingAccountOdd term=underline cterm=bold ctermfg=0 ctermbg=none guifg=gray30 guibg=gray90 - hi hledgerPostingAccount term=underline cterm=bold ctermfg=0 ctermbg=none guifg=gray30 guibg=lightgreen - hi hledgerPostingAmountOdd cterm=bold ctermfg=3 ctermbg=none gui=bold guibg=gray90 - hi hledgerPostingAmount cterm=bold ctermfg=3 ctermbg=none gui=bold guibg=lightgreen - hi hledgerTag term=bold cterm=bold ctermfg=3 ctermbg=none gui=bold guifg=orange - hi hledgerTagValue term=bold cterm=bold ctermfg=1 ctermbg=none gui=NONE guifg=red - hi hledgerTransaction cterm=bold ctermbg=none gui=bold - hi hledgerTransactionComment term=bold cterm=bold ctermfg=6 ctermbg=none gui=bold guifg=#4169E1 - hi hledgerTransactionDate cterm=bold ctermfg=5 ctermbg=none gui=bold guibg=lightgoldenrod - hi hledgerTransactionHead term=bold cterm=bold ctermfg=3 ctermbg=none gui=bold guifg=black guibg=lightgreen + if version < 508 + let did_hledger_syntax_inits = 1 + command! -nargs=+ HiLink hi link + else + command! -nargs=+ HiLink hi def link + endif + hi SpecialKey gui=bold guifg=lightgoldenrod + hi Comment term=bold cterm=bold ctermfg=6 ctermbg=0 gui=bold guifg=#4169E1 + hi Comment term=bold cterm=bold ctermfg=6 ctermbg=0 gui=bold guifg=#4169E1 + HiLink hledgerComment Comment + hi hledgerInclude term=bold cterm=bold gui=bold + hi hledgerDirective term=bold cterm=bold gui=bold + hi hledgerAccountSeparatorOdd term=bold cterm=bold ctermfg=3 ctermbg=none gui=bold guifg=DarkGoldenrod2 guibg=gray90 + hi hledgerAccountSeparator term=bold cterm=bold ctermfg=3 ctermbg=none gui=bold guifg=DarkGoldenrod2 guibg=lightgreen + hi hledgerNumberOdd term=bold cterm=bold ctermfg=4 ctermbg=none gui=bold guifg=blue guibg=gray90 + hi hledgerNumber term=bold cterm=bold ctermfg=4 ctermbg=none gui=bold guifg=blue guibg=lightgreen + hi hledgerPostingOdd cterm=bold ctermbg=none guibg=NONE + hi hledgerPosting cterm=bold ctermbg=none guibg=NONE + hi hledgerPostingAccountOdd term=underline cterm=bold ctermfg=0 ctermbg=none guifg=gray30 guibg=gray90 + hi hledgerPostingAccount term=underline cterm=bold ctermfg=0 ctermbg=none guifg=gray30 guibg=lightgreen + hi hledgerPostingAmountOdd cterm=bold ctermfg=3 ctermbg=none gui=bold guifg=DarkGoldenrod2 guibg=gray90 + hi hledgerPostingAmount cterm=bold ctermfg=3 ctermbg=none gui=bold guifg=DarkGoldenrod2 guibg=lightgreen + hi hledgerTag term=bold cterm=bold ctermfg=3 ctermbg=none gui=bold guifg=orange + hi hledgerTagValue term=bold cterm=bold ctermfg=1 ctermbg=none gui=NONE guifg=red + hi hledgerTransaction cterm=bold ctermbg=none gui=bold + hi hledgerTransactionComment term=bold cterm=bold ctermfg=6 ctermbg=none gui=bold guifg=#4169E1 + hi hledgerTransactionDate cterm=bold ctermfg=5 ctermbg=none gui=bold guibg=lightgoldenrod + hi hledgerTransactionDescription cterm=bold ctermfg=5 ctermbg=none gui=bold guibg=lightgoldenrod + hi hledgerTransactionHead term=bold cterm=bold ctermfg=3 ctermbg=none gui=bold guifg=black guibg=lightgreen + delcommand HiLink endif let b:current_syntax = "hledger"