From 282cea9babf35f29b429973a4e9993ab42b9eff9 Mon Sep 17 00:00:00 2001 From: Julian Ospald Date: Fri, 15 Jun 2018 22:05:00 +0200 Subject: [PATCH] Rust completion with deoplete --- after/ftplugin/rust.vim | 21 +++++++++++++++------ vimrc | 2 +- 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/after/ftplugin/rust.vim b/after/ftplugin/rust.vim index 09896a3..03f50d1 100644 --- a/after/ftplugin/rust.vim +++ b/after/ftplugin/rust.vim @@ -1,5 +1,3 @@ -let g:rustfmt_autosave = 0 - let g:tagbar_ctags_bin = '/usr/bin/universal-ctags' let g:rust_doc#define_map_K = 0 @@ -15,13 +13,13 @@ function! s:search_under_cursor(query) range endfunction " keys -nnoremap :call search_under_cursor(expand('')) -vnoremap "gy:call search_under_cursor(getreg('g')) +nnoremap :call search_under_cursor(expand('')) +vnoremap "gy:call search_under_cursor(getreg('g')) nnoremap :call LanguageClient_contextMenu() nnoremap :call LanguageClient#textDocument_definition() -nnoremap :call LanguageClient#textDocument_hover() -nnoremap :call LanguageClient#textDocument_rename() +nnoremap :call LanguageClient#textDocument_hover() +nnoremap :call LanguageClient#textDocument_rename() let g:LanguageClient_autoStart = 1 @@ -29,7 +27,18 @@ let g:LanguageClient_autoStart = 1 let g:LanguageClient_serverCommands = { \ 'rust': ['rustup', 'run', 'nightly', 'rls'] } +let g:LanguageClient_diagnosticsEnable = 0 + let g:ale_linters = {'rust': ['rls']} let g:ale_fixers = { 'rust': ['rustfmt'] } +let g:ale_fix_on_save = 0 let g:autofmt_autosave = 0 + +" deoplete +call deoplete#custom#option('sources',{ + \ '_': ['buffer'], + \ 'rust': ['ultisnips', 'buffer', 'file', 'LanguageClient'] + \ }) +inoremap pumvisible() ? "\" : "\" +call deoplete#enable() diff --git a/vimrc b/vimrc index 333ec85..1400c4e 100644 --- a/vimrc +++ b/vimrc @@ -59,7 +59,7 @@ Plug 'LucHermitte/local_vimrc' " completion Plug 'Valloric/YouCompleteMe', { 'do': './install.py --clang-completer --go-completer --rust-completer --system-boost --system-libclang', - \ 'for': ['c', 'python', 'sh', 'go', 'clojure', 'rust'], + \ 'for': ['c', 'python', 'sh', 'go', 'clojure'], \ } " deoplete for haskell if has('nvim')