每当我切换到它时,VIM刷新缓冲区

时间:2011-03-02 11:45:45

标签: vim scp

我正在使用VIM编辑SCP上的文件,因此读取和写入文件是非常缓慢的过程。

出于某种原因,每当我切换到缓冲区时,VIM都会从磁盘读取它。状态栏显示:〜@ k。

我已经在我的.vimrc中禁用了所有自动命令,但我还没有BufEnter的自动命令。知道我可能会缺少什么吗?

更新:我发现了一个罪魁祸首,一个不是自动命令的字数宏。现在,当我切换它时,它会更快,但仍然很慢。状态栏说^ Ww。

更新2:我在下面尝试了ZyX的答案(谢谢!!)。结果:

1)设置eventignore = all绝对解决它;它的速度非常快。但 2)尝试调试它对我不起作用。

我尝试了:debug buffer scp-buffer-name:debug wincmd p并得到了:

  

进入调试模式。输入“cont”继续。

     

cmd:wincmd p

     

第1行:对于m in filter(copy(fuf#getModeNames()),'fuf#{v:val} #requiresOnCommandPre()')`

然后无论我键入什么(s,n,“cont”),该单行都会重复。它显然与Fuzzy Finder插件有关,我使用了很多,这是我使用VIM的一个关键原因。有什么想法吗?

再次感谢您的帮助。非常感谢,XyZ!

问题已解决:确实是模糊查找器。它具有MRU-File模式,在切换缓冲区时,文档说明可能会导致性能问题。我禁用了这种模式,现在VIM又快了!谢谢!

1 个答案:

答案 0 :(得分:4)

首先,使用set eventignore=all测试此行为。如果问题得到解决,请尝试切换到scp缓冲区使用(确保你没有设置eventignore)debug buffer scp-buffer-namedebug wincmd p(取决于你何时看到问题),它将打开调试模式,你会能够看到它正在执行的所有自动命令(使用s[tep]n[ext]移动到下一个命令,有关详细信息,请参阅:h >next:h >step