From 65d9e6467ecf5fdb962af484de40ef581c064e66 Mon Sep 17 00:00:00 2001 From: William Boman Date: Thu, 23 Dec 2021 19:05:49 +0100 Subject: feat(ui): add keybind to update all installed servers (#353) --- README.md | 2 ++ doc/nvim-lsp-installer.txt | 2 ++ lua/nvim-lsp-installer/settings.lua | 2 ++ lua/nvim-lsp-installer/ui/status-win/init.lua | 7 +++++++ 4 files changed, 13 insertions(+) diff --git a/README.md b/README.md index 8e4637be..eb57e945 100644 --- a/README.md +++ b/README.md @@ -269,6 +269,8 @@ local DEFAULT_SETTINGS = { install_server = "i", -- Keymap to reinstall/update a server update_server = "u", + -- Keymap to update all installed servers + update_all_servers = "U", -- Keymap to uninstall a server uninstall_server = "X", }, diff --git a/doc/nvim-lsp-installer.txt b/doc/nvim-lsp-installer.txt index 14703df6..35c37754 100644 --- a/doc/nvim-lsp-installer.txt +++ b/doc/nvim-lsp-installer.txt @@ -228,6 +228,8 @@ The following settings are applied by default. > install_server = "i", -- Keymap to reinstall/update a server update_server = "u", + -- Keymap to update all installed servers + update_all_servers = "U", -- Keymap to uninstall a server uninstall_server = "X", }, diff --git a/lua/nvim-lsp-installer/settings.lua b/lua/nvim-lsp-installer/settings.lua index a9a4bf74..0eea98fc 100644 --- a/lua/nvim-lsp-installer/settings.lua +++ b/lua/nvim-lsp-installer/settings.lua @@ -20,6 +20,8 @@ local DEFAULT_SETTINGS = { install_server = "i", -- Keymap to reinstall/update a server update_server = "u", + -- Keymap to update all installed servers + update_all_servers = "U", -- Keymap to uninstall a server uninstall_server = "X", }, diff --git a/lua/nvim-lsp-installer/ui/status-win/init.lua b/lua/nvim-lsp-installer/ui/status-win/init.lua index f1c6c7b0..6adcf2ae 100644 --- a/lua/nvim-lsp-installer/ui/status-win/init.lua +++ b/lua/nvim-lsp-installer/ui/status-win/init.lua @@ -50,6 +50,7 @@ local function Help(is_current_settings_expanded, vader_saber_ticks) { "Toggle help", HELP_KEYMAP }, { "Toggle server info", settings.current.ui.keymaps.toggle_server_expand }, { "Update server", settings.current.ui.keymaps.update_server }, + { "Update all installed server", settings.current.ui.keymaps.update_all_servers }, { "Uninstall server", settings.current.ui.keymaps.uninstall_server }, { "Install server", settings.current.ui.keymaps.install_server }, { "Close window", CLOSE_WINDOW_KEYMAP_1 }, @@ -481,6 +482,7 @@ local function init(all_servers) Ui.Keybind(HELP_KEYMAP, "TOGGLE_HELP", nil, true), Ui.Keybind(CLOSE_WINDOW_KEYMAP_1, "CLOSE_WINDOW", nil, true), Ui.Keybind(CLOSE_WINDOW_KEYMAP_2, "CLOSE_WINDOW", nil, true), + Ui.Keybind(settings.current.ui.keymaps.update_all_servers, "UPDATE_ALL_SERVERS", nil, true), Header { is_showing_help = state.is_showing_help, help_command_text = state.help_command_text, @@ -811,6 +813,11 @@ local function init(all_servers) install_server(server, nil) end end, + ["UPDATE_ALL_SERVERS"] = function() + for _, server in ipairs(lsp_servers.get_installed_servers()) do + install_server(server, nil) + end + end, ["UNINSTALL_SERVER"] = function(e) local server_name = e.payload[1] local ok, server = lsp_servers.get_server(server_name) -- cgit v1.2.3-70-g09d2