Wie installiere ich YouComplete mit vim-plug in vim / nvim richtig?

17

Die einzige Dokumentation für die Installation von YCM scheint für Vundle zu sein und ich bin ziemlich neu in Vim-Plug und Plugins im Allgemeinen, daher bin ich mir nicht sicher, wie gut es in Vim-Plug übersetzt wird.

Kriegshymne
quelle
neovim hat es nicht installiert, vim-plug schon. Wo du es gesagt hast!

Antworten:

9

Neovim Version 0.1 hat bahnbrechende Änderungen. Es wird ein Verzeichnis verwendet. ~/.config/nvim (Unter Mac OS X können Linux oder Windows leicht unterschiedliche Pfade verwenden.)

Wenn Sie Ihre neovim Konfiguration unabhängig von vim Konfiguration möchten, können Sie umbenennen , .nvimrcum ~/.config/nvim/init.vim(die Dokumentation finden Sie hier und hier ).

Installieren Sie vim-plug unter ~/.config/nvim/autoload/plug.vim
Der Verzeichnisbaum sieht folgendermaßen aus:

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

In neovim , wenn Sie laufen :PlugInstall, vim-Stecker wird der Plugins auf den Pfad , den Sie in installiert angegebene init.vim
Verwenden.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'

Wenn Sie möchten, dass neovim den Speicherort des Plugins von vim verwendet, ersetzen Sie das Verzeichnis .config/nvimdurch einen Symlink mit dem Namen .config/nvim, der auf verweist.vim

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

Fügen Sie in .vim entweder einen init.vimähnlichen Link hinzu .vimrcoder fügen Sie einen Symlink mit dem Namen hinzu, init.vimauf den verwiesen werden soll.vimrc

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

In .vimrc

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

Wenn Sie neovim mit Homebrew installieren, finden Sie am Ende der Installation einige hilfreiche Informationen zum Festlegen der Symlinks: https://github.com/neovim/homebrew-neovim

Auch viele Leute erstellen ein Git-Repo in einem Verzeichnis mit dem Namen "dotfiles" oder ähnlich wie Versionskontroll-Konfigurationsdateien wie init.vimund .vimrc. Fügen Sie in anderen Verzeichnissen Symlinks zu Ihren Punktedateien hinzu
(z. B. ~/.config/neovim/init.vimkönnten Symlinks zu diesen vorhanden sein ~/dotfiles/init.vim).
Dies ist praktisch, wenn Sie einen neuen Computer einrichten .

Du vervollständigst mich

Als Kriegshymne erwähnt

pip install neovim

Für die Vervollständigung der C-Familiensprache:

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

https://github.com/Valloric/YouCompleteMe

Ich bin install.pygetrennt gelaufen und hatte keine gute Ein-Linien-Methode gesehen

Plug 'Valloric/YouCompleteMe', { 'do': './install.py' }
Piepton
quelle
2

Ich habe es geschafft, es zu installieren.

Was ich getan habe, war die Installation von Python für Neovim

pip install neovim

Das nächste was ich tat war

:PlugInstall YouCompleteMe

aus neovim heraus und die Installation wurde wie gewohnt gestartet (wenn alle üblichen YCM-Abhängigkeiten installiert sind).

Mein .nvimrc hatte immer noch die Sektion für YCM und ich denke, Vim-Plug verwendet diese immer noch.

Bearbeiten: Ich verstehe nicht, warum YCM in den alten Ordner "vim plugins" (/.vim) anstatt in den Ordner "neovim" installiert wird dachte, es wäre schlau genug ..) Ist es überhaupt eine gute Idee, Ordnerhierarchien wie diese freizugeben?

Das hatte ich in meinem .nvimrc

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

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

call plug#end()
Kriegshymne
quelle
1

Es ist wegen .vim / dir installiert

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

Versuchen:

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

Stattdessen wie oben beantwortet

Ben Whitaker
quelle