diff options
Diffstat (limited to 'lsp-parse.c')
-rw-r--r-- | lsp-parse.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/lsp-parse.c b/lsp-parse.c index 63d5605..3f81a2f 100644 --- a/lsp-parse.c +++ b/lsp-parse.c @@ -280,6 +280,11 @@ static void parse_capabilities(LSP *lsp, const JSON *json, JSONObject capabiliti cap->range_formatting_support = true; } + JSONValue code_action_value = json_object_get(json, capabilities, "codeActionProvider"); + if (code_action_value.type == JSON_OBJECT || code_action_value.type == JSON_TRUE) { + cap->code_action_support = true; + } + JSONObject workspace = json_object_get_object(json, capabilities, "workspace"); // check WorkspaceFoldersServerCapabilities JSONObject workspace_folders = json_object_get_object(json, workspace, "workspaceFolders"); |