languages: add and move to mkServersOption

This commit is contained in:
poz 2025-07-21 10:53:09 +02:00
commit d47a771d19
No known key found for this signature in database
35 changed files with 89 additions and 224 deletions

View file

@ -9,6 +9,6 @@
in {
inherit (typesDag) dagOf;
inherit (typesPlugin) pluginsOpt extraPluginType mkPluginSetupOption luaInline pluginType borderType;
inherit (typesLanguage) diagnostics mkGrammarOption;
inherit (typesLanguage) diagnostics mkGrammarOption mkServersOption;
inherit (customTypes) char hexColor mergelessListOf;
}

View file

@ -32,6 +32,13 @@
mkPackageOption pkgs ["${grammar} treesitter"] {
default = ["vimPlugins" "nvim-treesitter" "builtGrammars" grammar];
};
mkServersOption = language: servers: defaultServers:
mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "${language} LSP servers to use";
};
in {
inherit diagnostics diagnosticSubmodule mkGrammarOption;
inherit diagnostics diagnosticSubmodule mkGrammarOption mkServersOption;
}

View file

@ -8,7 +8,7 @@
inherit (lib.options) mkEnableOption mkOption;
inherit (lib.modules) mkIf mkMerge;
inherit (lib.types) package enum listOf;
inherit (lib.nvim.types) mkGrammarOption;
inherit (lib.nvim.types) mkGrammarOption mkServersOption;
inherit (lib.meta) getExe;
inherit (lib.nvim.attrsets) mapListToAttrs;
@ -33,11 +33,7 @@ in {
lsp = {
enable = mkEnableOption "Assembly LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Assembly LSP servers to use";
};
servers = mkServersOption "Assembly" servers defaultServers;
};
};
config = mkIf cfg.enable (mkMerge [

View file

@ -12,7 +12,7 @@
inherit (lib.types) enum either listOf package str;
inherit (lib.nvim.lua) expToLua;
inherit (lib.nvim.attrsets) mapListToAttrs;
inherit (lib.nvim.types) mkGrammarOption diagnostics;
inherit (lib.nvim.types) mkGrammarOption mkServersOption diagnostics;
inherit (lib.generators) mkLuaInline;
cfg = config.vim.languages.astro;
@ -90,11 +90,7 @@ in {
lsp = {
enable = mkEnableOption "Astro LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Astro LSP servers to use";
};
servers = mkServersOption "Astro" servers defaultServers;
};
format = {

View file

@ -11,7 +11,7 @@
inherit (lib.lists) isList;
inherit (lib.types) enum either package listOf str bool;
inherit (lib.generators) mkLuaInline;
inherit (lib.nvim.types) diagnostics mkGrammarOption;
inherit (lib.nvim.types) diagnostics mkGrammarOption mkServersOption;
inherit (lib.nvim.lua) expToLua;
inherit (lib.nvim.attrsets) mapListToAttrs;
@ -56,11 +56,7 @@ in {
lsp = {
enable = mkEnableOption "Bash LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Bash LSP servers to use";
};
servers = mkServersOption "Bash" servers defaultServers;
};
format = {

View file

@ -10,7 +10,7 @@
inherit (lib.meta) getExe;
inherit (lib.lists) isList;
inherit (lib.types) enum either listOf package str;
inherit (lib.nvim.types) mkGrammarOption;
inherit (lib.nvim.types) mkGrammarOption mkServersOption;
inherit (lib.nvim.lua) expToLua;
inherit (lib.nvim.attrsets) mapListToAttrs;
@ -36,11 +36,7 @@ in {
lsp = {
enable = mkEnableOption "Clojure LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Clojure LSP servers to use";
};
servers = mkServersOption "Clojure" servers defaultServers;
};
};

View file

@ -13,7 +13,7 @@
inherit (lib.types) enum either listOf package nullOr str bool;
inherit (lib.strings) optionalString;
inherit (lib.nvim.lua) expToLua;
inherit (lib.nvim.types) mkGrammarOption;
inherit (lib.nvim.types) mkGrammarOption mkServersOption;
inherit (lib.nvim.dag) entryAfter;
inherit (lib.nvim.attrsets) mapListToAttrs;
@ -53,11 +53,7 @@ in {
lsp = {
enable = mkEnableOption "Dart LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Dart LSP servers to use";
};
servers = mkServersOption "Dart" servers defaultServers;
};
dap = {

View file

@ -11,7 +11,7 @@
inherit (lib.meta) getExe;
inherit (lib.types) enum either listOf package str;
inherit (lib.generators) mkLuaInline;
inherit (lib.nvim.types) mkGrammarOption;
inherit (lib.nvim.types) mkGrammarOption mkServersOption;
inherit (lib.nvim.lua) expToLua;
inherit (lib.nvim.dag) entryAnywhere;
inherit (lib.nvim.attrsets) mapListToAttrs;
@ -62,11 +62,7 @@ in {
lsp = {
enable = mkEnableOption "Elixir LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Elixir LSP servers to use";
};
servers = mkServersOption "Elixir" servers defaultServers;
};
format = {

View file

@ -11,7 +11,7 @@
inherit (lib.meta) getExe;
inherit (lib.types) enum either listOf package str;
inherit (lib.nvim.lua) expToLua;
inherit (lib.nvim.types) mkGrammarOption;
inherit (lib.nvim.types) mkGrammarOption mkServersOption;
inherit (lib.nvim.attrsets) mapListToAttrs;
cfg = config.vim.languages.gleam;
@ -36,11 +36,7 @@ in {
lsp = {
enable = mkEnableOption "Gleam LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Gleam LSP servers to use";
};
servers = mkServersOption "Gleam" servers defaultServers;
};
};

View file

@ -9,7 +9,7 @@
inherit (lib.options) mkEnableOption mkOption;
inherit (lib.strings) optionalString;
inherit (lib.modules) mkIf mkMerge;
inherit (lib.nvim.types) mkGrammarOption;
inherit (lib.nvim.types) mkGrammarOption mkServersOption;
inherit (lib.nvim.dag) entryAfter entryBefore;
inherit (lib.nvim.lua) expToLua;
inherit (lib.meta) getExe';
@ -76,11 +76,7 @@ in {
lsp = {
enable = mkEnableOption "Haskell LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Haskell LSP servers to use";
};
servers = mkServersOption "Haskell" servers defaultServers;
};
dap = {

View file

@ -9,7 +9,7 @@
inherit (lib.meta) getExe;
inherit (lib.modules) mkIf mkMerge;
inherit (lib.types) package bool enum listOf;
inherit (lib.nvim.types) mkGrammarOption;
inherit (lib.nvim.types) mkGrammarOption mkServersOption;
inherit (lib.nvim.attrsets) mapListToAttrs;
cfg = config.vim.languages.hcl;
@ -41,11 +41,7 @@ in {
lsp = {
enable = mkEnableOption "HCL LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "HCL LSP servers to use";
};
servers = mkServersOption "HCL" servers defaultServers;
};
format = {

View file

@ -9,7 +9,7 @@
inherit (lib.modules) mkIf mkMerge;
inherit (lib.meta) getExe;
inherit (lib.types) enum listOf;
inherit (lib.nvim.types) mkGrammarOption;
inherit (lib.nvim.types) mkGrammarOption mkServersOption;
inherit (lib.nvim.attrsets) mapListToAttrs;
cfg = config.vim.languages.helm;
@ -48,11 +48,7 @@ in {
lsp = {
enable = mkEnableOption "Helm LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Helm LSP servers to use";
};
servers = mkServersOption "Helm" servers defaultServers;
};
};

View file

@ -9,7 +9,7 @@
inherit (lib.meta) getExe;
inherit (builtins) attrNames;
inherit (lib.types) listOf enum;
inherit (lib.nvim.types) mkGrammarOption;
inherit (lib.nvim.types) mkGrammarOption mkServersOption;
inherit (lib.nvim.attrsets) mapListToAttrs;
inherit (lib.nvim.dag) entryBefore;
inherit (lib.generators) mkLuaInline;
@ -71,11 +71,7 @@ in {
lsp = {
enable = mkEnableOption "Java LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Java LSP servers to use";
};
servers = mkServersOption "Java" servers defaultServers;
};
};

View file

@ -9,7 +9,7 @@
inherit (lib.types) listOf enum;
inherit (lib.modules) mkIf mkMerge;
inherit (lib.meta) getExe;
inherit (lib.nvim.types) mkGrammarOption;
inherit (lib.nvim.types) mkGrammarOption mkServersOption;
inherit (lib.generators) mkLuaInline;
inherit (lib.nvim.attrsets) mapListToAttrs;
inherit (lib.nvim.dag) entryBefore;
@ -96,9 +96,9 @@ in {
lsp = {
enable = mkEnableOption "Java LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
servers =
mkServersOption "Julia" servers defaultServers
// {
description = ''
Julia LSP servers to use

View file

@ -9,7 +9,7 @@
inherit (lib.meta) getExe' getExe;
inherit (builtins) attrNames;
inherit (lib.types) enum listOf;
inherit (lib.nvim.types) mkGrammarOption diagnostics;
inherit (lib.nvim.types) mkGrammarOption mkServersOption diagnostics;
inherit (lib.generators) mkLuaInline;
inherit (lib.nvim.attrsets) mapListToAttrs;
@ -62,11 +62,7 @@ in {
lsp = {
enable = mkEnableOption "Kotlin LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Kotlin LSP servers to use";
};
servers = mkServersOption "Kotlin" servers defaultServers;
};
extraDiagnostics = {

View file

@ -9,7 +9,7 @@
inherit (lib.modules) mkIf mkMerge;
inherit (lib.meta) getExe;
inherit (lib.types) bool enum listOf package;
inherit (lib.nvim.types) diagnostics mkGrammarOption;
inherit (lib.nvim.types) diagnostics mkGrammarOption mkServersOption;
inherit (lib.nvim.dag) entryBefore;
inherit (lib.nvim.attrsets) mapListToAttrs;
@ -63,11 +63,7 @@ in {
lsp = {
enable = mkEnableOption "Lua LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Lua LSP servers to use";
};
servers = mkServersOption "Lua" servers defaultServers;
lazydev.enable = mkEnableOption "lazydev.nvim integration, useful for neovim plugin developers";
};

View file

@ -10,7 +10,7 @@
inherit (lib.options) mkEnableOption mkOption;
inherit (lib.types) bool enum package listOf str nullOr;
inherit (lib.nvim.lua) toLuaObject;
inherit (lib.nvim.types) diagnostics mkGrammarOption mkPluginSetupOption;
inherit (lib.nvim.types) diagnostics mkGrammarOption mkPluginSetupOption mkServersOption;
inherit (lib.nvim.dag) entryAnywhere;
inherit (lib.nvim.attrsets) mapListToAttrs;
@ -60,12 +60,7 @@ in {
lsp = {
enable = mkEnableOption "Markdown LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
description = "Markdown LSP servers to use";
type = listOf (enum (attrNames servers));
default = defaultServers;
};
servers = mkServersOption "Markdown" servers defaultServers;
};
format = {

View file

@ -9,7 +9,7 @@
inherit (lib.meta) getExe';
inherit (lib.modules) mkIf mkMerge;
inherit (lib.types) enum listOf package;
inherit (lib.nvim.types) mkGrammarOption;
inherit (lib.nvim.types) mkGrammarOption mkServersOption;
inherit (lib.generators) mkLuaInline;
inherit (lib.nvim.attrsets) mapListToAttrs;
@ -57,12 +57,7 @@ in {
lsp = {
enable = mkEnableOption "Nim LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Nim LSP servers to use";
};
servers = mkServersOption "Nim" servers defaultServers;
};
format = {

View file

@ -10,7 +10,7 @@
inherit (lib.options) mkEnableOption mkOption;
inherit (lib.modules) mkIf mkMerge;
inherit (lib.types) enum package listOf;
inherit (lib.nvim.types) mkGrammarOption diagnostics;
inherit (lib.nvim.types) mkGrammarOption mkServersOption diagnostics;
inherit (lib.nvim.attrsets) mapListToAttrs;
cfg = config.vim.languages.nix;
@ -97,11 +97,7 @@ in {
lsp = {
enable = mkEnableOption "Nix LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Nix LSP servers to use";
};
servers = mkServersOption "Nix" servers defaultServers;
};
format = {

View file

@ -7,7 +7,7 @@
inherit (lib.options) mkEnableOption mkOption;
inherit (lib.types) enum listOf;
inherit (lib.modules) mkIf mkMerge;
inherit (lib.nvim.types) mkGrammarOption;
inherit (lib.nvim.types) mkGrammarOption mkServersOption;
inherit (lib.meta) getExe;
inherit (lib.generators) mkLuaInline;
inherit (lib.nvim.attrsets) mapListToAttrs;
@ -44,12 +44,7 @@ in {
lsp = {
enable = mkEnableOption "Nu LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Nu LSP servers to use";
};
servers = mkServersOption "Nu" servers defaultServers;
};
};

View file

@ -9,7 +9,7 @@
inherit (lib.modules) mkIf mkMerge;
inherit (lib.meta) getExe;
inherit (lib.types) enum listOf package;
inherit (lib.nvim.types) mkGrammarOption;
inherit (lib.nvim.types) mkGrammarOption mkServersOption;
inherit (lib.generators) mkLuaInline;
inherit (lib.nvim.attrsets) mapListToAttrs;
@ -72,12 +72,7 @@ in {
lsp = {
enable = mkEnableOption "OCaml LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "OCaml LSP servers to use";
};
servers = mkServersOption "OCaml" servers defaultServers;
};
format = {

View file

@ -9,7 +9,7 @@
inherit (lib.modules) mkIf mkMerge;
inherit (lib.types) listOf enum;
inherit (lib.meta) getExe;
inherit (lib.nvim.types) mkGrammarOption;
inherit (lib.nvim.types) mkGrammarOption mkServersOption;
inherit (lib.generators) mkLuaInline;
inherit (lib.nvim.attrsets) mapListToAttrs;
@ -44,12 +44,7 @@ in {
lsp = {
enable = mkEnableOption "Odin LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Odin LSP servers to use";
};
servers = mkServersOption "Odin" servers defaultServers;
};
};

View file

@ -9,7 +9,7 @@
inherit (lib.meta) getExe;
inherit (lib.modules) mkIf mkMerge;
inherit (lib.types) enum listOf;
inherit (lib.nvim.types) mkGrammarOption;
inherit (lib.nvim.types) mkGrammarOption mkServersOption;
inherit (lib.nvim.attrsets) mapListToAttrs;
inherit (lib.generators) mkLuaInline;
@ -75,12 +75,7 @@ in {
lsp = {
enable = mkEnableOption "PHP LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "PHP LSP servers to use";
};
servers = mkServersOption "PHP" servers defaultServers;
};
};

View file

@ -12,6 +12,7 @@
inherit (lib.nvim.attrsets) mapListToAttrs;
inherit (lib.generators) mkLuaInline;
inherit (lib.nvim.dag) entryBefore;
inherit (lib.nvim.types) mkServersOption;
cfg = config.vim.languages.python;
@ -227,12 +228,7 @@ in {
lsp = {
enable = mkEnableOption "Python LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Python LSP servers to use";
};
servers = mkServersOption "Python" servers defaultServers;
};
format = {

View file

@ -9,7 +9,7 @@
inherit (lib.modules) mkIf mkMerge;
inherit (lib.types) enum listOf package;
inherit (lib.meta) getExe;
inherit (lib.nvim.types) mkGrammarOption;
inherit (lib.nvim.types) mkGrammarOption mkServersOption;
inherit (lib.nvim.attrsets) mapListToAttrs;
inherit (lib.generators) mkLuaInline;
@ -75,12 +75,7 @@ in {
lsp = {
enable = mkEnableOption "R LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "R LSP servers to use";
};
servers = mkServersOption "R" servers defaultServers;
};
format = {

View file

@ -8,7 +8,7 @@
inherit (lib.options) mkEnableOption mkOption;
inherit (lib.meta) getExe;
inherit (lib.modules) mkIf mkMerge;
inherit (lib.nvim.types) mkGrammarOption diagnostics;
inherit (lib.nvim.types) mkGrammarOption mkServersOption diagnostics;
inherit (lib.types) listOf package enum;
inherit (lib.nvim.attrsets) mapListToAttrs;
@ -75,12 +75,7 @@ in {
lsp = {
enable = mkEnableOption "Ruby LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Ruby LSP servers to use";
};
servers = mkServersOption "Ruby" servers defaultServers;
};
format = {

View file

@ -9,7 +9,7 @@
inherit (lib.meta) getExe;
inherit (lib.modules) mkIf mkMerge;
inherit (lib.types) enum listOf package str;
inherit (lib.nvim.types) diagnostics;
inherit (lib.nvim.types) diagnostics mkServersOption;
inherit (lib.nvim.attrsets) mapListToAttrs;
inherit (lib.generators) mkLuaInline;
@ -76,12 +76,7 @@ in {
lsp = {
enable = mkEnableOption "SQL LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "SQL LSP servers to use";
};
servers = mkServersOption "SQL" servers defaultServers;
};
format = {

View file

@ -9,7 +9,7 @@
inherit (lib.modules) mkIf mkMerge;
inherit (lib.meta) getExe;
inherit (lib.types) enum listOf package;
inherit (lib.nvim.types) mkGrammarOption diagnostics;
inherit (lib.nvim.types) mkGrammarOption mkServersOption diagnostics;
inherit (lib.nvim.attrsets) mapListToAttrs;
inherit (lib.generators) mkLuaInline;
@ -88,12 +88,7 @@ in {
lsp = {
enable = mkEnableOption "Svelte LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Svelte LSP servers to use";
};
servers = mkServersOption "Svelte" servers defaultServers;
};
format = {

View file

@ -11,6 +11,7 @@
inherit (lib.types) enum listOf;
inherit (lib.nvim.attrsets) mapListToAttrs;
inherit (lib.generators) mkLuaInline;
inherit (lib.nvim.types) mkServersOption;
cfg = config.vim.languages.tailwind;
@ -152,12 +153,7 @@ in {
lsp = {
enable = mkEnableOption "Tailwindcss LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Tailwindcss LSP servers to use";
};
servers = mkServersOption "Tailwindcss" servers defaultServers;
};
};

View file

@ -9,7 +9,7 @@
inherit (lib.modules) mkIf mkMerge;
inherit (lib.meta) getExe;
inherit (lib.types) enum listOf;
inherit (lib.nvim.types) mkGrammarOption;
inherit (lib.nvim.types) mkGrammarOption mkServersOption;
inherit (lib.nvim.attrsets) mapListToAttrs;
cfg = config.vim.languages.terraform;
@ -34,12 +34,7 @@ in {
lsp = {
enable = mkEnableOption "Terraform LSP support (terraform-ls)" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Terraform LSP servers to use";
};
servers = mkServersOption "Terraform" servers defaultServers;
};
};
config = mkIf cfg.enable (mkMerge [

View file

@ -9,7 +9,7 @@
inherit (lib.types) nullOr enum attrsOf listOf package str;
inherit (lib.attrsets) attrNames;
inherit (lib.meta) getExe;
inherit (lib.nvim.types) mkGrammarOption mkPluginSetupOption;
inherit (lib.nvim.types) mkGrammarOption mkPluginSetupOption mkServersOption;
inherit (lib.nvim.dag) entryAnywhere;
inherit (lib.nvim.lua) toLuaObject;
inherit (lib.nvim.attrsets) mapListToAttrs;
@ -112,12 +112,7 @@ in {
lsp = {
enable = mkEnableOption "Typst LSP support (typst-lsp)" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Typst LSP servers to use";
};
servers = mkServersOption "Typst" servers defaultServers;
};
format = {

View file

@ -9,7 +9,7 @@
inherit (lib.modules) mkIf mkMerge;
inherit (lib.meta) getExe;
inherit (lib.types) enum listOf;
inherit (lib.nvim.types) mkGrammarOption;
inherit (lib.nvim.types) mkGrammarOption mkServersOption;
inherit (lib.nvim.attrsets) mapListToAttrs;
inherit (lib.generators) mkLuaInline;
@ -72,11 +72,7 @@ in {
lsp = {
enable = mkEnableOption "Vala LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Vala LSP servers to use";
};
servers = mkServersOption "Vala" servers defaultServers;
};
};

View file

@ -6,7 +6,7 @@
}: let
inherit (builtins) attrNames;
inherit (lib.modules) mkIf mkMerge;
inherit (lib.nvim.types) mkGrammarOption;
inherit (lib.nvim.types) mkGrammarOption mkServersOption;
inherit (lib.options) mkEnableOption mkOption;
inherit (lib.types) enum listOf;
inherit (lib.meta) getExe;
@ -35,12 +35,7 @@ in {
lsp = {
enable = mkEnableOption "WGSL LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "WGSL LSP servers to use";
};
servers = mkServersOption "WGSL" servers defaultServers;
};
};

View file

@ -9,7 +9,7 @@
inherit (lib.modules) mkIf mkMerge;
inherit (lib.meta) getExe;
inherit (lib.types) enum listOf;
inherit (lib.nvim.types) mkGrammarOption;
inherit (lib.nvim.types) mkGrammarOption mkServersOption;
inherit (lib.nvim.attrsets) mapListToAttrs;
cfg = config.vim.languages.yaml;
@ -55,11 +55,7 @@ in {
lsp = {
enable = mkEnableOption "Yaml LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Yaml LSP servers to use";
};
servers = mkServersOption "Yaml" servers defaultServers;
};
};

View file

@ -8,7 +8,7 @@
inherit (lib.options) mkEnableOption mkOption;
inherit (lib.modules) mkIf mkMerge mkDefault;
inherit (lib.types) bool listOf package enum;
inherit (lib.nvim.types) mkGrammarOption;
inherit (lib.nvim.types) mkGrammarOption mkServersOption;
inherit (lib.meta) getExe;
inherit (lib.nvim.attrsets) mapListToAttrs;
@ -65,12 +65,7 @@ in {
lsp = {
enable = mkEnableOption "Zig LSP support" // {default = config.vim.lsp.enable;};
servers = mkOption {
type = listOf (enum (attrNames servers));
default = defaultServers;
description = "Zig LSP servers to use";
};
servers = mkServersOption "Zig" servers defaultServers;
};
dap = {