diff options
author | Maria José Solano <majosolano99@gmail.com> | 2024-10-28 06:14:56 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-10-28 06:14:56 -0700 |
commit | 0086ee90dd2f058f48bbaceef842bb0d8923cc34 (patch) | |
tree | 56450fcf41132fa71450da2943d877281e339d5f | |
parent | ff29fd8c6ef4f14234c25a8650b245c179819845 (diff) | |
download | rneovim-0086ee90dd2f058f48bbaceef842bb0d8923cc34.tar.gz rneovim-0086ee90dd2f058f48bbaceef842bb0d8923cc34.tar.bz2 rneovim-0086ee90dd2f058f48bbaceef842bb0d8923cc34.zip |
fix(lsp): list all workspace folders in healthcheck #30966
-rw-r--r-- | runtime/lua/vim/lsp/health.lua | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/runtime/lua/vim/lsp/health.lua b/runtime/lua/vim/lsp/health.lua index 18066a84db..0d314108fe 100644 --- a/runtime/lua/vim/lsp/health.lua +++ b/runtime/lua/vim/lsp/health.lua @@ -39,12 +39,27 @@ local function check_active_clients() elseif type(client.config.cmd) == 'function' then cmd = tostring(client.config.cmd) end + local dirs_info ---@type string + if client.workspace_folders and #client.workspace_folders > 1 then + dirs_info = string.format( + ' Workspace folders:\n %s', + vim + .iter(client.workspace_folders) + ---@param folder lsp.WorkspaceFolder + :map(function(folder) + return folder.name + end) + :join('\n ') + ) + else + dirs_info = string.format( + ' Root directory: %s', + client.root_dir and vim.fn.fnamemodify(client.root_dir, ':~') + ) or nil + end report_info(table.concat({ string.format('%s (id: %d)', client.name, client.id), - string.format( - ' Root directory: %s', - client.root_dir and vim.fn.fnamemodify(client.root_dir, ':~') or nil - ), + dirs_info, string.format(' Command: %s', cmd), string.format(' Settings: %s', vim.inspect(client.settings, { newline = '\n ' })), string.format( |