notifier.nvim
non-intrusive notification system for neovim
Setup
Using packer.nvim
:
use {
"vigoux/notifier.nvim",
config = function()
require'notifier'.setup {
-- You configuration here
}
end
}
The default configuration is:
{
ignore_messages = {}, -- Ignore message from LSP servers with this name
status_width = something, -- COmputed using 'columns' and 'textwidth'
components = { -- Order of the components to draw from top to bottom (first nvim notifications, then lsp)
"nvim", -- Nvim notifications (vim.notify and such)
"lsp" -- LSP status updates
},
notify = {
clear_time = 5000, -- Time in milliseconds before removing a vim.notify notification, 0 to make them sticky
min_level = vim.log.levels.INFO, -- Minimum log level to print the notification
},
component_name_recall = false, -- Whether to prefix the title of the notification by the component name
zindex = 50, -- The zindex to use for the floating window. Note that changing this value may cause visual bugs with other windows overlapping the notifier window.
}
This plugin provides some commands:
:NotifierClear " Clear the vim.notify items
:NotifierReplay " Replay all vim.notify items
:NotifierReplay! " Replay all vim.notify items to the quickfix list
This plugin defines multiple highlight groups that you can configure:
NotifierTitle
: the title of the notification (lsp:..
andnvim
)NotifierIcon
: Icon of the notification (if any)NotifierContent
: the content of the notificationNotifierContentDim
: dimmed content of the notification
vim.notify
options
This plugin supports two options for vim.notify
:
title: string -- The title for this notification
icon: string -- The icon for this notification
Acknowledgement
Heavily inspired by fidget.nvim
TODO
- Handle LSP progress
- Hook into
vim.notify
and friends- Allow to customize log levels
- When out, hook into
ui_attach
to route more messages from nvim - Add docs for
status.push
andstatus.pop