Use native toml format instead of handrolling

This commit is contained in:
Natsu Kagami 2024-06-11 19:43:48 +02:00
parent 23c2436ab6
commit cc7d62745c
Signed by: nki
GPG key ID: 55A032EB38B49ADB

View file

@ -193,29 +193,27 @@ in
};
};
config = mkIf cfg.enable {
config = mkIf cfg.enable
{
home.packages = [ cfg.package ];
# Configurations
xdg.configFile."kak-lsp/kak-lsp.toml" = {
source = pkgs.runCommand "config.toml"
xdg.configFile."kak-lsp/kak-lsp.toml" =
let
toml = pkgs.formats.toml { };
stripNulls = lib.filterAttrsRecursive (n: v: v != null);
in
{
source = toml.generate "config.toml"
{
buildInputs = [ pkgs.yj ];
preferLocalBuild = true;
} ''
yj -jt -i \
< ${
pkgs.writeText "config.json" (builtins.toJSON {
semantic_tokens.faces = cfg.semanticTokens.faces ++ cfg.semanticTokens.additionalFaces;
server.timeout = cfg.serverTimeout;
snippet_support = cfg.enableSnippets;
verbosity = 255;
language_server = lspConfig.language_servers // cfg.languageServers;
language_server = stripNulls (lspConfig.language_servers // cfg.languageServers);
language_ids = lspConfig.language_ids // cfg.languageIds;
})
} \
> $out
'';
};
};
};
}