From af1639a3a181643795bf78383018e44d2514afb2 Mon Sep 17 00:00:00 2001 From: Nicolas Goudry Date: Sun, 9 Jun 2024 17:49:55 +0200 Subject: [PATCH] feat(plugins): add nvim-notify --- plugins/notify.nix | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 plugins/notify.nix diff --git a/plugins/notify.nix b/plugins/notify.nix new file mode 100644 index 0000000..74cefec --- /dev/null +++ b/plugins/notify.nix @@ -0,0 +1,44 @@ +# homepage: https://github.com/rcarriga/nvim-notify +# nixvim doc: https://nix-community.github.io/nixvim/plugins/notify/index.html +{ icons, ... }: + +{ + opts = { + enable = true; + fps = 60; + stages = "fade"; + + # https://github.com/AstroNvim/AstroNvim/blob/v4.7.7/lua/astronvim/plugins/notify.lua#L27-L28 + maxHeight.__raw = "function() return math.floor(vim.o.lines * 0.75) end"; + maxWidth.__raw = "function() return math.floor(vim.o.columns * 0.75) end"; + + # https://github.com/AstroNvim/AstroNvim/blob/v4.7.7/lua/astronvim/plugins/notify.lua#L20-L26 + icons = { + debug = icons.Debugger; + error = icons.DiagnosticError; + info = icons.DiagnosticInfo; + trace = icons.DiagnosticHint; + warn = icons.DiagnosticWarn; + }; + + # https://github.com/AstroNvim/AstroNvim/blob/v4.7.7/lua/astronvim/plugins/notify.lua#L29-L42 + onOpen = '' + function(win) + local buf = vim.api.nvim_win_get_buf(win) + vim.api.nvim_buf_set_option(buf, "filetype", "markdown") + vim.api.nvim_win_set_config(win, { zindex = 175 }) + vim.wo[win].conceallevel = 3 + vim.wo[win].spell = false + end + ''; + }; + + rootOpts.keymaps = [ + { + mode = "n"; + key = "uD"; + action.__raw = "function() require('notify').dismiss { pending = true, silent = true } end"; + options.desc = "Dismiss notifications"; + } + ]; +}