解决 vim 插件 taglist 报错:Error detected while processing function

触发场景

clipboard.png

a.php 标签打开 taglist,而后打开 b.php 标签,此时再切回到 a.php 标签,vim 会报出一下错误信息:php

Error detected while processing function <SNR>29_Tlist_Refresh_Folds

解决办法

下载 taglist 补丁:taglist.diff
补丁内容以下:(若不能下载,能够复制此内容)html

diff --git a/vim/.vim/bundle/taglist/plugin/taglist.vim b/vim/.vim/bundle/taglist/plugin/taglist.vim
index 59901f6..74487a1 100644
--- a/vim/.vim/bundle/taglist/plugin/taglist.vim
+++ b/vim/.vim/bundle/taglist/plugin/taglist.vim
@@ -4097,6 +4097,11 @@ endfunction
 " window. Used after entering a tab. If this is not done, then the folds
 " are not properly created for taglist windows displayed in multiple tabs.
 function! s:Tlist_Refresh_Folds()
+
+    if g:Tlist_Show_One_File
+      return
+    endif
+
     let winnum = bufwinnr(g:TagList_title)
     if winnum == -1
         return

而后,应用此补丁:git

patch -p0 ~/.vim/plugged/taglist.vim/plugin/taglist.vim ~/Downloads/taglist.diff

注意: 插件位置由你所用的插件管理器决定,可能跟我不同。shell

参考:vim

相关文章
相关标签/搜索