diff options
author | Adam Stankiewicz <sheerun@sher.pl> | 2020-04-25 21:30:46 +0200 |
---|---|---|
committer | Adam Stankiewicz <sheerun@sher.pl> | 2020-04-25 21:30:46 +0200 |
commit | d757bfd643cc73c2d495355c153ed0257f5d5b47 (patch) | |
tree | ff210950456938a779d98f6a2ba7321aca512897 /autoload/vimtex/fold/comments.vim | |
parent | 8ec73a3a8974a62a613680a6b6222a77a7b99546 (diff) | |
download | vim-polyglot-d757bfd643cc73c2d495355c153ed0257f5d5b47.tar.gz vim-polyglot-d757bfd643cc73c2d495355c153ed0257f5d5b47.zip |
Change latex provider to luatex, closes #476
Diffstat (limited to '')
-rw-r--r-- | autoload/vimtex/fold/comments.vim | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/autoload/vimtex/fold/comments.vim b/autoload/vimtex/fold/comments.vim new file mode 100644 index 00000000..4a313064 --- /dev/null +++ b/autoload/vimtex/fold/comments.vim @@ -0,0 +1,46 @@ +if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'latex') == -1 + +" vimtex - LaTeX plugin for Vim +" +" Maintainer: Karl Yngve LervÄg +" Email: karl.yngve@gmail.com +" + +function! vimtex#fold#comments#new(config) abort " {{{1 + return extend(deepcopy(s:folder), a:config) +endfunction + +" }}}1 + + +let s:folder = { + \ 'name' : 'comments', + \ 're' : {'start' : '^\s*%'}, + \ 'opened' : 0, + \} +function! s:folder.level(line, lnum) abort dict " {{{1 + if exists('b:vimtex.fold_types_dict.markers.opened') + \ && b:vimtex.fold_types_dict.markers.opened | return | endif + + if a:line =~# self.re.start + let l:next = getline(a:lnum-1) !~# self.re.start + let l:prev = getline(a:lnum+1) !~# self.re.start + if l:next && !l:prev + let self.opened = 1 + return 'a1' + elseif l:prev && !l:next + let self.opened = 0 + return 's1' + endif + endif +endfunction + +" }}}1 +function! s:folder.text(line, level) abort dict " {{{1 + let l:lines = map(getline(v:foldstart, v:foldend), 'matchstr(v:val, ''%\s*\zs.*\ze\s*'')') + return matchstr(a:line, '^.*\s*%') . join(l:lines, ' ') +endfunction + +" }}}1 + +endif |