summaryrefslogtreecommitdiff
path: root/lsp-parse.c
diff options
context:
space:
mode:
Diffstat (limited to 'lsp-parse.c')
-rw-r--r--lsp-parse.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/lsp-parse.c b/lsp-parse.c
index 2932302..e780ee7 100644
--- a/lsp-parse.c
+++ b/lsp-parse.c
@@ -118,10 +118,14 @@ static void parse_capabilities(LSP *lsp, const JSON *json, JSONObject capabiliti
if (signature_help_value.type == JSON_OBJECT) {
cap->signature_help_support = true;
JSONObject signature_help = signature_help_value.val.object;
+ json_debug_print_object(json, signature_help);
JSONArray trigger_chars = json_object_get_array(json, signature_help, "triggerCharacters");
lsp->signature_help_trigger_chars = parse_trigger_characters(json, trigger_chars);
JSONArray retrigger_chars = json_object_get_array(json, signature_help, "retriggerCharacters");
lsp->signature_help_retrigger_chars = parse_trigger_characters(json, retrigger_chars);
+ // rust-analyzer doesn't have ) or > as a retrigger char which is really weird
+ arr_add(lsp->signature_help_retrigger_chars, ')');
+ arr_add(lsp->signature_help_retrigger_chars, '>');
}
JSONObject workspace = json_object_get_object(json, capabilities, "workspace");