diff --git a/.config/nvim/init.vim b/.config/nvim/init.vim index c9fd5c6..208584a 100644 --- a/.config/nvim/init.vim +++ b/.config/nvim/init.vim @@ -9,6 +9,17 @@ call plug#begin() +" better completion +Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' } +if filereadable(expand("~/.config/deoplete")) + let g:deoplete#enable_at_startup = 1 +endif +Plug 'deoplete-plugins/deoplete-clang' +Plug 'deoplete-plugins/deoplete-jedi' +Plug 'deoplete-plugins/deoplete-go', { 'do': 'make' } +Plug 'deoplete-plugins/deoplete-docker' +Plug 'carlitux/deoplete-ternjs', { 'do': 'npm install -g tern' } + " rust Plug 'rust-lang/rust.vim' @@ -42,11 +53,6 @@ autocmd FileType go nmap b (go-build) autocmd FileType go nmap r (go-run) " K -> :GoDoc -" c -Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' } -let g:deoplete#enable_at_startup = 1 -Plug 'deoplete-plugins/deoplete-clang' - " vue Plug 'posva/vim-vue' diff --git a/.config/yadm/bootstrap b/.config/yadm/bootstrap index cd1904e..67307ce 100755 --- a/.config/yadm/bootstrap +++ b/.config/yadm/bootstrap @@ -5,6 +5,7 @@ set -eu # Parse options nicetohave=true +deoplete=true go=false rust=false rootzsh=false @@ -14,6 +15,8 @@ while [ $# != 0 ]; do case "$1" in nonicetohave) nicetohave=false;; nicetohave) nicetohave=true;; + nodeoplete) deoplete=false;; + deoplete) deoplete=true;; nogo) go=false;; go) go=true;; norust) rust=false;; @@ -272,6 +275,23 @@ $nicetohave && download_minio_client # Install editor plugins +# Neovim bindings, Deoplete Python +case $ID in + macos) $deoplete && pip3 install --no-cache-dir --user neovim jedi;; + alpine) $deoplete && packages_add py3-pynvim py3-jedi;; + fedora|debian|ubuntu) $deoplete && packages_add python3-neovim python3-jedi;; +esac +# Deoplete clang +case $ID in + macos) $deoplete && brew install llvm --with-clang;; + alpine) $deoplete && packages_add clang clang-extra-tools;; + fedora) $deoplete && packages_add clang clang-tools-extra;; + debian|ubuntu) $deoplete && packages_add clang clang-format;; +esac +# Deoplete Go +$deoplete && $go && go get -u github.com/stamblerre/gocode +$deoplete && touch ~/.config/deoplete +# Plug install download_nvim_plug nvim +PlugInstall +qa || true diff --git a/.docker/alpine-rust b/.docker/alpine-rust index 978f62c..f4d0c2e 100644 --- a/.docker/alpine-rust +++ b/.docker/alpine-rust @@ -15,7 +15,7 @@ RUN chmod go-rwx .gnupg USER ambrose -RUN ./.config/yadm/bootstrap rootzsh rust +RUN ./.config/yadm/bootstrap rootzsh nodeoplete rust LABEL org.opencontainers.image.title="environment" LABEL org.opencontainers.image.url="https://github.com/serverwentdown/env" diff --git a/.docker/alpine-slim b/.docker/alpine-slim index 2a71c47..11ab412 100644 --- a/.docker/alpine-slim +++ b/.docker/alpine-slim @@ -15,7 +15,7 @@ RUN chmod go-rwx .gnupg USER ambrose -RUN ./.config/yadm/bootstrap rootzsh nonicetohave nogo norust +RUN ./.config/yadm/bootstrap rootzsh nonicetohave nodeoplete nogo norust LABEL org.opencontainers.image.title="environment" LABEL org.opencontainers.image.url="https://github.com/serverwentdown/env" diff --git a/.docker/fedora-rust b/.docker/fedora-rust index 26751f3..ff06873 100644 --- a/.docker/fedora-rust +++ b/.docker/fedora-rust @@ -16,7 +16,7 @@ RUN chmod go-rwx .gnupg USER ambrose -RUN ./.config/yadm/bootstrap rootzsh rust +RUN ./.config/yadm/bootstrap rootzsh nodeoplete rust LABEL org.opencontainers.image.title="environment" LABEL org.opencontainers.image.url="https://github.com/serverwentdown/env"