Compare commits
2 Commits
Author | SHA1 | Date |
---|---|---|
tforgione | 7bbf9b8c9b | |
Thomas Forgione | f1ee5b1aff |
71
init.vim
71
init.vim
|
@ -4,9 +4,6 @@ set nocompatible
|
|||
" PLUGNIS ###########################################################{{{
|
||||
call plug#begin()
|
||||
|
||||
" Conquer of Completion
|
||||
Plug 'neoclide/coc.nvim', {'branch': 'release'}
|
||||
|
||||
" General plugins
|
||||
Plug 'vim-airline/vim-airline'
|
||||
Plug 'vim-airline/vim-airline-themes'
|
||||
|
@ -16,6 +13,7 @@ Plug 'tpope/vim-abolish'
|
|||
|
||||
" Language specific plugins
|
||||
|
||||
|
||||
" Rust
|
||||
Plug 'rust-lang/rust.vim'
|
||||
|
||||
|
@ -28,9 +26,6 @@ Plug 'cespare/vim-toml'
|
|||
" Pug
|
||||
Plug 'digitaltoad/vim-pug'
|
||||
|
||||
" Spandex
|
||||
Plug 'rust-spandex/spandex.vim'
|
||||
|
||||
call plug#end()
|
||||
|
||||
" Line numbers and syntaxic coloration
|
||||
|
@ -45,7 +40,6 @@ set expandtab
|
|||
set tabstop=4
|
||||
set shiftwidth=4
|
||||
set autoindent
|
||||
set tw=120
|
||||
" }}}
|
||||
|
||||
" UI CONFIG #########################################################{{{
|
||||
|
@ -147,57 +141,22 @@ let g:markdown_composer_browser = 'firefox'
|
|||
let g:instant_markdown_autostart = 0
|
||||
" }}}
|
||||
|
||||
" COC CONFIG ########################################################{{{
|
||||
|
||||
" Use `[g` and `]g` to navigate diagnostics
|
||||
" Use `:CocDiagnostics` to get all diagnostics of current buffer in location list.
|
||||
nmap <silent> gp <Plug>(coc-diagnostic-prev)
|
||||
nmap <silent> gn <Plug>(coc-diagnostic-next)
|
||||
|
||||
" GoTo code navigation.
|
||||
nmap <silent> gd <Plug>(coc-definition)
|
||||
nmap <silent> gy <Plug>(coc-type-definition)
|
||||
nmap <silent> gi <Plug>(coc-implementation)
|
||||
nmap <silent> gr <Plug>(coc-references)
|
||||
|
||||
" Add `:Format` command to format current buffer.
|
||||
command! -nargs=0 Format :call CocAction('format')
|
||||
|
||||
" Use K to show documentation in preview window.
|
||||
nnoremap <silent> K :call <SID>show_documentation()<CR>
|
||||
|
||||
|
||||
function! s:show_documentation()
|
||||
if (index(['vim','help'], &filetype) >= 0)
|
||||
execute 'h '.expand('<cword>')
|
||||
elseif (coc#rpc#ready())
|
||||
call CocActionAsync('doHover')
|
||||
else
|
||||
execute '!' . &keywordprg . " " . expand('<cword>')
|
||||
endif
|
||||
function! s:check_back_space() abort
|
||||
let col = col('.') - 1
|
||||
return !col || getline('.')[col - 1] =~ '\s'
|
||||
endfunction
|
||||
|
||||
" Having longer updatetime (default is 4000 ms = 4 s) leads to noticeable
|
||||
" delays and poor user experience.
|
||||
set updatetime=300
|
||||
|
||||
" Highlight the symbol and its references when holding the cursor.
|
||||
autocmd CursorHold * silent call CocActionAsync('highlight')
|
||||
|
||||
" Symbol renaming.
|
||||
nmap <leader>rn <Plug>(coc-rename)
|
||||
|
||||
" Formatting selected code.
|
||||
xmap <leader>f <Plug>(coc-format-selected)
|
||||
nmap <leader>f <Plug>(coc-format-selected)
|
||||
|
||||
" Autoclose preview
|
||||
autocmd CursorMovedI * if pumvisible() == 0|pclose|endif
|
||||
autocmd InsertLeave * if pumvisible() == 0|pclose|endif
|
||||
|
||||
" Complete on tab
|
||||
inoremap <expr><TAB> pumvisible() ? "\<C-n>" : "\<TAB>"
|
||||
" }}}
|
||||
|
||||
" CUSTOM THINGS DEPENDING ON ENV ####################################{{{
|
||||
let g:rustfmt_autosave = 1
|
||||
let g:ale_linters = {}
|
||||
let g:ale_c_parse_compile_commands=1
|
||||
let g:ale_elm_ls_use_global = 1
|
||||
let g:ale_linters_ignore = { 'elm': ['make'] }
|
||||
let g:ale_lint_on_text_changed = 0
|
||||
if $NVIM_DISABLE_PYTHON_LINTER == '1'
|
||||
let g:ale_linters.python = []
|
||||
endif
|
||||
if $NVIM_DISABLE_JAVA_LINTER == '1'
|
||||
let g:ale_linters.java = []
|
||||
endif
|
||||
|
|
Loading…
Reference in New Issue