nvim: init.vim: Add support for automatic hover
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
This commit is contained in:
parent
687804162c
commit
ba8f4776be
1 changed files with 42 additions and 10 deletions
|
@ -194,18 +194,50 @@ let g:LanguageClient_serverCommands = {
|
||||||
\ 'go' : ['$HOME/go/bin/gopls'],
|
\ 'go' : ['$HOME/go/bin/gopls'],
|
||||||
\ }
|
\ }
|
||||||
|
|
||||||
nnoremap <leader>ld :call LanguageClient#textDocument_definition()<CR>
|
nnoremap <Leader>ld :call LanguageClient#textDocument_definition()<CR>
|
||||||
nnoremap <leader>lr :call LanguageClient#textDocument_rename()<CR>
|
nnoremap <Leader>lr :call LanguageClient#textDocument_rename()<CR>
|
||||||
nnoremap <leader>lf :call LanguageClient#textDocument_formatting()<CR>
|
nnoremap <Leader>lf :call LanguageClient#textDocument_formatting()<CR>
|
||||||
nnoremap <leader>lt :call LanguageClient#textDocument_typeDefinition()<CR>
|
nnoremap <Leader>lt :call LanguageClient#textDocument_typeDefinition()<CR>
|
||||||
nnoremap <leader>lx :call LanguageClient#textDocument_references()<CR>
|
nnoremap <Leader>lx :call LanguageClient#textDocument_references()<CR>
|
||||||
nnoremap <leader>la :call LanguageClient_workspace_applyEdit()<CR>
|
nnoremap <Leader>la :call LanguageClient_workspace_applyEdit()<CR>
|
||||||
nnoremap <leader>lc :call LanguageClient#textDocument_completion()<CR>
|
nnoremap <Leader>lc :call LanguageClient#textDocument_completion()<CR>
|
||||||
nnoremap <leader>lh :call LanguageClient#textDocument_hover()<CR>
|
nnoremap <Leader>lh :call LanguageClient#textDocument_hover()<CR>
|
||||||
nnoremap <leader>ls :call LanguageClient_textDocument_documentSymbol()<CR>
|
nnoremap <Leader>ls :call LanguageClient_textDocument_documentSymbol()<CR>
|
||||||
nnoremap <leader>lm :call LanguageClient_contextMenu()<CR>
|
nnoremap <Leader>lm :call LanguageClient_contextMenu()<CR>
|
||||||
nnoremap <Leader>la :call LanguageClient#textDocument_codeAction()<CR>
|
nnoremap <Leader>la :call LanguageClient#textDocument_codeAction()<CR>
|
||||||
|
|
||||||
|
" https://github.com/autozimu/LanguageClient-neovim/issues/618
|
||||||
|
function! LspMaybeHover(is_running) abort
|
||||||
|
if a:is_running.result && g:LanguageClient_autoHoverAndHighlightStatus
|
||||||
|
call LanguageClient_textDocument_hover()
|
||||||
|
endif
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
function! LspMaybeHighlight(is_running) abort
|
||||||
|
if a:is_running.result && g:LanguageClient_autoHoverAndHighlightStatus
|
||||||
|
call LanguageClient#textDocument_documentHighlight()
|
||||||
|
endif
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
augroup lsp_aucommands
|
||||||
|
au!
|
||||||
|
au CursorHold * call LanguageClient#isAlive(function('LspMaybeHover'))
|
||||||
|
au CursorMoved * call LanguageClient#isAlive(function('LspMaybeHighlight'))
|
||||||
|
augroup END
|
||||||
|
|
||||||
|
let g:LanguageClient_autoHoverAndHighlightStatus = 0
|
||||||
|
|
||||||
|
function! ToggleLspAutoHoverAndHilight() abort
|
||||||
|
if g:LanguageClient_autoHoverAndHighlightStatus
|
||||||
|
let g:LanguageClient_autoHoverAndHighlightStatus = 0
|
||||||
|
call LanguageClient#clearDocumentHighlight()
|
||||||
|
echo ""
|
||||||
|
else
|
||||||
|
let g:LanguageClient_autoHoverAndHighlightStatus = 1
|
||||||
|
end
|
||||||
|
endfunction
|
||||||
|
nnoremap <Leader>lg :call ToggleLspAutoHoverAndHilight()<CR>
|
||||||
|
|
||||||
let g:haskell_enable_quantification = 1 " to enable highlighting of `forall`
|
let g:haskell_enable_quantification = 1 " to enable highlighting of `forall`
|
||||||
let g:haskell_enable_recursivedo = 1 " to enable highlighting of `mdo` and `rec`
|
let g:haskell_enable_recursivedo = 1 " to enable highlighting of `mdo` and `rec`
|
||||||
let g:haskell_enable_arrowsyntax = 1 " to enable highlighting of `proc`
|
let g:haskell_enable_arrowsyntax = 1 " to enable highlighting of `proc`
|
||||||
|
|
Loading…
Reference in a new issue