lib/helpers: add defaultNullOpts.mkLogLevel

This commit is contained in:
Gaetan Lepage 2023-11-30 15:48:45 +01:00 committed by Gaétan Lepage
parent 290855ed3d
commit a70947a563

View file

@ -193,6 +193,37 @@ with lib; rec {
else ''
${desc}
${defaultDesc}
'';
};
mkLogLevel = default: desc:
mkOption {
type = with types;
nullOr
(
either ints.unsigned
(
enum
["off" "error" "warn" "info" "debug" "trace"]
)
);
default = null;
apply =
mapNullable
(
value:
if isInt value
then value
else mkRaw "vim.log.levels.${strings.toUpper value}"
);
description = let
defaultDesc = "default: `${toString default}`";
in
if desc == ""
then defaultDesc
else ''
${desc}
${defaultDesc}
'';
};