Add coc.nvim with all kind of settings, etc.

NvChad
David Holland 2021-03-28 20:42:48 +02:00
parent 5f7e88312c
commit f0811a86fe
Signed by: DustVoice
GPG Key ID: 47068995A14EDCA9
2 changed files with 74 additions and 1 deletions

View File

@ -1,3 +1,4 @@
"Here you can define your own custom settings like
"let g:use_sound = 1
"let g:use_autocomplete = 2
"let g:use_autocomplete = 1
"let g:use_coc = 1

View File

@ -97,6 +97,7 @@ let g:use_autocomplete=1
let g:use_bufkill = 1
let g:use_buftabline = 1
let g:use_clang_format = 0
let g:use_coc = 0
let g:use_comfortable_motion = 0
let g:use_cpp = 1
let g:use_font = 0
@ -111,6 +112,7 @@ let g:use_nerdtree = 1
let g:use_pandoc = 0
let g:use_polyglot = 0
let g:use_python = 1
let g:use_rust = 1
let g:use_sound = 0
let g:use_sxhkd = 1
let g:use_templator = 0
@ -265,6 +267,22 @@ if g:use_javacomplete == 1
endif
" ===
" ===
" CoC
" ===
if g:use_coc == 1
Plug 'neoclide/coc.nvim', {'branch': 'release'}
endif
" ===
" ===
" Rust
" ===
if g:use_rust == 1
Plug 'rust-lang/rust.vim'
endif
" ===
" ===
" Special functionality
" ===
@ -565,6 +583,60 @@ if g:use_autocomplete == 3
endif
" ===
" ===
" Setup CoC
" ===
if g:use_coc == 1
set updatetime=300
set shortmess+=c
if has("patch-8.1.1564")
set signcolumn=number
else
set signcolumn=yes
endif
inoremap <silent><expr> <C-Space> coc#refresh()
nmap <silent> [g <Plug>(coc-diagnostic-prev)
nmap <silent> ]g <Plug>(coc-diagnostic-next)
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)
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
endfunction
autocmd CursorHold * silent call CocActionAsync('highlight')
nmap <leader>rn <Plug>(coc-rename)
xmap <leader>f <Plug>(coc-format-selected)
nmap <leader>f <Plug>(coc-format-selected)
xmap <leader>a <Plug>(coc-codeaction-selected)
nmap <leader>a <Plug>(coc-codeaction-selected)
nmap <leader>ac <Plug>(coc-codeaction)
nmap <leader>qf <Plug>(coc-fix-current)
nnoremap <silent> <leader>y :<C-u>CocList -A --normal yank<CR>
let g:coc_gloabl_extensions = ['coc-clangd', 'coc-cmake', 'coc-html', 'coc-html-css-support', 'coc-java', 'coc-json', 'coc-markdownlint', 'coc-omnisharp', 'coc-prettier', 'coc-pyright', 'coc-rust-analyzer', 'coc-sh', 'coc-snippets', 'coc-xml', 'coc-yank']
endif
" ===
" ===
" Setup fswitch
" ===