Vim response quite slow
如果我打开一个包含5,000行代码的文件并继续输入,我发现我的vim变得非常慢,它在大约1秒后显示我的输入。
在我启动
那么你可以给我任何建议或告诉我如何在vim中调试吗? 我发现有一个调试选项,但无法获得如何工作。
启动vim时可以使用
1 2 3 4 5 6 7 | --startuptime {fname} *--startuptime* During startup write timing messages to the file {fname}. This can be used to find out where time is spent while loading your .vimrc, plugins and opening the first file. When {fname} already exists new messages are appended. (Only available when compiled with the |+startuptime| feature). |
请按照以下步骤诊断问题:
-
在bash中键入
vim --startuptime log.txt main.java 以启动vim -
在vim中键入
:tabe log.txt 以查看日志。
缓慢的原因通常是在vim的编译时没有设置或错误设置ruby_path(另请参阅关于google vim / ruby?? google group的讨论)。在vimrc中设置它更容易,因为你可以在不重新编译vim的情况下进行更改。您可以通过.vimrc文件中的g:ruby_path变量设置路径。不要复制和粘贴两者,使用正确的。
如果你设置RBENV你必须使用这个:
1 2 | " ruby path if you are using rbenv let g:ruby_path = system('echo $HOME/.rbenv/shims') |
如果你设置RVM,你必须使用这个:
1 2 | " ruby path if you are using RVM let g:ruby_path = system('rvm current') |
您也可以使用vim-rbenv插件,它也设置路径。
对我来说,在vim中加载ruby特定函数的部分速度提高了10倍。
如果你使用的是jruby,那么启动速度可能会更大。请参阅此处修复示例。
这样的事情通常是由语法着色引起的。尝试使用
如果运行vim 7.4,
把它放在你的.vimrc中
设置regexpengine = 1
vim 7.4有一个新的正则表达式引擎,在某些情况下看起来效果不佳。以前的版本vim 7.3使用旧引擎(设置regexpengine = 1)。
语法突出显示问题的"慢响应"也会影响vim帮助文件(和.vimrc文件)。
将这些行添加到
1 2 3 | set lazyredraw " don't redraw everytime set synmaxcol=128 " avoid slow rendering for long lines syntax sync minlines=64 " faster syntax hl |
此外,如果您使用的是tmux,请考虑将其添加到
1 | set -sg escape-time 10 |