From a70947a56353c9704d0ae140bf5aad12b12ca42c Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Thu, 30 Nov 2023 15:48:45 +0100 Subject: [PATCH] lib/helpers: add defaultNullOpts.mkLogLevel --- lib/helpers.nix | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/lib/helpers.nix b/lib/helpers.nix index dbbaf9be..d28977ef 100644 --- a/lib/helpers.nix +++ b/lib/helpers.nix @@ -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} ''; };