Added leader paradighm so I might actually use lsp more

This commit is contained in:
Warwick 2021-11-16 12:41:19 +00:00
parent e7073ec5a7
commit 744cbd90cf
2 changed files with 19 additions and 13 deletions

View file

@ -45,6 +45,8 @@ filetype plugin indent on " required
" see :h vundle for more details or wiki for FAQ
" Put your non-Plugin stuff after this line
" Plugin leader mappings
" Tab completion
inoremap <expr> <Tab> pumvisible() ? "\<C-n>" : "\<Tab>"
inoremap <expr> <S-Tab> pumvisible() ? "\<C-p>" : "\<S-Tab>"
@ -60,17 +62,18 @@ function! s:on_lsp_buffer_enabled() abort
setlocal omnifunc=lsp#complete
setlocal signcolumn=yes
if exists('+tagfunc') | setlocal tagfunc=lsp#tagfunc | endif
nmap <buffer> gd <plug>(lsp-definition)
nmap <buffer> gs <plug>(lsp-document-symbol-search)
nmap <buffer> gS <plug>(lsp-workspace-symbol-search)
nmap <buffer> gr <plug>(lsp-references)
nmap <buffer> gi <plug>(lsp-implementation)
nmap <buffer> gt <plug>(lsp-type-definition)
nmap <buffer> gx <plug>(lsp-document-diagnostics)
nmap <buffer> <leader>rn <plug>(lsp-rename)
nmap <buffer> [g <Plug>(lsp-previous-diagnostic)
nmap <buffer> ]g <Plug>(lsp-next-diagnostic)
nmap <buffer> K <plug>(lsp-hover)
nmap <buffer> <Leader>l? :echon " ld lsp-definition \n ls lsp document symbol search \n lS lsp workspace symbol search \n lr lsp references \n li lsp implementation \n lt lsp type definition \n lj lsp document diagnostics \n lrn lsp rename \n l[g lsp previous diagnostic \n l]g lsp next diagnostic \n lK lsp hover"<CR>
nmap <buffer> <leader>ld <plug>(lsp-definition)
nmap <buffer> <leader>ls <plug>(lsp-document-symbol-search)
nmap <buffer> <leader>lS <plug>(lsp-workspace-symbol-search)
nmap <buffer> <leader>lr <plug>(lsp-references)
nmap <buffer> <leader>li <plug>(lsp-implementation)
nmap <buffer> <leader>lt <plug>(lsp-type-definition)
nmap <buffer> <leader>lj <plug>(lsp-document-diagnostics)
nmap <buffer> <leader>lrn <plug>(lsp-rename)
nmap <buffer> <leader>l[g <Plug>(lsp-previous-diagnostic)
nmap <buffer> <leader>l]g <Plug>(lsp-next-diagnostic)
nmap <buffer> <leader>lK <plug>(lsp-hover)
let g:lsp_format_sync_timeout = 1000
autocmd! BufWritePre *.rs,*.go,*.cpp,*.c,*.h,*.cs call execute('LspDocumentFormatSync')

7
vimrc
View file

@ -95,7 +95,10 @@ hi CursorLine ctermbg=8 guibg=#404040
hi Cursor ctermbg=15
" set spellcheck
"set spell
" Remap Lex
nnoremap <C-n> :Lex<CR>
" Leader mapping
let mapleader = "\<Space>"
nnoremap <Leader>? :echon " n :Lex \n l? lsp help (if implemented in buffer)"<CR>
nnoremap <Leader>n :Lex<CR>
" Load Plugins
so ~/.vim/plugins.vim