diff --git a/init.vim b/init.vim index 833c71c..919f6ce 100644 --- a/init.vim +++ b/init.vim @@ -1,8 +1,6 @@ call plug#begin('~/.local/share/nvim/plugged') Plug 'davidhalter/jedi-vim' -Plug 'Shougo/deoplete.nvim', {'do': ':UpdateRemotePlugins'} -Plug 'zchee/deoplete-jedi' Plug 'ncm2/float-preview.nvim' Plug 'dense-analysis/ale' Plug 'jacoborus/tender.vim' @@ -11,19 +9,19 @@ Plug 'vim-airline/vim-airline-themes' Plug 'airblade/vim-gitgutter' Plug 'scrooloose/nerdtree' Plug 'gleam-lang/gleam.vim' +Plug 'cespare/vim-toml' +Plug 'rust-lang/rust.vim' +Plug 'vim-scripts/DrawIt' call plug#end() -let g:airline_theme='base16_atelierlakeside' +let g:airline_theme='papercolor' let g:airline#extensions#ale#enabled=1 -let g:deoplete#enable_at_startup=1 -" autocmd InsertLeave,CompleteDone * if pumvisible() == 0 | pclose | endif -inoremap pumvisible() ? "\" : "\" +inoremap pumvisible() ? "\" : "\" +inoremap pumvisible() ? "\" : "\" -" disable autocompletion, cause we use deoplete for completion let g:jedi#completions_enabled=0 -" open the go-to function in split, not another buffer let g:jedi#use_splits_not_buffers="right" " Preview window is floating @@ -45,12 +43,13 @@ set completeopt-=preview " Enable folding on indent set foldmethod=indent set foldlevel=79 +set omnifunc=ale#completion#OmniFunc " Lint and check types let b:ale_linters={ \ 'python': ['mypy', 'pyls', 'pylint'], \ 'ocaml': ['merlin'], -\ 'rust': ['rls'] +\ 'rust': ['analyzer', 'cargo'] \ } let b:ale_fixers = { \ 'rust': ['rustfmt'], @@ -58,9 +57,11 @@ let b:ale_fixers = { \ 'ocaml': ['ocamlformat'] \} -let g:ale_rust_rls_executable = 'rust-analyzer' +let g:ale_rust_rustfmt_options='--edition 2018' + let g:ale_fix_on_save=1 let g:ale_lint_on_save=1 +let g:ale_lint_on_enter=0 let g:ale_list_window_size=20 " Use .venv as a global default let g:ale_virtualenv_dir_names=['.venv'] @@ -76,6 +77,8 @@ let b:ale_warn_about_trailing_whitespace=1 nmap e :ALEDetail noremap d :ALEGoToDefinition +noremap g] :ALEGoToDefinition +noremap h :ALEHover " ALE colors highlight ALEError ctermbg=DarkRed ctermfg=Black @@ -100,8 +103,15 @@ highlight Folded ctermbg=Green ctermfg=Black highlight Pmenu ctermbg=gray guibg=gray highlight GitGutterAdd ctermfg=Green -highlight GitGutterChange ctermfg=Yellow +highlight GitGutterChange ctermfg=Red highlight GitGutterDelete ctermfg=DarkRed +highlight GitGutterAddLine ctermbg=LightGreen +highlight GitGutterChangeLine ctermbg=Yellow +highlight GitGutterDeleteLine ctermbg=LightRed +highlight GitGutterChangeDeleteLine ctermbg=LightRed + +nmap ]h (GitGutterNextHunk) +nmap [h (GitGutterPrevHunk) let g:gitgutter_sign_added='+' let g:gitgutter_sign_modified='±' @@ -109,14 +119,15 @@ let g:gitgutter_sign_removed='-' let g:gitgutter_sign_removed_first_line='^' let g:gitgutter_sign_modified_removed='-' let g:gitgutter_map_keys=0 +let g:gitgutter_set_sign_backgrounds=1 " Toggles on different plugins/modes -noremap :ToggleMouse -inoremap :ToggleMousea +nmap :ToggleMouse +set pastetoggle= nmap :set nonumber! nmap :GitGutterBufferToggle nmap :NERDTreeToggle -set pastetoggle= +nmap :GitGutterLineHighlightsToggle autocmd FileType yaml setlocal ts=2 sts=2 sw=2 expandtab