Vim response quite slow

You can use the --startuptime option when start vim:

--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).

Take following steps to diagnose the problem:

  • type vim --startuptime log.txt main.java in bash to start vim
  • type :tabe log.txt in vim to view the log.

The reason for slowness is often the not set or wrong set ruby_path on compile time of vim (see also discussion on google vim/ruby google group). It is easier to set it in vimrc, because you can change it without recompiling vim. You can set the path through the g:ruby_path variable in your .vimrc file. Don't copy and paste both, use the right one.

If you setup RBENV you have to use this one:

" ruby path if you are using rbenv
let g:ruby_path = system('echo $HOME/.rbenv/shims')

If you setup RVM you have to use this one:

" ruby path if you are using RVM
let g:ruby_path = system('rvm current')

You can also use the vim-rbenv plugin, which sets the path too.

For me the part on loading ruby specific functions in vim got 10 times faster.

If you are using jruby, than the start up slowliness can be even bigger. See examples for fixing it here.


If running vim 7.4,

put this in your .vimrc

set regexpengine=1

vim 7.4 has a new regex engine that appear not to work well in some situations. Previous version vim 7.3 used the old engine ( set regexpengine=1 ).

The "slow response" from syntax highlighting problem affects the vim help files as well ( and .vimrc file too ).

Tags:

Vim

Editor