diff --git a/INSTALL.md b/INSTALL.md index 70b13d36..b30beed8 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -64,21 +64,14 @@ Restart neovim and run `:call dein#install()` to install. ## Manual -Clone this repo into some place, e.g., `~/.vim-plugins` +Clone this repo into `vim` plugin dir. ```sh -mkdir -p ~/.vim-plugins -cd ~/.vim-plugins +mkdir -p ~/.vim/pack/git-plugins/start +cd ~/.vim/pack/git-plugins/start git clone --depth 1 https://github.com/autozimu/LanguageClient-neovim.git -cd LanguageClient-neovim -bash install.sh -``` - -Add this plugin to vim/neovim `runtimepath`, - -```vim -set runtimepath+=~/.vim-plugins/LanguageClient-neovim ``` +Then use `:LanguageClientInstallBinaries` to download `languageclient`. # Install language servers diff --git a/autoload/LanguageClient.vim b/autoload/LanguageClient.vim index 5c279dbe..c6438941 100644 --- a/autoload/LanguageClient.vim +++ b/autoload/LanguageClient.vim @@ -794,11 +794,21 @@ function! LanguageClient#binaryPath() abort return l:path . l:filename endfunction +function! LanguageClient#installBinaries() abort + let l:installsh = 'cd ' . s:root . ' && ./install.sh' + let l:output = split(system(l:installsh), '\n') + for l:line in l:output + echomsg l:line + endfor + echomsg 'Success.' +endfunction + function! s:Launch() abort let l:binpath = LanguageClient#binaryPath() if executable(l:binpath) != 1 - call s:Echoerr('LanguageClient: binary (' . l:binpath . ') doesn''t exists! Please check installation guide.') + call s:Echoerr('LanguageClient: binary (' . l:binpath . ') doesn''t exists!') + call s:Echoerr('Run :LanguageClientInstallBinaries or check installation guide.') return 0 endif diff --git a/install.sh b/install.sh index 97b7a6a6..a12181c0 100755 --- a/install.sh +++ b/install.sh @@ -13,7 +13,7 @@ arch=$(uname -sm) try_curl() { command -v curl > /dev/null && \ - curl --fail --location "$1" --output bin/$name + curl --fail --silent --show-error --location "$1" --output bin/$name } try_wget() { diff --git a/plugin/LanguageClient.vim b/plugin/LanguageClient.vim index 93a667fb..59a7239a 100644 --- a/plugin/LanguageClient.vim +++ b/plugin/LanguageClient.vim @@ -156,6 +156,7 @@ endfunction command! -nargs=* LanguageClientStart :call LanguageClient#startServer() command! LanguageClientStop call LanguageClient#shutdown() +command! LanguageClientInstallBinaries :call LanguageClient#installBinaries() function! s:OnBufEnter() if !LanguageClient#HasCommand(&filetype)