Quelle est la bonne façon d'installer YouComplete en utilisant vim-plug dans vim / nvim?

17

La seule documentation pour l'installation de YCM semble être pour Vundle et je suis assez nouveau pour vim-plug et les plugins en général, donc je ne sais pas dans quelle mesure cela se traduit par vim-plug.

chant de guerre
la source
neovim ne l'a pas installé, vim-plug l'a fait. Où tu l'as dit!

Réponses:

9

la version 0.1 de neovim a des changements de rupture. Il utilise un répertoire ~/.config/nvim (sous Mac OS X. Linux ou Windows peuvent utiliser des chemins légèrement différents.)

Si vous voulez que votre configuration neovim indépendante de la configuration vim, vous pouvez renommer .nvimrcà ~/.config/nvim/init.vim(Voir les documents ici et ici ).

Installez vim-plug dans ~/.config/nvim/autoload/plug.vim
L'arborescence des répertoires ressemble à ceci:

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

Dans neovim lorsque vous exécutez :PlugInstall, vim-plug installera vos plugins sur le chemin que vous avez spécifié dans init.vim
Utiliser.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'

Si vous voulez que neovim utilise l'emplacement du plugin de vim, remplacez le répertoire .config/nvimpar un lien symbolique nommé .config/nvimqui pointe vers.vim

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

Dans .vim, ajoutez soit init.vimsimilaire à .vimrc, soit ajoutez un lien symbolique nommé init.vimpour pointer vers.vimrc

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

Dans .vimrc

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

Si vous utilisez Homebrew pour installer neovim, à la fin de l'installation, il fournit des informations utiles sur la configuration des liens symboliques: https://github.com/neovim/homebrew-neovim

De nombreuses personnes créent également un dépôt git dans un répertoire nommé "dotfiles" ou similaire aux fichiers de configuration de contrôle de version comme init.vimet .vimrc. Dans d'autres répertoires, ajoutez des liens symboliques à vos fichiers de points
(par exemple, ils ~/.config/neovim/init.vimpeuvent être liés à ~/dotfiles/init.vim).
Ceci est pratique lors de la configuration d'une nouvelle machine.

Tu me complètes

Comme l'a mentionné le chant de guerre

pip install neovim

Pour l'achèvement du langage de la famille C:

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

https://github.com/Valloric/YouCompleteMe

J'ai couru install.pyséparément, je n'avais pas vu de méthode astucieuse

Plug 'Valloric/YouCompleteMe', { 'do': './install.py' }
signal sonore
la source
2

J'ai réussi à l'installer.

J'ai installé python pour neovim en utilisant

pip install neovim

La prochaine chose que j'ai faite était

:PlugInstall YouCompleteMe

depuis neovim et l'installation a commencé comme d'habitude (si vous avez installé toutes les dépendances YCM habituelles).

Mon .nvimrc contenait toujours la section pour YCM et je suppose que vim-plug les utilise toujours.

Edit: je ne comprends pas pourquoi YCM est installé dans l'ancien dossier des plugins vim (/.vim) au lieu du dossier de neovim (enfin je le fais, car je l'ai spécifié, mais neovim ne devrait-il pas installer de plugins dans sa propre structure de dossiers? I pensait que ce serait assez intelligent ..) Est-ce même une bonne idée de partager des hiérarchies de dossiers comme ça?

Voici ce que j'avais dans mon .nvimrc

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

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

call plug#end()
chant de guerre
la source
1

Il est installé dans le répertoire .vim / dir, à cause de

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

essayer:

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

Au lieu de cela, comme indiqué ci-dessus

Ben Whitaker
la source