call plug#end() let g:deoplete#enable_at_startup = 1 " line ending set fileformats=unix,dos " colours set t_Co=256 syntax enable set background=dark highlight clear SignColumn try colorscheme solarized catch /^Vim\%((\a\+)\)\=:E185/ colorscheme desert endtry " plugins: airline let g:bufferline_echo = 0 let g:airline_powerline_fonts = 1 let g:airline#extensions#tabline#enabled = 1 " plugins: rust let g:rustfmt_autosave = 1 if executable('ag') let g:ackprg = 'ag --vimgrep' endif if executable('rg') let g:ackprg = 'rg --no-heading --vimgrep' set grepprg=rg\ -i\ --vimgrep " Ripgrep on / command! -nargs=+ -complete=file -bar Rg silent! grep! |cwindow|redraw! nnoremap / :Rg endif if executable('rls') au User lsp_setup call lsp#register_server({ \ 'name': 'rls', \ 'cmd': {server_info->['rustup', 'run', 'nightly', 'rls']}, \ 'whitelist': ['rust'], \ }) let g:lsp_signs_enabled = 1 " enable signs let g:lsp_diagnostics_echo_cursor = 1 " enable echo under cursor when in normal mode nnoremap d :LspDefinition nnoremap r :LspReferences endif " fzf if executable('rg') let $FZF_DEFAULT_COMMAND = 'rg --files --no-messages "" .' set grepprg=rg\ --vimgrep endif let g:fzf_command_prefix = 'Fzf' if executable('fzf') nnoremap v :FzfFiles nnoremap u :FzfTags nnoremap j :call fzf#vim#tags("'".expand('')) if executable('rg') " :Find runs `rg ` and passes it to fzf command! -bang -nargs=* Find call fzf#vim#grep('rg --column --line-number --no-heading --fixed-strings --ignore-case --no-ignore --hidden --follow --glob "!.git/*" --color "always" '.shellescape(), 1, 0) nnoremap / :Find nnoremap ' :execute "Find " . expand("") endif else nnoremap v :CtrlP endif " appearance set number set relativenumber set laststatus=2 set noshowmode set showtabline=1 "only show tabline when more than 1 tab set statusline+=%#warningmsg# set statusline+=%{SyntasticStatuslineFlag()} set statusline+=%* " syntastic let g:syntastic_always_populate_loc_list = 1 let g:syntastic_aggregate_errors = 1 let g:syntastic_auto_loc_list = 1 let g:syntastic_check_on_open = 1 let g:syntastic_check_on_wq = 0 let g:syntastic_rust_checkers=['cargo'] " language server let g:LanguageClient_autoStart = 1 let g:LanguageClient_serverCommands = { 'rust': ['rustup', 'run', 'nightly', 'rls'] } " exclude quickfix from the buffers list augroup qf autocmd! autocmd FileType qf set nobuflisted augroup END " vimdiff set diffopt+=iwhite set diffexpr=""