Can YouCompleteMe be configured to start with fewer options?

I installed Vim’s YouCompleteMe with all the options for alchemist.vim and vim has become slow to start.

Is there some way to start Vim which will cause it to load YouCompleteMe in some kind of lazy manner or load its facilities only on demand?

Are you using a Vim build that is built with Python2 or Python3? A Python3 build should be much/significantly faster compared to a Python2 build. You can see what version of python your vim was built with by running the :python import sys; print(sys.version) command.

Also make sure you are entirely updated, recent patches (unsure if in release build or not, this was about 2 months ago) included a lot of speedups.

Should still give Spacemacs a try. ^.^

I have decided to go with Spacemacs for Elixir, especially with Magit, Eshell and the other goodies. Being able to work with iex in a proper shell requires Emacs, but I still have the desire to get a good Vim setup for other uses, especially small remote systems.

I think it is because I added support for C++, Javascript, Rust etc that YouCompleteMe has become slow.

I have checked my systems -

Output of debian jessie

:python import sys; print(sys.version)

2.7.9 (default, Jun 29 2016, 13:11:10)
[GCC 4.9.2]

   VIM - Vi IMproved    
                        
    version 7.4.576     
by Bram Moolenaar et al.

apt-cache policy vim

vim:                                                                      
  Installed: 2:7.4.488-7+deb8u2                                           
  Candidate: 2:7.4.488-7+deb8u2                                           
  Version table:                                                          
 *** 2:7.4.488-7+deb8u2 0                                                 
        500 http://security.debian.org/ jessie/updates/main amd64 Packages
        100 /var/lib/dpkg/status                                          
     2:7.4.488-7+deb8u1 0                                                 
        500 http://ftp.uni-erlangen.de/debian/ jessie/main amd64 Packages 

Output of debian sid

:python import sys; print(sys.version)

E319: Sorry, the command is not available in this version

apt-cache policy vim

vim:
  Installed: 2:8.0.0197-3
  Candidate: 2:8.0.0197-4
  Version table:
     2:8.0.0197-4 500
        500 http://ftp.uni-erlangen.de/debian unstable/main amd64 Packages
 *** 2:8.0.0197-3 100
        100 /var/lib/dpkg/status

start up screen

VIM - Vi IMproved   
                    
 version 8.0.378    
by Bram Moolenaar et al.

Why does the apt-cache policy output usually different from the version reported by Vim?

Because Vim builds python in to it internally as one of its scripting languages, including its own vimscript, lua, and a few others, depending on your build options, YCM uses Python, and Python2 in VIM is MUCH, like MUCH slower than Python3 in VIM.

1 Like