[nvim] add niceties for rust
This commit is contained in:
parent
6e36ec0980
commit
18db8ae84c
@ -1,34 +1,37 @@
|
|||||||
packadd minpac
|
packadd minpac
|
||||||
call minpac#init()
|
call minpac#init()
|
||||||
" minpac must have {'type': 'opt'} so that it can be loaded with `packadd`.
|
" minpac must have {'type': 'opt'} so that it can be loaded with `packadd`.
|
||||||
call minpac#add('k-takata/minpac', {'type': 'opt'})
|
call minpac#add('k-takata/minpac', {'type': 'opt'})
|
||||||
call minpac#add('honza/vim-snippets', {'type': 'start'})
|
call minpac#add('honza/vim-snippets', {'type': 'start'})
|
||||||
call minpac#add('SirVer/ultisnips')
|
call minpac#add('SirVer/ultisnips')
|
||||||
call minpac#add('junegunn/limelight.vim')
|
call minpac#add('junegunn/limelight.vim')
|
||||||
call minpac#add('junegunn/goyo.vim')
|
call minpac#add('junegunn/goyo.vim')
|
||||||
call minpac#add('junegunn/fzf')
|
call minpac#add('junegunn/fzf')
|
||||||
call minpac#add('junegunn/fzf.vim')
|
call minpac#add('junegunn/fzf.vim')
|
||||||
call minpac#add('ambv/black')
|
call minpac#add('ambv/black')
|
||||||
call minpac#add('davidhalter/jedi-vim')
|
call minpac#add('davidhalter/jedi-vim')
|
||||||
call minpac#add('vim-airline/vim-airline')
|
call minpac#add('vim-airline/vim-airline')
|
||||||
call minpac#add('ap/vim-css-color')
|
call minpac#add('ap/vim-css-color')
|
||||||
call minpac#add('fatih/vim-go')
|
call minpac#add('fatih/vim-go')
|
||||||
call minpac#add('dpelle/vim-Grammalecte')
|
call minpac#add('dpelle/vim-Grammalecte')
|
||||||
call minpac#add('ledger/vim-ledger')
|
call minpac#add('ledger/vim-ledger')
|
||||||
call minpac#add('tpope/vim-markdown')
|
call minpac#add('tpope/vim-markdown')
|
||||||
call minpac#add('nfnty/vim-nftables')
|
call minpac#add('nfnty/vim-nftables')
|
||||||
call minpac#add('adborden/vim-notmuch-address')
|
call minpac#add('adborden/vim-notmuch-address')
|
||||||
call minpac#add('cespare/vim-toml')
|
call minpac#add('cespare/vim-toml')
|
||||||
call minpac#add('pbrisbin/vim-mkdir')
|
call minpac#add('pbrisbin/vim-mkdir')
|
||||||
call minpac#add('tpope/vim-eunuch')
|
call minpac#add('tpope/vim-eunuch')
|
||||||
call minpac#add('lambdalisue/suda.vim')
|
call minpac#add('lambdalisue/suda.vim')
|
||||||
call minpac#add('airblade/vim-gitgutter')
|
call minpac#add('airblade/vim-gitgutter')
|
||||||
call minpac#add('rust-lang/rust.vim')
|
call minpac#add('rust-lang/rust.vim')
|
||||||
call minpac#add('thaerkh/vim-indentguides')
|
call minpac#add('thaerkh/vim-indentguides')
|
||||||
call minpac#add('vim-syntastic/syntastic')
|
call minpac#add('vim-syntastic/syntastic')
|
||||||
call minpac#add('majutsushi/tagbar')
|
call minpac#add('majutsushi/tagbar')
|
||||||
call minpac#add('Shougo/deoplete.nvim')
|
call minpac#add('Shougo/deoplete.nvim')
|
||||||
call minpac#add('racer-rust/vim-racer')
|
call minpac#add('racer-rust/vim-racer')
|
||||||
|
call minpac#add('neomake/neomake')
|
||||||
|
call minpac#add('ervandew/supertab')
|
||||||
|
call minpac#add('dense-analysis/ale')
|
||||||
|
|
||||||
command! PackUpdate call minpac#update()
|
command! PackUpdate call minpac#update()
|
||||||
command! PackClean call minpac#clean()
|
command! PackClean call minpac#clean()
|
||||||
@ -69,6 +72,7 @@ set expandtab
|
|||||||
set tabstop=4
|
set tabstop=4
|
||||||
set shiftwidth=4
|
set shiftwidth=4
|
||||||
set softtabstop=4
|
set softtabstop=4
|
||||||
|
set pastetoggle=<F2>
|
||||||
"set formatoptions=tcrqn2w
|
"set formatoptions=tcrqn2w
|
||||||
"set formatlistpat=^\\s*[\\d\\*-]\\+[\\]:.)}\\t\ ]\\s*
|
"set formatlistpat=^\\s*[\\d\\*-]\\+[\\]:.)}\\t\ ]\\s*
|
||||||
|
|
||||||
@ -85,7 +89,7 @@ match RedundantSpaces /\s\+$\| \+\ze\t\|\t/
|
|||||||
|
|
||||||
" Jump to the last position when reopening a file
|
" Jump to the last position when reopening a file
|
||||||
if has("autocmd")
|
if has("autocmd")
|
||||||
au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif
|
au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
nmap <F8> :TagbarToggle<CR>
|
nmap <F8> :TagbarToggle<CR>
|
||||||
@ -181,3 +185,32 @@ let g:syntastic_always_populate_loc_list = 1
|
|||||||
let g:syntastic_auto_loc_list = 1
|
let g:syntastic_auto_loc_list = 1
|
||||||
let g:syntastic_check_on_open = 1
|
let g:syntastic_check_on_open = 1
|
||||||
let g:syntastic_check_on_wq = 0
|
let g:syntastic_check_on_wq = 0
|
||||||
|
|
||||||
|
" Racer
|
||||||
|
augroup Racer
|
||||||
|
autocmd!
|
||||||
|
autocmd FileType rust nmap <buffer> gd <Plug>(rust-def)
|
||||||
|
autocmd FileType rust nmap <buffer> gs <Plug>(rust-def-split)
|
||||||
|
autocmd FileType rust nmap <buffer> gx <Plug>(rust-def-vertical)
|
||||||
|
autocmd FileType rust nmap <buffer> gt <Plug>(rust-def-tab)
|
||||||
|
autocmd FileType rust nmap <buffer> <leader>gd <Plug>(rust-doc)
|
||||||
|
autocmd FileType rust nmap <buffer> <leader>gD <Plug>(rust-doc-tab)
|
||||||
|
augroup END
|
||||||
|
|
||||||
|
" rust https://dev.to/drmason13/configure-neovim-for-rust-development-1fjn
|
||||||
|
" setup rust_analyzer LSP (IDE features)
|
||||||
|
"lua require'nvim_lsp'.rust_analyzer.setup{}
|
||||||
|
|
||||||
|
" Use LSP omni-completion in Rust files
|
||||||
|
"autocmd Filetype rust setlocal omnifunc=v:lua.vim.lsp.omnifunc
|
||||||
|
|
||||||
|
" Enable deoplete autocompletion in Rust files
|
||||||
|
let g:deoplete#enable_at_startup = 1
|
||||||
|
|
||||||
|
" Press Tab to scroll _down_ a list of auto-completions
|
||||||
|
let g:SuperTabDefaultCompletionType = "<c-n>"
|
||||||
|
|
||||||
|
" ale rust-analyser
|
||||||
|
let g:ale_linters = {'rust': ['analyzer']}
|
||||||
|
|
||||||
|
nnoremap <leader>c :!cargo clippy
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user