Skip to content

Latest commit

 

History

History
70 lines (57 loc) · 2.22 KB

README.md

File metadata and controls

70 lines (57 loc) · 2.22 KB

notifier.nvim non-intrusive notification system for neovim

Showcase

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:.. and nvim)
  • NotifierIcon: Icon of the notification (if any)
  • NotifierContent: the content of the notification
  • NotifierContentDim: 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 and status.pop