modules/lsp: enable servers."*" by default

This commit is contained in:
Matt Sturgeon 2025-04-30 22:47:51 +01:00
parent b6e2016b7f
commit a072e3c3a7
No known key found for this signature in database
GPG key ID: 4F91844CED1A8299
3 changed files with 17 additions and 15 deletions

View file

@ -93,6 +93,8 @@ in
type = types.submodule (
lib.modules.importApply ./server-base.nix {
displayName = "all servers";
enable.name = "the `*` server config";
enable.default = true;
settings.extraDescription = ''
Will be merged by neovim using the behaviour of [`vim.tbl_deep_extend()`](https://neovim.io/doc/user/lua.html#vim.tbl_deep_extend()).
'';
@ -123,15 +125,12 @@ in
'';
default = { };
example = {
"*" = {
enable = true;
settings = {
"*".settings = {
root_markers = [ ".git" ];
capabilities.textDocument.semanticTokens = {
multilineTokenSupport = true;
};
};
};
luals.enable = true;
clangd = {
enable = true;

View file

@ -2,6 +2,7 @@
{
displayName ? "the language server",
settings ? null,
enable ? null,
}:
{ lib, ... }:
let
@ -9,7 +10,12 @@ let
in
{
options = {
enable = lib.mkEnableOption displayName;
enable = lib.mkOption rec {
type = types.bool;
description = "Whether to enable ${enable.name or displayName}. ${enable.extraDescription or ""}";
default = enable.default or false;
example = enable.example or (!default);
};
settings = lib.mkOption {
type = with types; attrsOf anything;

View file

@ -1,16 +1,13 @@
{
example = {
lsp.servers = {
"*" = {
enable = true;
settings = {
"*".settings = {
enable = true;
root_markers = [ ".git" ];
capabilities.textDocument.semanticTokens = {
multilineTokenSupport = true;
};
};
};
luals.enable = true;
clangd = {
enable = true;