2023-04-03 12:12:05 +03:00
|
|
|
{
|
|
|
|
config,
|
|
|
|
lib,
|
|
|
|
...
|
2023-11-06 17:50:27 -07:00
|
|
|
}: let
|
2024-03-16 16:25:30 +03:00
|
|
|
inherit (lib.modules) mkIf;
|
|
|
|
inherit (lib.nvim.dag) entryAnywhere;
|
2023-11-06 17:50:27 -07:00
|
|
|
|
2023-04-03 12:12:05 +03:00
|
|
|
cfg = config.vim.notify.nvim-notify;
|
|
|
|
in {
|
|
|
|
config = mkIf cfg.enable {
|
2024-03-16 16:25:30 +03:00
|
|
|
vim = {
|
|
|
|
startPlugins = ["nvim-notify"];
|
|
|
|
luaConfigRC.nvim-notify = entryAnywhere ''
|
|
|
|
require('notify').setup {
|
|
|
|
stages = "${cfg.stages}",
|
|
|
|
timeout = ${toString cfg.timeout},
|
|
|
|
background_colour = "${cfg.background_colour}",
|
|
|
|
position = "${cfg.position}",
|
|
|
|
icons = {
|
|
|
|
ERROR = "${cfg.icons.ERROR}",
|
|
|
|
WARN = "${cfg.icons.WARN}",
|
|
|
|
INFO = "${cfg.icons.INFO}",
|
|
|
|
DEBUG = "${cfg.icons.DEBUG}",
|
|
|
|
TRACE = "${cfg.icons.TRACE}",
|
|
|
|
},
|
|
|
|
}
|
2023-07-13 23:22:16 +03:00
|
|
|
|
2024-03-16 16:25:30 +03:00
|
|
|
-- required to fix offset_encoding errors
|
|
|
|
local notify = vim.notify
|
|
|
|
vim.notify = function(msg, ...)
|
|
|
|
if msg:match("warning: multiple different client offset_encodings") then
|
|
|
|
return
|
|
|
|
end
|
2023-07-13 23:22:16 +03:00
|
|
|
|
2024-03-16 16:25:30 +03:00
|
|
|
notify(msg, ...)
|
|
|
|
end
|
|
|
|
'';
|
|
|
|
};
|
2023-04-03 12:12:05 +03:00
|
|
|
};
|
|
|
|
}
|