diff options
| author | Albert Cervin <albert@acervin.com> | 2025-11-05 23:24:20 +0100 |
|---|---|---|
| committer | Albert Cervin <albert@acervin.com> | 2025-11-05 23:24:20 +0100 |
| commit | bf913b7879235ff3d83f9c78722bd1f0a16f4562 (patch) | |
| tree | da53685cb03339f639f80b3da6639a7a1552e01f | |
| parent | adb65be595a207d6674b14885e3b82397e1ae59f (diff) | |
| download | dged-bf913b7879235ff3d83f9c78722bd1f0a16f4562.tar.gz dged-bf913b7879235ff3d83f9c78722bd1f0a16f4562.tar.xz dged-bf913b7879235ff3d83f9c78722bd1f0a16f4562.zip | |
Check if LSP help is empty
Then do not display anything and warn user with a message that
no help was available.
| -rw-r--r-- | src/main/lsp/help.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/main/lsp/help.c b/src/main/lsp/help.c index e5bcc28..ea89f23 100644 --- a/src/main/lsp/help.c +++ b/src/main/lsp/help.c @@ -36,6 +36,13 @@ static void handle_help_response(struct lsp_server *server, return; } + struct hover help = hover_from_json(&response->value.result); + if (s8empty(help.contents)) { + minibuffer_echo_timeout(4, "help: no help found"); + hover_free(&help); + return; + } + struct buffer *b = buffers_find(buffers, "*lsp-help*"); if (b == NULL) { b = buffers_add(buffers, buffer_create("*lsp-help*")); @@ -52,8 +59,6 @@ static void handle_help_response(struct lsp_server *server, buffer_add_keymap(b, km); } - struct hover help = hover_from_json(&response->value.result); - buffer_set_readonly(b, false); buffer_clear(b); buffer_add(b, buffer_end(b), help.contents.s, help.contents.l); |
