Updated table syntax to get toggled with table mode

This commit is contained in:
Dhruva Sagar
2014-05-30 12:05:31 +05:30
parent e7e806916f
commit 0f1254e1fe
2 changed files with 30 additions and 14 deletions

View File

@@ -85,8 +85,37 @@ function! s:ToggleMapping() "{{{2
endif
endfunction
function! tablemode#SyntaxEnable()
exec 'syntax match Table'
\ '/' . tablemode#table#StartExpr() . '\zs|.\+|\ze' . tablemode#table#EndExpr() . '/'
\ 'contains=TableBorder,TableSeparator,TableColumnAlign containedin=ALL'
syntax match TableSeparator /|/ contained
syntax match TableColumnAlign /:/ contained
syntax match TableBorder /[\-+]\+/ contained
hi! link TableBorder Delimiter
hi! link TableSeparator Delimiter
hi! link TableColumnAlign Type
endfunction
function! s:ToggleSyntax()
if tablemode#IsActive()
call tablemode#SyntaxEnable()
else
syntax clear Table
syntax clear TableBorder
syntax clear TableSeparator
syntax clear TableColumnAlign
hi! link TableBorder NONE
hi! link TableSeparator NONE
hi! link TableColumnAlign NONE
endif
endfunction
function! s:SetActive(bool) "{{{2
let b:table_mode_active = a:bool
call s:ToggleSyntax()
call s:ToggleMapping()
endfunction