diff options
Diffstat (limited to 'vim/after/ftplugin')
-rw-r--r-- | vim/after/ftplugin/tex/folding.vim | 34 | ||||
-rw-r--r-- | vim/after/ftplugin/vim/folding.vim | 25 |
2 files changed, 59 insertions, 0 deletions
diff --git a/vim/after/ftplugin/tex/folding.vim b/vim/after/ftplugin/tex/folding.vim new file mode 100644 index 0000000..2e8b612 --- /dev/null +++ b/vim/after/ftplugin/tex/folding.vim @@ -0,0 +1,34 @@ +function! TexFolds() + let thisline = getline(v:lnum) + if match(thisline,'^\\chapter') >= 0 + return ">1" + elseif match(thisline,'^\\section') >= 0 + return ">1" + elseif match(thisline,'^\\subsection') >=0 + return ">1" + elseif match(thisline,'^\\subsubsection') >=0 + return ">1" + else + return "=" + endif +endfunction + +function! TexFoldText() + let startline = getline(v:foldstart) + let title = substitute(startline,'^.*{\(.*\)}.*$','\1',"") + if match(startline,'^\\chapter') >= 0 + return '*' . title . '' + elseif match(startline,'^\\section') >= 0 + return ' # ' . title + elseif match(startline,'^\\subsection') >=0 + return ' ## ' . title + elseif match(startline,'^\\subsubsection') >=0 + return ' ### ' . title + else + echom "Error, fold not recognized" + endif +endfunction + +setlocal foldmethod=expr +setlocal foldexpr=TexFolds() +setlocal foldtext=TexFoldText() diff --git a/vim/after/ftplugin/vim/folding.vim b/vim/after/ftplugin/vim/folding.vim new file mode 100644 index 0000000..773b38e --- /dev/null +++ b/vim/after/ftplugin/vim/folding.vim @@ -0,0 +1,25 @@ +function! VimFolds() + let thisline = getline(v:lnum) + if match(thisline,'^"" ') >= 0 + return ">1" + elseif match(thisline,'^" ') >=0 + return ">1" + else + return "=" + endif +endfunction + +function! VimFoldText() + let startline = getline(v:foldstart) + if match(startline,'^"" ') >= 0 + let title = substitute(startline,'^"" \(.*\)$','\1',"") + return '# ' . title + elseif match(startline,'^" ') >=0 + let title = substitute(startline,'^" \(.*\)$','\1',"") + return ' ## ' .title + endif +endfunction + +setlocal foldmethod=expr +setlocal foldexpr=VimFolds() +setlocal foldtext=VimFoldText() |