我使用了很多插件,在过去的6个月里,我发现了很多真棒的。但是我的Vim真的慢了。我做常量清理,但它没有帮助太多。@H_301_2@
我在那里,Vim是完全不可用。感觉像它每秒2-5帧,切换标签/缓冲区大约一秒钟,用hjkl滚动是非常可怕的,滞后是如此糟糕,甚至在插入模式下输入一个句子是混乱(由于滞后)。@H_301_2@
编辑:实际上,当我打开新的Vim实例的OK-ish,但在15分钟内,它变得不可用。@H_301_2@
我刚刚花了4个小时试图找出哪个插件或配置导致的痛苦。我没有成功。@H_301_2@
但是,我确实发现,删除此设置会导致所有的滞后:
语法on@H_301_2@
这3行结合语法使一切更糟。@H_301_2@
set t_Co=256 set background=dark colorscheme candyman
有趣。所以,语法高亮正在使Vim从超级snappy到令人难以置信的迟钝?@H_301_2@
我试图在“干净”模式下启用语法:
vim -u NONE@H_301_2@
它不是一个问题。@H_301_2@
所以,似乎是一个问题是语法突出显示结合一个或多个我的插件。我试过禁用束,没有运气。@H_301_2@
有什么办法做profiling吗?我手动测试相当耗尽。@H_301_2@
有人有类似的经验吗?也许可以快速窥视我的.vimrc,看看有没有响铃。
https://bitbucket.org/furion/dotfiles@H_301_2@
Bundle "gorodinskiy/vim-coloresque.git"
我建议阅读答案tho,好的见解。@H_301_2@
:au CursorMoved
如果有一堆重复的处理程序,那是你的问题。@H_301_2@
这里有一个从my .vimrc的autocmd学科的例子:@H_301_2@
augroup vimrc_autocmd autocmd! "toggle quickfix window autocmd BufReadPost quickfix map <buffer> <leader>qq :cclose<cr>|map <buffer> <c-p> <up>|map <buffer> <c-n> <down> autocmd FileType unite call s:unite_settings() " obliterate unite buffers (marks especially). autocmd BufLeave \[unite\]* if "nofile" ==# &buftype | setlocal bufhidden=wipe | endif " Jump to the last position when reopening a file autocmd BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g`\"" | endif " ...etc... augroup END
自动!在augroup块的开头,清除当前组(在这种情况下为vimrc_autocmd),然后重新添加autocmds。@H_301_2@