diff --git a/.config/nvim/init.vim b/.config/nvim/init.vim index 6469110..4dbbbef 100644 --- a/.config/nvim/init.vim +++ b/.config/nvim/init.vim @@ -2,27 +2,40 @@ map :NERDTreeToggle map :TagbarToggle -" Init Autocomplete -inoremap coc#refresh() +" Required for operations modifying multiple buffers like rename. +set hidden + +let g:LanguageClient_serverCommands = { +\ 'rust': ['rust-analyzer'] +\ } + " Navigate Completion List -inoremap pumvisible() ? "\" : "\" -inoremap pumvisible() ? "\" : "\" +inoremap pumvisible() ? "\" : "\" +inoremap pumvisible() ? "\" : "\" " Confirm Selection inoremap pumvisible() ? "\" : "\u\" - - +" LanguageClient Options +nnoremap :call LanguageClient_contextMenu() " Plugged Plugins call plug#begin(stdpath('data') . '/plugged') + +" Delimiter Autocompletion +Plug 'raimondi/delimitmate' + " One Dark Theme Plug 'joshdick/onedark.vim' +" Monokai Theme +Plug 'tomasr/molokai' + " Tender Theme Plug 'jacoborus/tender.vim' +" Not too sure if this extension is necessary tbh Plug 'sheerun/vim-polyglot' " Powerline Bar at bottom of screen @@ -37,8 +50,14 @@ Plug 'vim-syntastic/syntastic' " Rust Support Plug 'rust-lang/rust.vim' -" Languace Server Protocol Support -Plug 'neoclide/coc.nvim', {'branch': 'release'} +" Language Server Protocol Support +Plug 'autozimu/LanguageClient-neovim', { 'branch': 'next', 'do': 'bash install.sh', } + +" Autocomplete +Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' } + +" Fuzzy Search +Plug 'junegunn/fzf' " Multiple Cursors Plug 'terryma/vim-multiple-cursors' @@ -48,17 +67,28 @@ Plug 'preservim/nerdtree' " NerdTree Icons (Should be last according to docs) Plug 'ryanoasis/vim-devicons' + +" Better Rust Synatax Highlighting +Plug 'arzg/vim-rust-syntax-ext' + call plug#end() " Autosave with rust-fmt (Rust Only) let g:rustfmt_autosave = 1 +" Enable Autocomplete +let g:deoplete#enable_at_startup = 1 " Install Tender for Lightline -let g:lightline = { 'colorscheme': 'onedark' } +let g:lightline = { 'colorscheme': 'molokai' } + +" Let The LSP Client know which Language servers to use +let g:LanguageClient_serverCommands = { +\ 'rust': ['rust-analyzer'] +\ } " Configuration set noshowmode " Not Needed because we have Lightline -colorscheme onedark +colorscheme molokai