plugins: use LogLevel where possible

This commit is contained in:
Gaetan Lepage 2023-11-30 15:50:24 +01:00 committed by Gaétan Lepage
parent a70947a563
commit dbcd314708
7 changed files with 45 additions and 61 deletions

View file

@ -812,7 +812,7 @@ in {
};
notify = {
threshold = helpers.defaultNullOpts.mkEnum ["error" "warning" "info" "debug"] "info" ''
threshold = helpers.defaultNullOpts.mkLogLevel "info" ''
Specify minimum notification level, uses the values from |vim.log.levels|
- `error`: hard errors e.g. failure to read from the file system.
@ -1010,9 +1010,7 @@ in {
};
inherit tab;
notify = with notify; {
threshold =
ifNonNull' cfg.notify.threshold
(helpers.mkRaw "vim.log.levels.${strings.toUpper notify.threshold}");
inherit threshold;
};
inherit ui;
log = with log; {

View file

@ -136,15 +136,11 @@ with lib; {
(see `|standard-path|`).
'';
level =
helpers.defaultNullOpts.mkEnum
["debug" "error" "info" "trace" "warn" "off"]
"warn"
''
Only messages equal to or above this value will be logged.
The default is to log warnings or above.
See `|log_levels|` for possible values.
'';
level = helpers.defaultNullOpts.mkLogLevel "warn" ''
Only messages equal to or above this value will be logged.
The default is to log warnings or above.
See `|log_levels|` for possible values.
'';
};
};
@ -210,10 +206,10 @@ with lib; {
blacklist
;
log = with log; {
inherit file;
level =
helpers.ifNonNull' level
(helpers.mkRaw "vim.log.levels.${strings.toUpper level}");
inherit
file
level
;
};
}
// cfg.extraOptions;

View file

@ -85,10 +85,9 @@ in {
This can also be a function that returns the table.
'';
logLevel =
helpers.defaultNullOpts.mkEnumFirstDefault
["ERROR" "DEBUG" "INFO" "TRACE" "WARN" "OFF"]
"Set the log level. Use `:ConformInfo` to see the location of the log file.";
logLevel = helpers.defaultNullOpts.mkLogLevel "error" ''
Set the log level. Use `:ConformInfo` to see the location of the log file.
'';
notifyOnError =
helpers.defaultNullOpts.mkBool true
@ -114,7 +113,7 @@ in {
format_after_save = helpers.ifNonNull' formatAfterSave {
lsp_fallback = formatAfterSave.lspFallback;
};
log_level = helpers.ifNonNull' logLevel (helpers.mkRaw "vim.log.levels.${logLevel}");
log_level = logLevel;
notify_on_error = notifyOnError;
inherit formatters;
}

View file

@ -46,8 +46,6 @@ in
level = 5;
};
};
levelNames = attrNames modes;
in {
plugin = helpers.defaultNullOpts.mkStr "neorg" ''
Name of the plugin. Prepended to log messages
@ -65,22 +63,22 @@ in
Should write to a file
'';
level = helpers.defaultNullOpts.mkEnum levelNames "warn" ''
level = helpers.defaultNullOpts.mkEnum (attrNames modes) "warn" ''
Any messages above this level will be logged
'';
modes =
mapAttrs
(mode: defaults: {
hl = helpers.defaultNullOpts.mkStr defaults.hl ''
Highlight for mode ${mode}
'';
level = mkOption {
type = with types; either int (enum levelNames);
default = defaults.level;
description = "Level for mode ${mode}";
};
})
(mode: defaults:
helpers.mkCompositeOption "Settings for mode ${mode}." {
hl = helpers.defaultNullOpts.mkStr defaults.hl ''
Highlight for mode ${mode}.
'';
level = helpers.defaultNullOpts.mkLogLevel defaults.level ''
Level for mode ${mode}.
'';
})
modes;
floatPrecision = helpers.defaultNullOpts.mkNullable types.float "0.01" ''
@ -119,18 +117,20 @@ in
inherit level;
modes =
mapAttrsToList
(mode: modeConfig: {
name = mode;
inherit (modeConfig) hl;
level = let
inherit (modeConfig) level;
in
if (isInt level)
then level
else helpers.mkRaw "vim.log.levels.${strings.toUpper level}";
})
modes;
filter (v: v != null)
(
mapAttrsToList
(mode: modeConfig:
helpers.ifNonNull' modeConfig {
name = mode;
inherit
(modeConfig)
hl
level
;
})
modes
);
float_precision = floatPrecision;
};

View file

@ -15,18 +15,9 @@ in {
package = helpers.mkPackageOption "nvim-notify" pkgs.vimPlugins.nvim-notify;
level =
helpers.defaultNullOpts.mkNullable
(
with types;
oneOf [
ints.unsigned
helpers.rawType
str
]
)
''{__raw = "vim.log.levels.INFO";}''
"Minimum log level to display. See `vim.log.levels`.";
level = helpers.defaultNullOpts.mkLogLevel "info" ''
Minimum log level to display. See `vim.log.levels`.
'';
timeout = helpers.defaultNullOpts.mkUnsignedInt 5000 "Default timeout for notification.";

View file

@ -21,7 +21,7 @@
formatAfterSave = {
lspFallback = true;
};
logLevel = "ERROR";
logLevel = "error";
notifyOnError = true;
formatters = {
myFormatter = {

View file

@ -7,7 +7,7 @@
plugins.notify = {
enable = true;
level.__raw = "vim.log.levels.INFO";
level = "info";
timeout = 5000;
maxWidth = null;
maxHeight = null;