better and more correct handling of front matter

This commit is contained in:
Sencer Selcuk
2016-02-02 12:14:07 -05:00
parent 1a4686fce8
commit b52db95b7c

View File

@@ -22,11 +22,6 @@ endif
function! MarkdownFold() function! MarkdownFold()
let line = getline(v:lnum) let line = getline(v:lnum)
" Front matter
if v:lnum == 1 && line == '---'
return ">20"
endif
" Regular headers " Regular headers
let depth = match(line, '\(^#\+\)\@<=\( .*$\)\@=') let depth = match(line, '\(^#\+\)\@<=\( .*$\)\@=')
if depth > 0 if depth > 0
@@ -43,10 +38,16 @@ function! MarkdownFold()
return ">2" return ">2"
endif endif
" Front matter
if v:lnum == 1 && line == '---'
let b:markdown_frontmatter = 1
return ">1"
endif
" End of front matter " End of front matter
let prevline = getline(v:lnum - 1) if (line == '...') && b:markdown_frontmatter
if (prevline == '...') && (foldlevel(v:lnum-1) == 20) unlet b:markdown_frontmatter
return '>0' return '<1'
endif endif
return "=" return "="