Qual é a maneira correta de instalar o YouComplete usando o vim-plug no vim / nvim?

17

A única documentação para instalar o YCM parece ser para o Vundle e eu sou bastante novo no vim-plug e plugins em geral, então não tenho certeza de quão bem ele se traduz no vim-plug.

briga de guerra
fonte
o neovim não instalou, o vim-plug instalou. Para onde você disse isso!

Respostas:

9

A versão 0.1 do neovim possui alterações de última hora. Ele usa o diretório ~/.config/nvim (no Mac OS X. Linux ou Windows podem usar caminhos ligeiramente diferentes.)

Se você deseja que sua configuração neovim seja independente da configuração do vim, é possível renomear .nvimrcpara ~/.config/nvim/init.vim(Consulte os documentos aqui e aqui ).

Instale o vim-plug em ~/.config/nvim/autoload/plug.vim
A árvore de diretórios é semelhante a esta:

.config
├── nvim
    ├── autoload
    │   └── plug.vim
    ├── init.vim
    └── plugged
        ├── YouCompleteMe
        ├── ctrlp.vim

No neovim, quando você executa :PlugInstall, o vim-plug instala seus plugins no caminho especificado em init.vim
Usar.config/nvim/plugged

" for vim
" call plug#begin('~/.vim/plugged')
" for neovim
call plug#begin('~/.config/nvim/plugged')
" Keep Plug commands between plug#begin/end.
Plug 'https://github.com/Valloric/YouCompleteMe'

Se você quiser neovim usar localização plug-in do vim, substituir diretório .config/nvimcom um link simbólico chamado .config/nvimque aponta para.vim

ln -s ~/.vim ~/.config/nvim

No .vim, adicione init.vimsimilar a .vimrc, ou adicione o link simbólico nomeado init.vimpara apontar para.vimrc

ln -s ~/.vimrc ~/.vim/init.vim

Em .vimrc

call plug#begin('~/.vim/plugged')

Se você usar o Homebrew para instalar o neovim, no final da instalação, ele fornecerá algumas informações úteis sobre a configuração dos links simbólicos: https://github.com/neovim/homebrew-neovim

Muitas pessoas também criam um repositório git em um diretório chamado "dotfiles" ou semelhante aos arquivos de configuração de controle de versão como init.vime .vimrc. Em outros diretórios, adicione links simbólicos aos seus arquivos de ponto
(por exemplo, ~/.config/neovim/init.vimpode ser ligado a um link simbólico ~/dotfiles/init.vim).
Isso é útil ao configurar uma nova máquina.

Você me completa

Como o guerreiro mencionou

pip install neovim

Para conclusão da linguagem da família C:

cd ~/.config/nvim/plugged/YouCompleteMe
./install.py

https://github.com/Valloric/YouCompleteMe

Corri install.pyseparadamente, não tinha visto o método de uma linha bacana

Plug 'Valloric/YouCompleteMe', { 'do': './install.py' }
beepscore
fonte
2

Eu consegui instalá-lo.

O que eu fiz foi instalar o python para neovim usando

pip install neovim

A próxima coisa que fiz foi

:PlugInstall YouCompleteMe

a partir do neovim e ele começou a instalar normalmente (se você tiver todas as dependências YCM habituais instaladas).

Meu .nvimrc ainda tinha a seção para YCM e acho que o vim-plug ainda os usa.

Edit: Eu não entendo por que o YCM é instalado na pasta antiga de plugins do vim (/.vim) em vez da pasta do neovim (bem, sim, porque eu o especifiquei, mas o neovim não deve instalar plugins na sua própria estrutura de pastas? pensei que seria inteligente o suficiente ..) É uma boa idéia compartilhar hierarquias de pastas assim?

Isto é o que eu tinha no meu .nvimrc

call plug#begin('~/.vim/plugged')

" Make sure you use single quotes
Plug 'Valloric/YouCompleteMe', { 'do': './install.py' }

call plug#end()
briga de guerra
fonte
1

Ele está instalado no .vim / dir, devido a

call plug#begin('~/.vim/plugged')

experimentar:

call plug#begin('~/.config/nvim/plugged')

Em vez disso, como respondido acima

Ben Whitaker
fonte