From d0383da7f8579610f49b99b982b662ad197d97d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ga=C3=A9tan=20Lepage?= <33058747+GaetanLepage@users.noreply.github.com> Date: Fri, 28 Apr 2023 22:47:34 +0200 Subject: [PATCH] plugins/nvim-lsp: fix extraSettings option warning (#353) --- plugins/nvim-lsp/helpers.nix | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/plugins/nvim-lsp/helpers.nix b/plugins/nvim-lsp/helpers.nix index 1b1f83ce..f61fffb3 100644 --- a/plugins/nvim-lsp/helpers.nix +++ b/plugins/nvim-lsp/helpers.nix @@ -79,7 +79,6 @@ settings = settingsOptions; extraSettings = mkOption { - default = {}; type = types.attrs; description = '' Extra settings for the ${name} language server. @@ -95,7 +94,10 @@ // packageOption; }; - config = + config = let + extraSettingsOption = options.plugins.lsp.servers.${name}.extraSettings; + extraSettingsAreDefined = extraSettingsOption.isDefined; + in mkIf cfg.enable { extraPackages = @@ -118,17 +120,20 @@ end '' ); - settings = (settings cfg.settings) // cfg.extraSettings; + settings = + (settings cfg.settings) + // ( + if extraSettingsAreDefined + then cfg.extraSettings + else {} + ); } // cfg.extraOptions; } ]; - warnings = let - extraSettingsOption = options.plugins.lsp.servers.${name}.extraSettings; - in - optional - (extraSettingsOption.isDefined) + warnings = + optional extraSettingsAreDefined ( let optionPrefix = "plugins.lsp.servers.${name}";