Skip to content

Commit 668575c

Browse files
committed
Feat (hover): Add setting to hide hover information empty error
1 parent 04428c9 commit 668575c

File tree

2 files changed

+24
-4
lines changed

2 files changed

+24
-4
lines changed

autoload/lsp/internal/document_hover/under_cursor.vim

Lines changed: 23 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -81,11 +81,30 @@ function! lsp#internal#document_hover#under_cursor#getpreviewwinid() abort
8181
return v:null
8282
endfunction
8383

84+
function s:check_hover_response_empty(response) abort
85+
if !has_key(a:response, 'result')
86+
return 1
87+
endif
88+
89+
if empty(a:response['result'])
90+
return 1
91+
endif
92+
93+
if empty(a:response['result']['contents'])
94+
return 1
95+
endif
96+
97+
return 0
98+
endfunction
99+
84100
function! s:show_hover(ui, server_name, request, response) abort
85-
if !has_key(a:response, 'result') || empty(a:response['result']) ||
86-
\ empty(a:response['result']['contents'])
87-
call lsp#utils#error('No hover information found in server - ' . a:server_name)
88-
return
101+
if s:check_hover_response_empty(a:response) == 1
102+
if g:lsp_hover_echo_empty_message == 1
103+
call lsp#utils#error('No hover information found in server - ' . a:server_name)
104+
return
105+
else
106+
return
107+
endif
89108
endif
90109

91110
echo ''

plugin/lsp.vim

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@ let g:lsp_show_workspace_edits = get(g:, 'lsp_show_workspace_edits', 0)
6969
let g:lsp_fold_enabled = get(g:, 'lsp_fold_enabled', 1)
7070
let g:lsp_hover_conceal = get(g:, 'lsp_hover_conceal', 1)
7171
let g:lsp_hover_ui = get(g:, 'lsp_hover_ui', '')
72+
let g:lsp_hover_echo_empty_message = get(g:, 'lsp_hover_echo_empty_message', 1)
7273
let g:lsp_ignorecase = get(g:, 'lsp_ignorecase', &ignorecase)
7374
let g:lsp_semantic_enabled = get(g:, 'lsp_semantic_enabled', 0)
7475
let g:lsp_semantic_delay = get(g:, 'lsp_semantic_delay', 500)

0 commit comments

Comments
 (0)