nvim-lsp: Put the settings options in the settings namespace (#137)

This is done to avoid mixing setting options and LSP setup options.
This commit is contained in:
traxys 2023-01-23 14:52:46 +01:00 committed by GitHub
parent ae7c5f8869
commit 374fccae9e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 7 additions and 6 deletions

View file

@ -23,7 +23,7 @@ let
name = "dartls"; name = "dartls";
description = "Enable dart language-server, for dart"; description = "Enable dart language-server, for dart";
package = pkgs.dart; package = pkgs.dart;
extraOptions = { settingsOptions = {
analysisExcludedFolders = mkOption { analysisExcludedFolders = mkOption {
type = types.nullOr (types.listOf types.str); type = types.nullOr (types.listOf types.str);
default = null; default = null;
@ -152,7 +152,7 @@ let
name = "nil_ls"; name = "nil_ls";
description = "Enable nil, for Nix"; description = "Enable nil, for Nix";
package = pkgs.nil; package = pkgs.nil;
extraOptions = { settingsOptions = {
formatting.command = mkOption { formatting.command = mkOption {
type = types.nullOr (types.listOf types.str); type = types.nullOr (types.listOf types.str);
default = null; default = null;
@ -198,7 +198,7 @@ let
description = "Enable rust-analyzer, for Rust."; description = "Enable rust-analyzer, for Rust.";
serverName = "rust_analyzer"; serverName = "rust_analyzer";
extraOptions = import ./rust-analyzer-config.nix lib; settingsOptions = import ./rust-analyzer-config.nix lib;
settings = cfg: { rust-analyzer = cfg; }; settings = cfg: { rust-analyzer = cfg; };
} }
{ {

View file

@ -9,7 +9,7 @@
, extraPackages ? { } , extraPackages ? { }
, cmd ? (cfg: null) , cmd ? (cfg: null)
, settings ? (cfg: { }) , settings ? (cfg: { })
, extraOptions ? { } , settingsOptions ? { }
, ... , ...
}: }:
# returns a module # returns a module
@ -30,7 +30,8 @@
options = { options = {
plugins.lsp.servers.${name} = { plugins.lsp.servers.${name} = {
enable = mkEnableOption description; enable = mkEnableOption description;
} // packageOption // extraOptions; settings = settingsOptions;
} // packageOption;
}; };
config = mkIf cfg.enable config = mkIf cfg.enable
@ -42,7 +43,7 @@
name = serverName; name = serverName;
extraOptions = { extraOptions = {
cmd = cmd cfg; cmd = cmd cfg;
settings = settings cfg; settings = settings cfg.settings;
}; };
}]; }];
}; };