我在 .vimrc 中包含了以下自訂折疊
let g:Tex_FoldedEnvironments = ',frame,block,algorithm'
frame
我有和的完美折疊block
,但沒有 for algorithm
。它會折疊algorithm
除最後一行之外的所有行\end{algorithm}
。
我該如何修正這個問題?
僅供參考,我的完整 .vimrc 如下:
execute pathogen#infect()
" from vim-latex installation manual
filetype plugin on
set shellslash
filetype indent on
let g:tex_flavor='latex'
let g:Tex_AdvancedMath = 1 " provides <Alt> mappings, overrides ASCII char insertion
" set winaltkeys=no " if there conflicts with menubar shortcuts
"compilation rules
let g:tex_flavor='latex'
let g:Tex_DefaultTargetFormat='pdf'
" let g:Tex_CompileRule_pdf = 'pdflatex -interaction=batchmode $*'
let g:Tex_CompileRule_pdf = 'pdflatex -interaction=nonstopmode $*'
" Folding keyworkds
let g:Tex_FoldedEnvironments = ',frame,block,algorithm'
" mapping compile to w and W
map :ww :w<cr><leader>ll<cr><leader>lv
map :WW :ww
" mapping Caps H,J,K,L to navigation
map J j
" map K k
" map L l
" map H h
"line numbering
set number
"Spell check
set spell
答案1
根據設計, vim-latexlet g:Tex_FoldedEnvironments='foo'
將會折疊任何以 開頭的環境foo
,這樣環境foo
、foobar
、 和foobaz
都會被折疊(參見8.2.2 Tex_FoldedEnvironments)。
不幸的是,vim-latex 似乎沒有檢查開始和結束環境是否匹配,因此找到 a \begin{algorithm
,之後第一次找到開始的東西\end{algorithm
就是該\end{algorithmic}
行。
中給出的相同建議8.2.2 Tex_FoldedEnvironments為了避免let g:Tex_FoldedEnvironments='foo'
折疊foo
和foobar
環境在這裡工作:let g:Tex_FoldedEnvironments=',algorithm}'
只會折疊algorithm
而不折疊algorithmic
。
雖然它看起來也應該正確let g:Tex_FoldedEnvironments=',algorithm,algorithmic'
折疊algorithmic
,但隨後\begin{algorithm}
與匹配\end{algorithmic}
,即使它已經折疊了algorithmic
。