Fix: Folding by 'syntax' does nothing with Markdown syntax (Issue #1009)

This commit is contained in:
mtourneb
2020-09-05 16:12:46 -04:00
parent 1ea97303fd
commit 990b25ce37
8 changed files with 131 additions and 51 deletions
+12 -11
View File
@@ -149,19 +149,22 @@ let s:target = vimwiki#base#apply_template(
call s:add_target_syntax_ON(s:target, 'VimwikiLink')
" Header Level: 1..6
for s:i in range(1,6)
" WebLink are for markdown but putting them here avoidcode duplication
" -- and syntax folding Issue #1009
execute 'syntax match VimwikiHeader'.s:i
\ . ' /'.vimwiki#vars#get_syntaxlocal('rxH'.s:i, s:current_syntax).
\ '/ contains=VimwikiTodo,VimwikiHeaderChar,VimwikiNoExistsLink,VimwikiCode,'.
\ 'VimwikiLink,@Spell'
execute 'syntax region VimwikiH'.s:i.'Folding start=/'.
\ vimwiki#vars#get_syntaxlocal('rxH'.s:i.'_Start', s:current_syntax).'/ end=/'.
\ vimwiki#vars#get_syntaxlocal('rxH'.s:i.'_End', s:current_syntax).
\ '/me=s-1 transparent fold'
\ . ' /'.vimwiki#vars#get_syntaxlocal('rxH'.s:i, s:current_syntax)
\ . '/ contains=VimwikiTodo,VimwikiHeaderChar,VimwikiNoExistsLink,VimwikiCode,'
\ . 'VimwikiLink,VimwikiWeblink1,VimwikiWikiLink1,VimwikiList,VimwikiListTodo,@Spell'
execute 'syntax region VimwikiH'.s:i.'Folding start=/'
\ . vimwiki#vars#get_syntaxlocal('rxH'.s:i.'_Start', s:current_syntax).'/ end=/'
\ . vimwiki#vars#get_syntaxlocal('rxH'.s:i.'_End', s:current_syntax)
\ . '/me=s-1'
\ . ' transparent fold'
endfor
" SetExt Header:
" TODO mutualise SetExt Regexp
let setex_header1_re = '^\s\{0,3}[^>].*\n\s\{0,3}==\+$'
@@ -209,11 +212,9 @@ execute 'syn match VimwikiHeaderChar contained /\%(^\s*'.
\ vimwiki#vars#get_syntaxlocal('header_symbol').'\+\)\|\%('.vimwiki#vars#get_syntaxlocal('header_symbol').
\ '\+\s*$\)/'
execute 'syntax match VimwikiTodo /'. vimwiki#vars#get_global('rxTodo') .'/'
" Table:
syntax match VimwikiTableRow /^\s*|.\+|\s*$/
\ transparent contains=VimwikiCellSeparator,
@@ -234,7 +235,6 @@ syntax match VimwikiTableRow /^\s*|.\+|\s*$/
syntax match VimwikiCellSeparator /\%(|\)\|\%(-\@<=+\-\@=\)\|\%([|+]\@<=-\+\)/ contained
" List:
execute 'syntax match VimwikiList /'.vimwiki#vars#get_wikilocal('rxListItemWithoutCB').'/'
execute 'syntax match VimwikiList /'.vimwiki#vars#get_syntaxlocal('rxListDefine').'/'
@@ -345,6 +345,7 @@ if exists('+conceallevel') && tf.conceal != 0
endif
execute tag_cmd
" Header Groups: highlighting
if vimwiki#vars#get_global('hl_headers') == 0
" Strangely in default colorscheme Title group is not set to bold for cterm...
-10
View File
@@ -123,16 +123,6 @@ let s:target = vimwiki#base#apply_template(
call s:add_target_syntax_ON(s:wrap_wikilink1_rx(s:target), 'VimwikiWikiLink1')
" Header levels, 1-6
for s:i in range(1,6)
execute 'syntax match VimwikiHeader'.s:i.' /'.vimwiki#vars#get_syntaxlocal('rxH'.s:i).
\ '/ contains=VimwikiTodo,VimwikiHeaderChar,VimwikiNoExistsLink,VimwikiCode,'.
\ 'VimwikiLink,VimwikiWeblink1,VimwikiWikiLink1,@Spell'
endfor
" concealed chars
if exists('+conceallevel')
syntax conceal on