Coder Social home page Coder Social logo

folke / noice.nvim Goto Github PK

View Code? Open in Web Editor NEW
3.7K 14.0 79.0 1.45 MB

๐Ÿ’ฅ Highly experimental plugin that completely replaces the UI for messages, cmdline and the popupmenu.

License: Apache License 2.0

Lua 99.94% Shell 0.06%
neovim-lua-plugin neovim-plugin neovim-ui neovim

noice.nvim's Introduction

๐Ÿ’ฅ Noice (Nice, Noise, Notice)

Highly experimental plugin that completely replaces the UI for messages, cmdline and the popupmenu.

image

โœจ Features

  • ๐ŸŒ… fully configurable views like nvim-notify, splits, popups, virtual text, ..
  • ๐Ÿ” use filters to route messages to different views
  • ๐ŸŒˆ message highlights are preserved in the views (like the colors of :hi)
  • ๐Ÿ“ command output like :messages is shown in normal buffers, which makes it much easier to work with
  • ๐Ÿ“š :Noice command to show a full message history
  • โŒจ๏ธ no more :h more-prompt
  • ๐Ÿ’ป fully customizable cmdline with icons
  • ๐Ÿ’… syntax highlighting for vim and lua on the cmdline
  • ๐Ÿšฅ statusline components
  • ๐Ÿ”ญ open message history in telescope.nvim

๐Ÿ”ฅ Status

Noice is using the new experimental vim.ui_attach API, so issues are to be expected. It is highly recommended to use Neovim nightly, since a bunch of issues have already been fixed upstream. Check this tracking issue for a list of known issues.

โšก๏ธ Requirements

  • Neovim >= 0.8.0 (nightly highly recommended)
  • nui.nvim: used for proper rendering and multiple views
  • nvim-notify: notification view (optional)
  • a Nerd Font (optional)
  • nvim-treesitter (optional, but highly recommended) used for highlighting the cmdline and lsp docs. Make sure to install the parsers for vim, regex, lua, bash, markdown and markdown_inline

๐Ÿ“ฆ Installation

Install the plugin with your preferred package manager:

-- lazy.nvim
{
  "folke/noice.nvim",
  event = "VeryLazy",
  opts = {
    -- add any options here
  },
  dependencies = {
    -- if you lazy-load any plugin below, make sure to add proper `module="..."` entries
    "MunifTanjim/nui.nvim",
    -- OPTIONAL:
    --   `nvim-notify` is only needed, if you want to use the notification view.
    --   If not available, we use `mini` as the fallback
    "rcarriga/nvim-notify",
    }
}

Suggested setup:

require("noice").setup({
  lsp = {
    -- override markdown rendering so that **cmp** and other plugins use **Treesitter**
    override = {
      ["vim.lsp.util.convert_input_to_markdown_lines"] = true,
      ["vim.lsp.util.stylize_markdown"] = true,
      ["cmp.entry.get_documentation"] = true, -- requires hrsh7th/nvim-cmp
    },
  },
  -- you can enable a preset for easier configuration
  presets = {
    bottom_search = true, -- use a classic bottom cmdline for search
    command_palette = true, -- position the cmdline and popupmenu together
    long_message_to_split = true, -- long messages will be sent to a split
    inc_rename = false, -- enables an input dialog for inc-rename.nvim
    lsp_doc_border = false, -- add a border to hover docs and signature help
  },
})

It's a good idea to run :checkhealth noice after installing to check for common issues.

vim-plug
" vim-plug
call plug#begin()
  Plug 'folke/noice.nvim'
  Plug 'MunifTanjim/nui.nvim'
call plug#end()

lua require("noice").setup()

โš™๏ธ Configuration

noice.nvim comes with the following defaults:

Check the wiki for configuration recipes.

{
  cmdline = {
    enabled = true, -- enables the Noice cmdline UI
    view = "cmdline_popup", -- view for rendering the cmdline. Change to `cmdline` to get a classic cmdline at the bottom
    opts = {}, -- global options for the cmdline. See section on views
    ---@type table<string, CmdlineFormat>
    format = {
      -- conceal: (default=true) This will hide the text in the cmdline that matches the pattern.
      -- view: (default is cmdline view)
      -- opts: any options passed to the view
      -- icon_hl_group: optional hl_group for the icon
      -- title: set to anything or empty string to hide
      cmdline = { pattern = "^:", icon = "๏”", lang = "vim" },
      search_down = { kind = "search", pattern = "^/", icon = "๏€‚ ๏„ƒ", lang = "regex" },
      search_up = { kind = "search", pattern = "^%?", icon = "๏€‚ ๏„‚", lang = "regex" },
      filter = { pattern = "^:%s*!", icon = "$", lang = "bash" },
      lua = { pattern = { "^:%s*lua%s+", "^:%s*lua%s*=%s*", "^:%s*=%s*" }, icon = "๎˜ ", lang = "lua" },
      help = { pattern = "^:%s*he?l?p?%s+", icon = "๏Ÿ•" },
      input = {}, -- Used by input()
      -- lua = false, -- to disable a format, set to `false`
    },
  },
  messages = {
    -- NOTE: If you enable messages, then the cmdline is enabled automatically.
    -- This is a current Neovim limitation.
    enabled = true, -- enables the Noice messages UI
    view = "notify", -- default view for messages
    view_error = "notify", -- view for errors
    view_warn = "notify", -- view for warnings
    view_history = "messages", -- view for :messages
    view_search = "virtualtext", -- view for search count messages. Set to `false` to disable
  },
  popupmenu = {
    enabled = true, -- enables the Noice popupmenu UI
    ---@type 'nui'|'cmp'
    backend = "nui", -- backend to use to show regular cmdline completions
    ---@type NoicePopupmenuItemKind|false
    -- Icons for completion item kinds (see defaults at noice.config.icons.kinds)
    kind_icons = {}, -- set to `false` to disable icons
  },
  -- default options for require('noice').redirect
  -- see the section on Command Redirection
  ---@type NoiceRouteConfig
  redirect = {
    view = "popup",
    filter = { event = "msg_show" },
  },
  -- You can add any custom commands below that will be available with `:Noice command`
  ---@type table<string, NoiceCommand>
  commands = {
    history = {
      -- options for the message history that you get with `:Noice`
      view = "split",
      opts = { enter = true, format = "details" },
      filter = {
        any = {
          { event = "notify" },
          { error = true },
          { warning = true },
          { event = "msg_show", kind = { "" } },
          { event = "lsp", kind = "message" },
        },
      },
    },
    -- :Noice last
    last = {
      view = "popup",
      opts = { enter = true, format = "details" },
      filter = {
        any = {
          { event = "notify" },
          { error = true },
          { warning = true },
          { event = "msg_show", kind = { "" } },
          { event = "lsp", kind = "message" },
        },
      },
      filter_opts = { count = 1 },
    },
    -- :Noice errors
    errors = {
      -- options for the message history that you get with `:Noice`
      view = "popup",
      opts = { enter = true, format = "details" },
      filter = { error = true },
      filter_opts = { reverse = true },
    },
  },
  notify = {
    -- Noice can be used as `vim.notify` so you can route any notification like other messages
    -- Notification messages have their level and other properties set.
    -- event is always "notify" and kind can be any log level as a string
    -- The default routes will forward notifications to nvim-notify
    -- Benefit of using Noice for this is the routing and consistent history view
    enabled = true,
    view = "notify",
  },
  lsp = {
    progress = {
      enabled = true,
      -- Lsp Progress is formatted using the builtins for lsp_progress. See config.format.builtin
      -- See the section on formatting for more details on how to customize.
      --- @type NoiceFormat|string
      format = "lsp_progress",
      --- @type NoiceFormat|string
      format_done = "lsp_progress_done",
      throttle = 1000 / 30, -- frequency to update lsp progress message
      view = "mini",
    },
    override = {
      -- override the default lsp markdown formatter with Noice
      ["vim.lsp.util.convert_input_to_markdown_lines"] = false,
      -- override the lsp markdown formatter with Noice
      ["vim.lsp.util.stylize_markdown"] = false,
      -- override cmp documentation with Noice (needs the other options to work)
      ["cmp.entry.get_documentation"] = false,
    },
    hover = {
      enabled = true,
      silent = false, -- set to true to not show a message if hover is not available
      view = nil, -- when nil, use defaults from documentation
      ---@type NoiceViewOptions
      opts = {}, -- merged with defaults from documentation
    },
    signature = {
      enabled = true,
      auto_open = {
        enabled = true,
        trigger = true, -- Automatically show signature help when typing a trigger character from the LSP
        luasnip = true, -- Will open signature help when jumping to Luasnip insert nodes
        throttle = 50, -- Debounce lsp signature help request by 50ms
      },
      view = nil, -- when nil, use defaults from documentation
      ---@type NoiceViewOptions
      opts = {}, -- merged with defaults from documentation
    },
    message = {
      -- Messages shown by lsp servers
      enabled = true,
      view = "notify",
      opts = {},
    },
    -- defaults for hover and signature help
    documentation = {
      view = "hover",
      ---@type NoiceViewOptions
      opts = {
        lang = "markdown",
        replace = true,
        render = "plain",
        format = { "{message}" },
        win_options = { concealcursor = "n", conceallevel = 3 },
      },
    },
  },
  markdown = {
    hover = {
      ["|(%S-)|"] = vim.cmd.help, -- vim help links
      ["%[.-%]%((%S-)%)"] = require("noice.util").open, -- markdown links
    },
    highlights = {
      ["|%S-|"] = "@text.reference",
      ["@%S+"] = "@parameter",
      ["^%s*(Parameters:)"] = "@text.title",
      ["^%s*(Return:)"] = "@text.title",
      ["^%s*(See also:)"] = "@text.title",
      ["{%S-}"] = "@parameter",
    },
  },
  health = {
    checker = true, -- Disable if you don't want health checks to run
  },
  smart_move = {
    -- noice tries to move out of the way of existing floating windows.
    enabled = true, -- you can disable this behaviour here
    -- add any filetypes here, that shouldn't trigger smart move.
    excluded_filetypes = { "cmp_menu", "cmp_docs", "notify" },
  },
  ---@type NoicePresets
  presets = {
    -- you can enable a preset by setting it to true, or a table that will override the preset config
    -- you can also add custom presets that you can enable/disable with enabled=true
    bottom_search = false, -- use a classic bottom cmdline for search
    command_palette = false, -- position the cmdline and popupmenu together
    long_message_to_split = false, -- long messages will be sent to a split
    inc_rename = false, -- enables an input dialog for inc-rename.nvim
    lsp_doc_border = false, -- add a border to hover docs and signature help
  },
  throttle = 1000 / 30, -- how frequently does Noice need to check for ui updates? This has no effect when in blocking mode.
  ---@type NoiceConfigViews
  views = {}, ---@see section on views
  ---@type NoiceRouteConfig[]
  routes = {}, --- @see section on routes
  ---@type table<string, NoiceFilter>
  status = {}, --- @see section on statusline components
  ---@type NoiceFormatOptions
  format = {}, --- @see section on formatting
}
If you don't want to use a Nerd Font, you can replace the icons with Unicode symbols.
  require("noice").setup({
    cmdline = {
      format = {
        cmdline = { icon = ">" },
        search_down = { icon = "๐Ÿ”โŒ„" },
        search_up = { icon = "๐Ÿ”โŒƒ" },
        filter = { icon = "$" },
        lua = { icon = "โ˜พ" },
        help = { icon = "?" },
      },
    },
    format = {
      level = {
        icons = {
          error = "โœ–",
          warn = "โ–ผ",
          info = "โ—",
        },
      },
    },
    popupmenu = {
      kind_icons = false,
    },
    inc_rename = {
      cmdline = {
        format = {
          IncRename = { icon = "โŸณ" },
        },
      },
    },
  })

๐Ÿ” Filters

Noice uses filters to route messages to specific views.

Name Type Description
any filter[] checks that at least one of the filters matches
blocking boolean are we in blocking mode?
cleared boolean checks if the message is cleared, meaning it's in the history
cmdline boolean or string checks if the message was generated by executing a cmdline. When string, then it is used as a pattern
error boolean all error-like kinds from ext_messages
event string or string[] any of the events from ext_messages or cmdline. See :h ui-messages
find string uses lua string.find to match the pattern
has boolean checks if the message is exists, meaning it's in the history
kind string or string[] any of the kinds from ext_messages. See :h ui-messages
max_height number maximum height of the message
max_length number maximum length of the message (total width of all the lines)
max_width number maximum width of the message
min_height number minimum height of the message
min_length number minimum length of the message (total width of all the lines)
min_width number minimum width of the message
mode string checks if vim.api.nvim_get_mode() contains the given mode
not filter checks whether the filter matches or not
warning boolean all warning-like kinds from ext_messages
Example:
-- all messages over 10 lines, excluding echo and search_count
local filter = {
  event = "msg_show",
  min_height = 10,
  ["not"] = { kind = { "search_count", "echo" } },
}

๐ŸŒ… Views

Noice comes with the following built-in backends:

A View (config.views) is a combination of a backend and options. Noice comes with the following built-in views with sane defaults:

View Backend Description
notify notify nvim-notify with level=nil, replace=false, merge=false
split split horizontal split
vsplit split vertical split
popup popup simple popup
mini mini minimal view, by default bottom right, right-aligned
cmdline popup bottom line, similar to the classic cmdline
cmdline_popup popup fancy cmdline popup, with different styles according to the cmdline mode
cmdline_output split split used by config.presets.cmdline_output_to_split
messages split split used for :messages
confirm popup popup used for confirm events
hover popup popup used for lsp signature help and hover
popupmenu nui.menu special view with the options used to render the popupmenu when backend is nui

Please refer to noice.config.views to see the options. Any options passed to existing views in config.views, will override those options only. You can configure completely new views and use them in custom routes.

Example:
-- override the default split view to always enter the split when it opens
require("noice").setup({
  views = {
    split = {
      enter = true,
    },
  },
})

All built-in Noice views have the filetype noice

Nui Options

See the Nui documentation for Popup and Split.

OptionDescription
size, position Size, position and their constituents can additionally be specified as "auto", to use the message height and width.
win_options.winhighlight String or can also be a table like:
{
  win_options = {
    winhighlight = {
      Normal = "NormalFloat",
      FloatBorder = "FloatBorder"
    },
  }
}
scrollbar Set to false to hide the scrollbar.

Notify Options

Option Type Default Description
title string "Notification" title to be used for the notification. Uses Message.title if available.
replace boolean false when true, messages routing to the same notify instance will replace existing messages instead of pushing a new notification every time
merge boolean false Merge messages into one Notification or create separate notifications
level number|string nil notification level. Uses Message.level if available.

Virtual Text Options

Right now there's only an option to set the hl_group used to render the virtual text.

๐ŸŽจ Formatting

Formatting options can be specified with config.format. For a list of the defaults, please refer to config.format

Noice includes the following formatters:

  • level: message level with optional icon and hl_group per level
  • text: any text with optional hl_group
  • title: message title with optional hl_group
  • event: message event with optional hl_group
  • kind: message kind with optional hl_group
  • date: formatted date with optional date format string
  • message: message content itself with optional hl_group to override message highlights
  • confirm: only useful for confirm messages. Will format the choices as buttons.
  • cmdline: will render the cmdline in the message that generated the message.
  • progress: progress bar used by lsp progress
  • spinner: spinners used by lsp progress
  • data: render any custom data from Message.opts. Useful in combination with the opts passed to vim.notify

Formatters are used in format definitions. Noice includes the following built-in formats:

{
  -- default format
  default = { "{level} ", "{title} ", "{message}" },
  -- default format for vim.notify views
  notify = { "{message}" },
  -- default format for the history
  details = {
    "{level} ",
    "{date} ",
    "{event}",
    { "{kind}", before = { ".", hl_group = "NoiceFormatKind" } },
    " ",
    "{title} ",
    "{cmdline} ",
    "{message}",
  },
  telescope = ..., -- formatter used to display telescope results
  telescope_preview = ..., -- formatter used to preview telescope results
  lsp_progress = ..., -- formatter used by lsp progress
  lsp_progress_done = ..., -- formatter used by lsp progress
}

Text before/after the formatter or in the before/after options, will only be rendered if the formatter itself rendered something.

The format view option, can be either a string (one of the built-in formats), or a table with a custom format definition.

To align text, you can use the align option for a view. Can be center, left or right.

๐Ÿš— Routes

A route has a filter, view and optional opts attribute.

  • view: one of the views (built-in or custom)
  • filter a filter for messages matching this route
  • opts: options for the view and the route

Route options can be any of the view options above, or one of:

Option Type Default Description
skip boolean false messages matching this filter will be skipped and not shown in any views
stop boolean true When false and a route matches the filter, then other routes can still process the message too. Useful if you want certain messages to be shown in multiple views.

Please refer to noice.config.routes for an overview of the default routes. Routes passed to setup() will be prepended to the default routes.

Example
-- skip search_count messages instead of showing them as virtual text
require("noice").setup({
  routes = {
    {
      filter = { event = "msg_show", kind = "search_count" },
      opts = { skip = true },
    },
  },
})

-- always route any messages with more than 20 lines to the split view
require("noice").setup({
  routes = {
    {
      view = "split",
      filter = { event = "msg_show", min_height = 20 },
    },
  },
})

๐Ÿšฅ Statusline Components

Noice comes with the following statusline components:

  • ruler
  • message: last line of the last message (event=show_msg)
  • command: showcmd
  • mode: showmode (@recording messages)
  • search: search count messages

See noice.config.status for the default config.

You can add custom statusline components in setup under the status key.

Statusline components have the following methods:

  • get: gets the content of the message without highlights
  • get_hl: gets the content of the message with highlights
  • has: checks if the component is available
Example of configuring lualine.nvim
require("lualine").setup({
  sections = {
    lualine_x = {
      {
        require("noice").api.status.message.get_hl,
        cond = require("noice").api.status.message.has,
      },
      {
        require("noice").api.status.command.get,
        cond = require("noice").api.status.command.has,
        color = { fg = "#ff9e64" },
      },
      {
        require("noice").api.status.mode.get,
        cond = require("noice").api.status.mode.has,
        color = { fg = "#ff9e64" },
      },
      {
        require("noice").api.status.search.get,
        cond = require("noice").api.status.search.has,
        color = { fg = "#ff9e64" },
      },
    },
  },
})

๐Ÿ”ญ Telescope

In order to use Noice in Telescope, you can either do :Noice telescope, or register the extension and use :Telescope noice. The results panel is formatted using config.format.formatters.telescope. The preview is formatted with config.format.formatters.telescope_preview

require("telescope").load_extension("noice")

๐Ÿš€ Usage

  • :Noice or :Noice history shows the message history
  • :Noice last shows the last message in a popup
  • :Noice dismiss dismiss all visible messages
  • :Noice errors shows the error messages in a split. Last errors on top
  • :Noice disable disables Noice
  • :Noice enable enables Noice
  • :Noice stats shows debugging stats
  • :Noice telescope opens message history in Telescope

Alternatively, all commands also exist as a full name like :NoiceLast, :NoiceDisable.

You can also use Lua equivalents.

vim.keymap.set("n", "<leader>nl", function()
  require("noice").cmd("last")
end)

vim.keymap.set("n", "<leader>nh", function()
  require("noice").cmd("history")
end)

You can add custom commands with config.commands

โ†ช๏ธ Command Redirection

Sometimes it's useful to redirect the messages generated by a command or function to a different view. That can be easily achieved with command redirection.

The redirect API can taken an optional routes parameter, which defaults to {config.redirect}.

-- redirect ":hi"
require("noice").redirect("hi")

-- redirect some function
require("noice").redirect(function()
  print("test")
end)

Adding the following keymap, will redirect the active cmdline when pressing <S-Enter>. The cmdline stays open, so you can change the command and execute it again. When exiting the cmdline, the popup window will be focused.

vim.keymap.set("c", "<S-Enter>", function()
  require("noice").redirect(vim.fn.getcmdline())
end, { desc = "Redirect Cmdline" })

Lsp Hover Doc Scrolling

vim.keymap.set({ "n", "i", "s" }, "<c-f>", function()
  if not require("noice.lsp").scroll(4) then
    return "<c-f>"
  end
end, { silent = true, expr = true })

vim.keymap.set({ "n", "i", "s" }, "<c-b>", function()
  if not require("noice.lsp").scroll(-4) then
    return "<c-b>"
  end
end, { silent = true, expr = true })

๐ŸŒˆ Highlight Groups

Click to see all highlight groups
Highlight Group Default Group Description
NoiceCmdline MsgArea Normal for the classic cmdline area at the bottom"
NoiceCmdlineIcon DiagnosticSignInfo Cmdline icon
NoiceCmdlineIconCalculator NoiceCmdlineIcon
NoiceCmdlineIconCmdline NoiceCmdlineIcon
NoiceCmdlineIconFilter NoiceCmdlineIcon
NoiceCmdlineIconHelp NoiceCmdlineIcon
NoiceCmdlineIconIncRename NoiceCmdlineIcon
NoiceCmdlineIconInput NoiceCmdlineIcon
NoiceCmdlineIconLua NoiceCmdlineIcon
NoiceCmdlineIconSearch DiagnosticSignWarn Cmdline search icon (/ and ?)
NoiceCmdlinePopup Normal Normal for the cmdline popup
NoiceCmdlinePopupBorder DiagnosticSignInfo Cmdline popup border
NoiceCmdlinePopupBorderCalculator NoiceCmdlinePopupBorder
NoiceCmdlinePopupBorderCmdline NoiceCmdlinePopupBorder
NoiceCmdlinePopupBorderFilter NoiceCmdlinePopupBorder
NoiceCmdlinePopupBorderHelp NoiceCmdlinePopupBorder
NoiceCmdlinePopupBorderIncRename NoiceCmdlinePopupBorder
NoiceCmdlinePopupBorderInput NoiceCmdlinePopupBorder
NoiceCmdlinePopupBorderLua NoiceCmdlinePopupBorder
NoiceCmdlinePopupBorderSearch DiagnosticSignWarn Cmdline popup border for search
NoiceCmdlinePopupTitle DiagnosticSignInfo Cmdline popup border
NoiceCmdlinePrompt Title prompt for input()
NoiceCompletionItemKindClass NoiceCompletionItemKindDefault
NoiceCompletionItemKindColor NoiceCompletionItemKindDefault
NoiceCompletionItemKindConstant NoiceCompletionItemKindDefault
NoiceCompletionItemKindConstructor NoiceCompletionItemKindDefault
NoiceCompletionItemKindDefault Special
NoiceCompletionItemKindEnum NoiceCompletionItemKindDefault
NoiceCompletionItemKindEnumMember NoiceCompletionItemKindDefault
NoiceCompletionItemKindField NoiceCompletionItemKindDefault
NoiceCompletionItemKindFile NoiceCompletionItemKindDefault
NoiceCompletionItemKindFolder NoiceCompletionItemKindDefault
NoiceCompletionItemKindFunction NoiceCompletionItemKindDefault
NoiceCompletionItemKindInterface NoiceCompletionItemKindDefault
NoiceCompletionItemKindKeyword NoiceCompletionItemKindDefault
NoiceCompletionItemKindMethod NoiceCompletionItemKindDefault
NoiceCompletionItemKindModule NoiceCompletionItemKindDefault
NoiceCompletionItemKindProperty NoiceCompletionItemKindDefault
NoiceCompletionItemKindSnippet NoiceCompletionItemKindDefault
NoiceCompletionItemKindStruct NoiceCompletionItemKindDefault
NoiceCompletionItemKindText NoiceCompletionItemKindDefault
NoiceCompletionItemKindUnit NoiceCompletionItemKindDefault
NoiceCompletionItemKindValue NoiceCompletionItemKindDefault
NoiceCompletionItemKindVariable NoiceCompletionItemKindDefault
NoiceCompletionItemMenu none Normal for the popupmenu
NoiceCompletionItemWord none Normal for the popupmenu
NoiceConfirm Normal Normal for the confirm view
NoiceConfirmBorder DiagnosticSignInfo Border for the confirm view
NoiceCursor Cursor Fake Cursor
NoiceFormatConfirm CursorLine
NoiceFormatConfirmDefault Visual
NoiceFormatDate Special
NoiceFormatEvent NonText
NoiceFormatKind NonText
NoiceFormatLevelDebug NonText
NoiceFormatLevelError DiagnosticVirtualTextError
NoiceFormatLevelInfo DiagnosticVirtualTextInfo
NoiceFormatLevelOff NonText
NoiceFormatLevelTrace NonText
NoiceFormatLevelWarn DiagnosticVirtualTextWarn
NoiceFormatProgressDone Search Progress bar done
NoiceFormatProgressTodo CursorLine progress bar todo
NoiceFormatTitle Title
NoiceLspProgressClient Title Lsp progress client name
NoiceLspProgressSpinner Constant Lsp progress spinner
NoiceLspProgressTitle NonText Lsp progress title
NoiceMini MsgArea Normal for mini view
NoicePopup NormalFloat Normal for popup views
NoicePopupBorder FloatBorder Border for popup views
NoicePopupmenu Pmenu Normal for the popupmenu
NoicePopupmenuBorder FloatBorder Popupmenu border
NoicePopupmenuMatch Special Part of the item that matches the input
NoicePopupmenuSelected PmenuSel Selected item in the popupmenu
NoiceScrollbar PmenuSbar Normal for scrollbar
NoiceScrollbarThumb PmenuThumb Scrollbar thumb
NoiceSplit NormalFloat Normal for split views
NoiceSplitBorder FloatBorder Border for split views
NoiceVirtualText DiagnosticVirtualTextInfo Default hl group for virtualtext views

noice.nvim's People

Contributors

amaanq avatar anhoder avatar armed avatar cpea2506 avatar disrupted avatar folke avatar geodimm avatar github-actions[bot] avatar gmerzu avatar grimm26 avatar hackeryarn avatar hezhizhen avatar jomik avatar lpoto avatar mariasolos avatar max397574 avatar mikesmithgh avatar nfwyst avatar ranjithshegde avatar runiq avatar saghen avatar sam-programs avatar shougo avatar snelling-a avatar suida avatar timdeve avatar unrealapex avatar utilyre avatar wangl-cc avatar xu-cheng avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

noice.nvim's Issues

noice.nvim defaults last active window number to 3 instead of 1.

Describe the bug
noice.nvim defaults last active window number to 3 instead of 1.

Which version of Neovim are you using?

NVIM v0.9.0-dev-1228-ga93ff5fc6-dirty
Build type: Release
LuaJIT 2.1.0-beta3

(nightly, I have not tested on stable - do you think this makes a difference?).

To Reproduce
Tested using minimal.lua, see attached video.

  • with noice.nvim vim.fn.winnr('$') returns 3
  • without noice.nvim vim.fn.winnr('$') correctly returns 1
Screen.Recording.2022-10-10.at.14.45.23.mov

I realised it because all configuration toggling functions that check if a certain window/buffer is the last one before quitting stopped working correctly (debugging, I realised that the condition vim.fn.winnr('$') no longer held).

Expected Behavior

vim.fn.winnr('$') to always return 1

Using `vim.pretty_print` and `print` on plugin config load - crashes neovim

Describe the bug
If I put any print statement in the config file of a plugin, neovim crashes with

hi!Assertion failed: (to_scroll >= 0), function msg_scroll_flush, file message.c, line 2414.
                                                                                            fish: Job 1, 'nvim' terminated by signal SIGABRT (Abort)
                                                                                                                                                    โŽ

Which version of Neovim are you using?
NVIM v0.8.0-1-g9e784a53b
Build type: RelWithDebInfo

To Reproduce
Steps to reproduce the behavior:

  1. In your plugins.lua, where packer is used, paste:
  use({
    "rcarriga/nvim-notify",
    config = function()
      require("notify").setup({})
    end,
  })

  use({
    "folke/noice.nvim",
    event = "VimEnter",
    config = function()
      require("noice").setup({})
    end,
    requires = {
      "MunifTanjim/nui.nvim",
      "rcarriga/nvim-notify",
    },
  })

  print("hi!")
  1. Restart nvim
  2. Get error message

Expected Behavior
Message is printed using notify or printed to regular messages.

Multiple notifications for `E486: Pattern not found`

Describe the bug
When searching fails there are multiple notification popups.

What version of Nevoim are you using?

โฏ nvim --version
NVIM v0.8.0
Build type: Release

To Reproduce
Search for the pattern that is not present

Expected behavior

There should be one notification for E486 and presumably, one for Search hit Bottom ?

Screenshots

Screenshot 2022-10-05 at 16 25 51

Noice log
Please include any related errors from the Noice log file. (open with :Noice log)

Noice log
Wed Oct  5 16:28:32 2022
...art/nvim-notify/lua/notify/service/buffer/highlights.lua:40: Invalid highlight name: NotifyERRORTitle27720

stack traceback:
.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:102: in function <.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:101>
[C]: in function 'nvim_set_hl'
...art/nvim-notify/lua/notify/service/buffer/highlights.lua:40: in function 'linked_group'
...art/nvim-notify/lua/notify/service/buffer/highlights.lua:45: in function 'NotifyBufHighlights'
...ker/start/nvim-notify/lua/notify/service/buffer/init.lua:43: in function '_create_highlights'
...ker/start/nvim-notify/lua/notify/service/buffer/init.lua:38: in function 'set_notification'
...ker/start/nvim-notify/lua/notify/service/buffer/init.lua:32: in function 'NotificationBuf'
...
...m/site/pack/packer/start/nvim-notify/lua/notify/init.lua:214: in function 'notify'
...ite/pack/packer/opt/noice.nvim/lua/noice/view/notify.lua:125: in function '_notify'
...ite/pack/packer/opt/noice.nvim/lua/noice/view/notify.lua:151: in function <...ite/pack/packer/opt/noice.nvim/lua/noice/view/notify.lua:128>
[C]: in function 'xpcall'
.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:107: in function 'try'
.../site/pack/packer/opt/noice.nvim/lua/noice/view/init.lua:82: in function 'display'
...vim/site/pack/packer/opt/noice.nvim/lua/noice/router.lua:91: in function <...vim/site/pack/packer/opt/noice.nvim/lua/noice/router.lua:75>
[C]: in function 'xpcall'
.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:107: in function 'try'
...im/site/pack/packer/opt/noice.nvim/lua/noice/ui/init.lua:29: in function <...im/site/pack/packer/opt/noice.nvim/lua/noice/ui/init.lua:22>

Empty Buffer is created with rmagatti/auto-session plugin

Describe the bug
Not sure why but when using https://github.com/rmagatti/auto-session with this plugin I keep getting an extra empty buffer window when I open a new session. Just calling nvim in a previously used directory (it saves a session after quitting) after opening some files.

Which version of Neovim are you using?
I'm using packer and nvchad with Neovim v0.8.0

To Reproduce
Open up a new session and you start having an extra new empty buffer. I also am using nvim-tree and bunch of other plugins so idk if maybe something else is interfering with this plugin.

Expected Behavior
No extra buffer window when new session is opened.

Pressing `<C-c` In Command Mode Without Entering Input Closes Neovim

Describe the bug
When pressing <C-c> in the command mode window(:) without inputting any commands, Neovim closes.

To Reproduce

  1. press : in normal mode
  2. press <C-c>
  3. see error
    Expected behavior
    <C-c> would either do nothing or close the window.
    Screenshots
    command mode without any input
    image

Noice log
Please include any related errors from the Noice log file. (open with :Noice log)



10/4/2022 2:42:21 PM
...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: Keyboard interrupt

stack traceback:
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
	[C]: in function 'nvim_buf_set_option'
	...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
	...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
	...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:75>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/4/2022 2:43:18 PM
...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: Keyboard interrupt

stack traceback:
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
	[C]: in function 'nvim_buf_set_option'
	...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
	...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
	...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:75>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/4/2022 5:35:57 PM
...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: Vim(append):Error executing lua callback: ...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:151: Keyboard interrupt
stack traceback:
	[C]: in function 'nvim_buf_set_option'
	...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:151: in function 'enable_syntax'
	...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:169: in function 'attach'
	...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:477: in function 'attach_module'
	...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:500: in function 'reattach_module'
	...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:108: in function <...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:107>
	[C]: in function 'nvim_buf_set_option'
	...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
	...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
	...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:75>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

stack traceback:
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
	[C]: in function 'nvim_buf_set_option'
	...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
	...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
	...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:75>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/4/2022 5:40:21 PM
...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: Vim(append):Error executing lua callback: ...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:151: Keyboard interrupt
stack traceback:
	[C]: in function 'nvim_buf_set_option'
	...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:151: in function 'enable_syntax'
	...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:175: in function 'detach'
	...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:490: in function 'detach_module'
	...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:499: in function 'reattach_module'
	...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:108: in function <...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:107>
	[C]: in function 'nvim_buf_set_option'
	...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
	...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
	...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:75>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

stack traceback:
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
	[C]: in function 'nvim_buf_set_option'
	...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
	...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
	...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:75>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/4/2022 6:21:48 PM
...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: Vim(append):Error executing lua callback: ...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:151: Keyboard interrupt
stack traceback:
	[C]: in function 'nvim_buf_set_option'
	...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:151: in function 'enable_syntax'
	...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:175: in function 'detach'
	...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:490: in function 'detach_module'
	...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:499: in function 'reattach_module'
	...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:108: in function <...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:107>
	[C]: in function 'nvim_buf_set_option'
	...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
	...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
	...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:75>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

stack traceback:
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
	[C]: in function 'nvim_buf_set_option'
	...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
	...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
	...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:75>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/4/2022 6:21:55 PM
...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: Keyboard interrupt

stack traceback:
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
	[C]: in function 'nvim_buf_set_option'
	...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
	...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
	...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:75>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/4/2022 6:32:34 PM
...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: Vim(append):Error executing lua callback: ...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:151: Keyboard interrupt
stack traceback:
	[C]: in function 'nvim_buf_set_option'
	...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:151: in function 'enable_syntax'
	...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:175: in function 'detach'
	...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:490: in function 'detach_module'
	...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:499: in function 'reattach_module'
	...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:108: in function <...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:107>
	[C]: in function 'nvim_buf_set_option'
	...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
	...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
	...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:75>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

stack traceback:
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
	[C]: in function 'nvim_buf_set_option'
	...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
	...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
	...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:75>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

Delay When Typing in Cmdline

Describe the bug
There is latency between pressing a key and the output appearing in the cmdline. This is probably because the cmdline window is "fake". Perhaps instead of emulating a cursorline and displaying text typed, have an actual window you can type text in and send the input to vim.cmd? Take my suggestion with a grain of salt, I have not looked at how you implemented this and you are far more experienced than I am creating lua plugins.

What version of Nevoim are you using?
Gui

To Reproduce

  1. Open the cmdline with :
  2. Type anything
    Expected behavior
    Typed text would appear almost immediately.

Noice log
Please include any related errors from the Noice log file. (open with :Noice log)

Noice log

10/4/2022 9:33:43 PM
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: end_col value outside range

stack traceback:
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
[C]: in function 'nvim_buf_set_extmark'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: in function 'highlight'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\line\init.lua:55: in function 'highlight'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\block.lua:72: in function 'highlight'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:151: in function 'render'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:57: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:48>
...
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>
[C]: in function 'nvim_err_writeln'
...\plugged\nvim-treesitter/lua\nvim-treesitter\install.lua:169: in function 'cb'
vim/_editor.lua:262: in function <vim/_editor.lua:261>

10/4/2022 9:53:47 PM
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: end_col value outside range

stack traceback:
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
[C]: in function 'nvim_buf_set_extmark'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: in function 'highlight'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\line\init.lua:55: in function 'highlight'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\block.lua:72: in function 'highlight'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:151: in function 'render'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:57: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:48>
...
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\hacks.lua:200: in function 'push'
C:\Users\Aaron.vim\plugged\nvim-notify/lua\notify\init.lua:214: in function 'notify'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:102: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:74>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/4/2022 9:53:52 PM
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: end_col value outside range

stack traceback:
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
[C]: in function 'nvim_buf_set_extmark'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: in function 'highlight'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\line\init.lua:55: in function 'highlight'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\block.lua:72: in function 'highlight'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:151: in function 'render'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:57: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:48>
...
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\hacks.lua:200: in function 'push'
C:\Users\Aaron.vim\plugged\nvim-notify/lua\notify\init.lua:214: in function 'notify'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:102: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:74>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/4/2022 9:57:08 PM
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: end_col value outside range

stack traceback:
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
[C]: in function 'nvim_buf_set_extmark'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: in function 'highlight'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\line\init.lua:55: in function 'highlight'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\block.lua:72: in function 'highlight'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:151: in function 'render'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:57: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:48>
...
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\hacks.lua:195: in function 'push'
C:\Users\Aaron.vim\plugged\nvim-notify/lua\notify\init.lua:214: in function 'notify'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:102: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:74>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/4/2022 10:49:06 PM
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: Vim(append):Error executing lua callback: ...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:151: Keyboard interrupt
stack traceback:
[C]: in function 'nvim_buf_set_option'
...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:151: in function 'enable_syntax'
...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:175: in function 'detach'
...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:490: in function 'detach_module'
...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:499: in function 'reattach_module'
...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:108: in function <...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:107>
[C]: in function 'nvim_buf_set_option'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
...ers\Aaron.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...ers\Aaron.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

stack traceback:
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
[C]: in function 'nvim_buf_set_option'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
...ers\Aaron.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...ers\Aaron.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/4/2022 10:50:17 PM
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: Vim(append):Error executing lua callback: ...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:151: Keyboard interrupt
stack traceback:
[C]: in function 'nvim_buf_set_option'
...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:151: in function 'enable_syntax'
...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:169: in function 'attach'
...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:477: in function 'attach_module'
...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:500: in function 'reattach_module'
...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:108: in function <...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:107>
[C]: in function 'nvim_buf_set_option'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
...ers\Aaron.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...ers\Aaron.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

stack traceback:
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
[C]: in function 'nvim_buf_set_option'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
...ers\Aaron.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...ers\Aaron.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/4/2022 10:53:21 PM
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: end_col value outside range

stack traceback:
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function <...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:101>
[C]: in function 'nvim_buf_set_extmark'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: in function 'highlight'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\line\init.lua:55: in function 'highlight'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\block.lua:72: in function 'highlight'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:151: in function 'render'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:57: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:48>
...
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\hacks.lua:195: in function 'push'
C:\Users\Aaron.vim\plugged\nvim-notify/lua\notify\init.lua:214: in function 'notify'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:102: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:74>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:107: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:107: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

sidenote: I noticed you started using details element to conceal the log output in issue templates, thanks for taking my issue as inspiration!

`lazyredraw = true` causes constantly increasing RAM usage

Describe the bug
When lazyredraw is set to true, typing : leads to constantly increasing RAM usage and constant unexpectedly high CPU usage.

Which version of Neovim are you using?
Neovim 0.8 (stable release) in xfce4-terminal. Same issue can be reproduced in NVIM v0.9.0-dev-55-gedc8a1f04 (one of the recent nightly) and kitty terminal.

To Reproduce
Steps to reproduce the behavior:

  1. Create minimal init file (called, for example, 'noice_minimal.lua'):
-- Replace `packadd` arguments to actual plugin names in your 'pack' directory
vim.cmd('packadd nui')
vim.cmd('packadd nvim-notify')
vim.cmd('packadd noice')
require('noice').setup()
vim.o.termguicolors = true

vim.o.lazyredraw = true
  1. Open Neovim with nvim -u noice_minimal.lua noice_minimal.lua.
  2. Type :.

Expected Behavior
RAM usage and CPU is identical to hitting : without 'noice.nvim' set up.

Screenshots
Demo:

noice_memory-issue.mp4

Couple of notes:

  • It might be an issue with 'nui.nvim', I am not sure.
  • I remember having same behavior when accidentally was setting a lot of extmarks over each other in buffer (so that effect was invisible) without cleaning its namespace.

Noice Log
:Noice log is empty.

Notification appears folded

Describe the bug
The stats notification will be folded unless I disable code folding with set nofoldenable.

To Reproduce
Enable code folding with set foldenable
Execute Noice stats

Expected behavior
I should see the stats in the notify window

Screenshots
image

Editor Crashes When There Are No Results For A Search

Describe the bug
When searching for text that is not present in a buffer, Neovide crashes.

Which version of Neovim are you using?
Gui

To Reproduce
.1. open a file
2. search for text(/search text) not found in the buffer
3. press Enter
4. see error

Expected Behavior
Noice/Search would say that there are zero results for the search I tried(probably in a notification).

Noice Log
Please include any related errors from the Noice log file. (open with :Noice log)

Noice log

10/4/2022 9:33:43 PM
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: end_col value outside range

stack traceback:
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
[C]: in function 'nvim_buf_set_extmark'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: in function 'highlight'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\line\init.lua:55: in function 'highlight'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\block.lua:72: in function 'highlight'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:151: in function 'render'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:57: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:48>
...
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>
[C]: in function 'nvim_err_writeln'
...\plugged\nvim-treesitter/lua\nvim-treesitter\install.lua:169: in function 'cb'
vim/_editor.lua:262: in function <vim/_editor.lua:261>

10/4/2022 9:53:47 PM
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: end_col value outside range

stack traceback:
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
[C]: in function 'nvim_buf_set_extmark'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: in function 'highlight'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\line\init.lua:55: in function 'highlight'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\block.lua:72: in function 'highlight'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:151: in function 'render'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:57: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:48>
...
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\hacks.lua:200: in function 'push'
C:\Users\Aaron.vim\plugged\nvim-notify/lua\notify\init.lua:214: in function 'notify'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:102: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:74>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/4/2022 9:53:52 PM
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: end_col value outside range

stack traceback:
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
[C]: in function 'nvim_buf_set_extmark'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: in function 'highlight'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\line\init.lua:55: in function 'highlight'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\block.lua:72: in function 'highlight'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:151: in function 'render'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:57: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:48>
...
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\hacks.lua:200: in function 'push'
C:\Users\Aaron.vim\plugged\nvim-notify/lua\notify\init.lua:214: in function 'notify'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:102: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:74>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/4/2022 9:57:08 PM
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: end_col value outside range

stack traceback:
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
[C]: in function 'nvim_buf_set_extmark'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: in function 'highlight'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\line\init.lua:55: in function 'highlight'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\block.lua:72: in function 'highlight'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:151: in function 'render'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:57: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:48>
...
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\hacks.lua:195: in function 'push'
C:\Users\Aaron.vim\plugged\nvim-notify/lua\notify\init.lua:214: in function 'notify'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:102: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:74>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/4/2022 10:49:06 PM
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: Vim(append):Error executing lua callback: ...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:151: Keyboard interrupt
stack traceback:
[C]: in function 'nvim_buf_set_option'
...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:151: in function 'enable_syntax'
...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:175: in function 'detach'
...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:490: in function 'detach_module'
...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:499: in function 'reattach_module'
...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:108: in function <...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:107>
[C]: in function 'nvim_buf_set_option'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
...ers\Aaron.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...ers\Aaron.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

stack traceback:
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
[C]: in function 'nvim_buf_set_option'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
...ers\Aaron.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...ers\Aaron.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/4/2022 10:50:17 PM
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: Vim(append):Error executing lua callback: ...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:151: Keyboard interrupt
stack traceback:
[C]: in function 'nvim_buf_set_option'
...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:151: in function 'enable_syntax'
...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:169: in function 'attach'
...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:477: in function 'attach_module'
...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:500: in function 'reattach_module'
...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:108: in function <...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:107>
[C]: in function 'nvim_buf_set_option'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
...ers\Aaron.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...ers\Aaron.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

stack traceback:
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
[C]: in function 'nvim_buf_set_option'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
...ers\Aaron.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...ers\Aaron.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/4/2022 10:53:21 PM
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: end_col value outside range

stack traceback:
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function <...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:101>
[C]: in function 'nvim_buf_set_extmark'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: in function 'highlight'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\line\init.lua:55: in function 'highlight'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\block.lua:72: in function 'highlight'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:151: in function 'render'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:57: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:48>
...
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\hacks.lua:195: in function 'push'
C:\Users\Aaron.vim\plugged\nvim-notify/lua\notify\init.lua:214: in function 'notify'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:102: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:74>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:107: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:107: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

Disable virtual text

Context

I use the commands and messages in my statusline, therefore the virtual text sometimes is redundant.

Proposed solution

Add a configuration to disable the virtual text altogether:

require('noice').setup({
  views = {
    virtualtext = {
     enabled = false,
    }
  },
})

[Bug] pressing backspace with the wildmenu reopens it in the wrong position

Hi @folke,

Just tried this plugin out, and it's fantastic out of the box ๐Ÿš€. Really cool that it works so well despite all the lingering bugs in the vim.ui_attach api.

Since it's still WIP thought I'd report an issue I noticed using it.

I've noticed that whilst autocompleting with the wildmenu (at least I assume the menu that looks like the cmp window is the wildmenu). When I hit backspace, the window re-opens in the wrong position, just above the original commandline position.

image

I'm currently using cmdheight=0 if that's relevant and can reproduce it using the following steps, note the specific completion is somewhat arbitrary, it's just one I noticed.

  1. type cmenu<space>
  2. press <tab> to open the wildmenu (or whatever key you have setup)
  3. select the first completion item (if you don't use preselect)
  4. Press backspace
  5. See bug

Recomended way to keep config in its own file?

First off, this project is awesome, thank you for all your hard work โค๏ธ

I'm not sure this is actually a feature request, it's probably my lack of Neovim knowledge or just a docs update. Basically I'm keeping my Noice config in a separate file. This means that I'm calling require('noice') outside of Packer's use(...). But because Noice is installed to ../packer/opt/... the require('noice') won't work until I've also done a vim.cmd [[packadd noice.nvim]].

Is that already just common enough knowledge that it doesn't need to be in the docs? Or have I missed something in my own config that automatically does packadd for all packer/opt plugins?

Error running notification service: ...opt/nvim-notify/lua/notify/service/buffer/highlights.lua:153: Invalid buffer id: 3

Describe the bug
A clear and concise description of what the bug is.

Notification:

Error running notification service: ...opt/nvim-notify/lua/notify/service/buffer/highlights.lua:153: Invalid buffer id: 3

What version of Nevoim are you using?
Gui? Nightly? Version?

0.9.0 dev

To Reproduce
Steps to reproduce the behavior:

Install and enable this plugin

Expected behavior
A clear and concise description of what you expected to happen.

No notification w/ that error

Screenshots
If applicable, add screenshots to help explain your problem.

image

Noice log
Please include any related errors from the Noice log file. (open with :Noice log)

Logs are empty..

Make proper noice highlight groups

Noice is very configurable and currently uses some highlight groups in the default configuration. Users can change it to anything else, but it would still be good to have some of those groups have a custom Noice name.

Spell suggestions cannot be selected

Describe the bug

Spell suggestion cannot be selected by pressing number keys.

Which version of Neovim are you using?

โˆš ; nvim --version
NVIM v0.8.0-v0.8.0
Build type: Release
LuaJIT 2.1.0-beta3

To Reproduce
Steps to reproduce the behavior:

  1. Open a file.
  2. Write some garbage.
  3. Enable spelling.
  4. Get a suggestion for any badly spelled word via command z=
  5. Try selection a replacement.

Expected Behavior

A press of a number key should select the suggested spelling and replace it within the text.

This is the default behaviour.

Screenshots

Peek.2022-10-10.09-54.mp4

Sadly, the key presses are not shownโ€ฆ

Noice Log

Noice log
Nothing shownโ€ฆ

`:Noice` doesn't populate unless you run `:history` first

Describe the bug
Run :Noice. Close the opened buffer. Run it again. No buffer is opened and you get an error.

To Reproduce
See above.

Expected behavior
Running :Noice the second time re-opens the buffer like the first time.

Screenshots
image

Noice log



Tue Oct  4 06:46:16 2022
.../site/pack/packer/opt/noice.nvim/lua/noice/view/init.lua:140: Expected Lua number

stack traceback:
	[C]: in function 'pcall'
	.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:54: in function 'on_error'
	.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:97: in function <.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:96>
	[C]: in function 'nvim_buf_set_lines'
	.../site/pack/packer/opt/noice.nvim/lua/noice/view/init.lua:140: in function 'render'
	...m/site/pack/packer/opt/noice.nvim/lua/noice/view/nui.lua:160: in function <...m/site/pack/packer/opt/noice.nvim/lua/noice/view/nui.lua:153>
	[C]: in function 'xpcall'
	.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:102: in function 'try'
	.../site/pack/packer/opt/noice.nvim/lua/noice/view/init.lua:77: in function 'display'
	...m/site/pack/packer/opt/noice.nvim/lua/noice/commands.lua:34: in function 'history'
	...m/site/pack/packer/opt/noice.nvim/lua/noice/commands.lua:47: in function <...m/site/pack/packer/opt/noice.nvim/lua/noice/commands.lua:42>

Tue Oct  4 06:46:37 2022
.../site/pack/packer/opt/noice.nvim/lua/noice/view/init.lua:140: Expected Lua number

stack traceback:
	[C]: in function 'pcall'
	.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:54: in function 'on_error'
	.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:97: in function <.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:96>
	[C]: in function 'nvim_buf_set_lines'
	.../site/pack/packer/opt/noice.nvim/lua/noice/view/init.lua:140: in function 'render'
	...m/site/pack/packer/opt/noice.nvim/lua/noice/view/nui.lua:160: in function <...m/site/pack/packer/opt/noice.nvim/lua/noice/view/nui.lua:153>
	[C]: in function 'xpcall'
	.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:102: in function 'try'
	.../site/pack/packer/opt/noice.nvim/lua/noice/view/init.lua:77: in function 'display'
	...m/site/pack/packer/opt/noice.nvim/lua/noice/commands.lua:34: in function 'history'
	...m/site/pack/packer/opt/noice.nvim/lua/noice/commands.lua:47: in function <...m/site/pack/packer/opt/noice.nvim/lua/noice/commands.lua:42>

Tue Oct  4 06:48:12 2022
.../site/pack/packer/opt/noice.nvim/lua/noice/view/init.lua:140: Expected Lua number

stack traceback:
	[C]: in function 'pcall'
	.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:54: in function 'on_error'
	.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:97: in function <.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:96>
	[C]: in function 'nvim_buf_set_lines'
	.../site/pack/packer/opt/noice.nvim/lua/noice/view/init.lua:140: in function 'render'
	...m/site/pack/packer/opt/noice.nvim/lua/noice/view/nui.lua:160: in function <...m/site/pack/packer/opt/noice.nvim/lua/noice/view/nui.lua:153>
	[C]: in function 'xpcall'
	.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:102: in function 'try'
	.../site/pack/packer/opt/noice.nvim/lua/noice/view/init.lua:77: in function 'display'
	...m/site/pack/packer/opt/noice.nvim/lua/noice/commands.lua:34: in function 'history'
	...m/site/pack/packer/opt/noice.nvim/lua/noice/commands.lua:47: in function <...m/site/pack/packer/opt/noice.nvim/lua/noice/commands.lua:42>

Command mode keymaps are not preserved

Describe the bug
I have a command-mode keymap so that when I press the up arrow, instead of normal cycling through history, it copies the current command into a Telescope command_history finder.

To Reproduce

vim.keymap.set('c', '<Up>', function()
  local search = vim.fn.getcmdline()
  vim.fn.setcmdline('') -- otherwise the command gets executed when opening the finder
  require('telescope.builtin').command_history({ default_text = search })
end)

Then, with noice.nvim replacing your cmdline with the popup window, type :<Up>. It will cycle through history normally instead of opening the Telescope finder.

Expected behavior
It respects command-mode keymaps, or alternatively, the plugin exposes a way to create custom keymaps for the cmdline popup.

Screenshots
N/A

Noice log
N/A

Uninstalling a plugin blocks the packer popup showing which plugin(s) are being removed.

Describe the bug

When, say, one replaces a plugin for another or uninstalls one, packer has a prompt asking you to confirm the removal of said plugins. The cmdline bar in the middle is overlayed on top of this prompt (and it's there for you to type y/n), blocking this message.

What version of Nevoim are you using?
Gui? Nightly? Version?

0.9.0 dev

To Reproduce
Steps to reproduce the behavior:

Uninstall a plugin with this plugin enabled.

Expected behavior
A clear and concise description of what you expected to happen.

Should not be overlayed, maybe above or below?

Screenshots
If applicable, add screenshots to help explain your problem.

image

Noice log

N/A

lazy_exists a nil value

Hi Folke,
after last_update I receive the following error:
Error in packer_compiled: ...im/site/pack/packer/start/noice.nvim/lua/noice/hacks.lua:214: attempt to call field 'lazy_exists' (a nil value)

[Feature/Question] Integration with cmp-cmdline

So this issue is a little unclear since I don't know where it should be, i.e. in cmp-cmdline's repo or here, but this seems like a good place to start.

When using https://github.com/hrsh7th/cmp-cmdline with this plugin enabled, the position of the cmp window is just above the cmdline and doesn't change. This makes sense since cmp-cmdline likely hardcoded the position of the window and has not adapted to vim.ui_attach so there is likely some change required there. Although something that made me think it could maybe be solved here was the addition of this change to cmp-cmdline that no longer constrains the source to just the cmdline
hrsh7th/cmp-cmdline#61

Although I guess with ui_attach you are in cmdline mode, so maybe that would have to be disabled somehow and re-enabled as a source for your window. Not sure what/if there is a good solution or if the two plugins are just incompatible.

Left/Right arrow keys don't work well in Cmdline UI with Substitution

Describe the bug
I type : and enter a substitution pattern (e.g. %s/foo/bar/) but I find the UI gets very laggy and confused about where new characters are to be inserted.

Which version of Neovim are you using?
0.8

To Reproduce
Steps to reproduce the behavior:
After entering a substitution like %s/foo/ then use the arrow keys to move around and type in a change to foo and you'll see the UI gets laggy and then the inserting of new text gets confused as if the cursor position has changed.

I've also just noticed that if I press : and then the up arrow to go back to my substitution, I now can't move the cursor to the left. Well, it LOOKS like the cursor isn't moving, but if I press the left arrow 3 times and then press the delete key then the expected character is deleted. So it's visually the cursor looks like it isn't moving.

Expected Behavior
No lag, and to be able to freely move my left/right arrow keys to a position to start typing.

Noice Log
Not sure if this is related, but the following is in the log from me playing around with substitution patterns in the :Ex Cmdline UI...

Noice log
Sun  9 Oct 11:19:58 2022
...m/site/pack/packer/start/nvim-notify/lua/notify/init.lua:165: module 'notify.stages.static' not found:
	no field package.preload['notify.stages.static']
	no file './notify/stages/static.lua'
	no file '/opt/homebrew/share/luajit-2.1.0-beta3/notify/stages/static.lua'
	no file '/usr/local/share/lua/5.1/notify/stages/static.lua'
	no file '/usr/local/share/lua/5.1/notify/stages/static/init.lua'
	no file '/opt/homebrew/share/lua/5.1/notify/stages/static.lua'
	no file '/opt/homebrew/share/lua/5.1/notify/stages/static/init.lua'
	no file '/Users/integralist/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/notify/stages/static.lua'
	no file '/Users/integralist/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/notify/stages/static/init.lua'
	no file '/Users/integralist/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/notify/stages/static.lua'
	no file '/Users/integralist/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/notify/stages/static/init.lua'
	no file './notify/stages/static.so'
	no file '/usr/local/lib/lua/5.1/notify/stages/static.so'
	no file '/opt/homebrew/lib/lua/5.1/notify/stages/static.so'
	no file '/usr/local/lib/lua/5.1/loadall.so'
	no file '/Users/integralist/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/lua/5.1/notify/stages/static.so'
	no file './notify.so'
	no file '/usr/local/lib/lua/5.1/notify.so'
	no file '/opt/homebrew/lib/lua/5.1/notify.so'
	no file '/usr/local/lib/lua/5.1/loadall.so'
	no file '/Users/integralist/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/lua/5.1/notify.so'

stack traceback:
.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:119: in function <.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:118>
[C]: in function '__index'
...m/site/pack/packer/start/nvim-notify/lua/notify/init.lua:165: in function 'instance'
...ite/pack/packer/opt/noice.nvim/lua/noice/view/notify.lua:35: in function 'instance'
...ite/pack/packer/opt/noice.nvim/lua/noice/view/notify.lua:107: in function '_notify'
...ite/pack/packer/opt/noice.nvim/lua/noice/view/notify.lua:157: in function <...ite/pack/packer/opt/noice.nvim/lua/noice/view/notify.lua:135>
[C]: in function 'xpcall'
...
...ite/pack/packer/opt/noice.nvim/lua/noice/view/notify.lua:157: in function <...ite/pack/packer/opt/noice.nvim/lua/noice/view/notify.lua:135>
[C]: in function 'xpcall'
.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:124: in function 'try'
.../site/pack/packer/opt/noice.nvim/lua/noice/view/init.lua:84: in function 'display'
.../pack/packer/opt/noice.nvim/lua/noice/message/router.lua:91: in function <.../pack/packer/opt/noice.nvim/lua/noice/message/router.lua:75>
[C]: in function 'xpcall'
.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:124: in function 'try'
.../pack/packer/opt/noice.nvim/lua/noice/message/router.lua:34: in function ''
vim/_editor.lua: in function ''
vim/_editor.lua: in function <vim/_editor.lua:0>

Sun 9 Oct 11:31:37 2022
.../start/telescope.nvim/lua/telescope/_extensions/init.lua:10: 'notify' extension doesn't exist or isn't installed: ...r/start/nvim-notify/lua/telescope/_extensions/notify.lua:8: module 'telescope.previewers' not found:
no field package.preload['telescope.previewers']
no file './telescope/previewers.lua'
no file '/opt/homebrew/share/luajit-2.1.0-beta3/telescope/previewers.lua'
no file '/usr/local/share/lua/5.1/telescope/previewers.lua'
no file '/usr/local/share/lua/5.1/telescope/previewers/init.lua'
no file '/opt/homebrew/share/lua/5.1/telescope/previewers.lua'
no file '/opt/homebrew/share/lua/5.1/telescope/previewers/init.lua'
no file '/Users/integralist/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/telescope/previewers.lua'
no file '/Users/integralist/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/telescope/previewers/init.lua'
no file '/Users/integralist/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/telescope/previewers.lua'
no file '/Users/integralist/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/telescope/previewers/init.lua'
no file './telescope/previewers.so'
no file '/usr/local/lib/lua/5.1/telescope/previewers.so'
no file '/opt/homebrew/lib/lua/5.1/telescope/previewers.so'
no file '/usr/local/lib/lua/5.1/loadall.so'
no file '/Users/integralist/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/lua/5.1/telescope/previewers.so'
no file './telescope.so'
no file '/usr/local/lib/lua/5.1/telescope.so'
no file '/opt/homebrew/lib/lua/5.1/telescope.so'
no file '/usr/local/lib/lua/5.1/loadall.so'
no file '/Users/integralist/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/lua/5.1/telescope.so'

stack traceback:
.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:119: in function <.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:118>
[C]: in function 'error'
.../start/telescope.nvim/lua/telescope/_extensions/init.lua:10: in function 'load_extension'
.../start/telescope.nvim/lua/telescope/_extensions/init.lua:62: in function 'load_extension'
...m/site/pack/packer/start/nvim-notify/lua/notify/init.lua:33: in function 'setup'
...m/site/pack/packer/start/nvim-notify/lua/notify/init.lua:82: in function 'notify'
...ite/pack/packer/opt/noice.nvim/lua/noice/view/notify.lua:132: in function '_notify'
...ite/pack/packer/opt/noice.nvim/lua/noice/view/notify.lua:157: in function <...ite/pack/packer/opt/noice.nvim/lua/noice/view/notify.lua:135>
[C]: in function 'xpcall'
.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:124: in function 'try'
.../site/pack/packer/opt/noice.nvim/lua/noice/view/init.lua:84: in function 'display'
.../pack/packer/opt/noice.nvim/lua/noice/message/router.lua:91: in function <.../pack/packer/opt/noice.nvim/lua/noice/message/router.lua:75>
[C]: in function 'xpcall'
.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:124: in function 'try'
.../pack/packer/opt/noice.nvim/lua/noice/message/router.lua:34: in function ''
vim/_editor.lua: in function ''
vim/_editor.lua: in function <vim/_editor.lua:0>

Mon 10 Oct 09:19:30 2022
...m/site/pack/packer/start/nui.nvim/lua/nui/split/init.lua:132: Invalid window id: 1212

stack traceback:
.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:119: in function <.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:118>
[C]: in function 'nvim_win_call'
...m/site/pack/packer/start/nui.nvim/lua/nui/split/init.lua:132: in function '_open_window'
...m/site/pack/packer/start/nui.nvim/lua/nui/split/init.lua:210: in function 'mount'
...m/site/pack/packer/opt/noice.nvim/lua/noice/view/nui.lua:162: in function <...m/site/pack/packer/opt/noice.nvim/lua/noice/view/nui.lua:156>
[C]: in function 'xpcall'
.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:124: in function 'try'
.../site/pack/packer/opt/noice.nvim/lua/noice/view/init.lua:84: in function 'display'
.../pack/packer/opt/noice.nvim/lua/noice/message/router.lua:91: in function <.../pack/packer/opt/noice.nvim/lua/noice/message/router.lua:75>
[C]: in function 'xpcall'
.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:124: in function 'try'
...im/site/pack/packer/opt/noice.nvim/lua/noice/ui/init.lua:29: in function <...im/site/pack/packer/opt/noice.nvim/lua/noice/ui/init.lua:22>

Mon 10 Oct 11:17:22 2022
...m/site/pack/packer/start/nui.nvim/lua/nui/utils/init.lua:129: Vim(append):Error executing lua callback: vim/keymap.lua:0: E31: No such mapping
stack traceback:
[C]: in function 'nvim_buf_del_keymap'
vim/keymap.lua: in function 'del'
...r-textobjects/lua/nvim-treesitter/textobjects/attach.lua:57: in function 'detach'
...er/start/nvim-treesitter/lua/nvim-treesitter/configs.lua:490: in function 'detach_module'
...er/start/nvim-treesitter/lua/nvim-treesitter/configs.lua:499: in function 'reattach_module'
...er/start/nvim-treesitter/lua/nvim-treesitter/configs.lua:108: in function <...er/start/nvim-treesitter/lua/nvim-treesitter/configs.lua:107>
[C]: in function 'nvim_buf_set_option'
...m/site/pack/packer/start/nui.nvim/lua/nui/utils/init.lua:129: in function 'set_buf_options'
.../site/pack/packer/opt/noice.nvim/lua/noice/view/init.lua:158: in function 'render'
...m/site/pack/packer/opt/noice.nvim/lua/noice/view/nui.lua:170: in function <...m/site/pack/packer/opt/noice.nvim/lua/noice/view/nui.lua:156>
[C]: in function 'xpcall'
.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:124: in function 'try'
.../site/pack/packer/opt/noice.nvim/lua/noice/view/init.lua:84: in function 'display'
.../pack/packer/opt/noice.nvim/lua/noice/message/router.lua:91: in function <.../pack/packer/opt/noice.nvim/lua/noice/message/router.lua:75>
[C]: in function 'xpcall'
.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:124: in function 'try'
...im/site/pack/packer/opt/noice.nvim/lua/noice/ui/init.lua:29: in function <...im/site/pack/packer/opt/noice.nvim/lua/noice/ui/init.lua:22>

stack traceback:
.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:119: in function <.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:118>
[C]: in function 'nvim_buf_set_option'
...m/site/pack/packer/start/nui.nvim/lua/nui/utils/init.lua:129: in function 'set_buf_options'
.../site/pack/packer/opt/noice.nvim/lua/noice/view/init.lua:158: in function 'render'
...m/site/pack/packer/opt/noice.nvim/lua/noice/view/nui.lua:170: in function <...m/site/pack/packer/opt/noice.nvim/lua/noice/view/nui.lua:156>
[C]: in function 'xpcall'
.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:124: in function 'try'
.../site/pack/packer/opt/noice.nvim/lua/noice/view/init.lua:84: in function 'display'
.../pack/packer/opt/noice.nvim/lua/noice/message/router.lua:91: in function <.../pack/packer/opt/noice.nvim/lua/noice/message/router.lua:75>
[C]: in function 'xpcall'
.../site/pack/packer/opt/noice.nvim/lua/noice/util/call.lua:124: in function 'try'
...im/site/pack/packer/opt/noice.nvim/lua/noice/ui/init.lua:29: in function <...im/site/pack/packer/opt/noice.nvim/lua/noice/ui/init.lua:22>

Crash when `nvim-cmp` is *not* lazy-loaded

It seems that noice.nvim fails to load due to:

packer.nvim: Error running config for noice.nvim: ...im/site/pack/packer/start/noice.nvim/lua/noice/hacks.lua:214: attempt to call field 'lazy_exists' (a nil value)

Error was introduced with this commit: 0044d37

From a cursory glance at the code, it seems that this will always crash unless nvim-cmp is lazy loaded, as otherwise this method won't exist.

Cannot disable History/message/notify part

Describe the bug

I'm would love to just use the cmdline popup by itself, but I can't figure out how to disable the notify component.

Which version of Neovim are you using?
Gui? Nightly? Version?
0.8
To Reproduce
Steps to reproduce the behavior:
Enable noice, set history, notify to { enabled = false}

Expected Behavior
A clear and concise description of what you expected to happen.
messages to work as normal vim.

Screenshots
If applicable, add screenshots to help explain your problem.
image

Noice Log
Please include any related errors from the Noice log file. (open with :Noice log)

Noice log
Log comes here

customization does not work

I want to custom icons. Because my fonts does not support the special characters.

But it does not work.

  require'noice'.setup {
    cmdline = {
      enabled = true,
      menu = 'popup',
      icons = {
        ['/'] = { icon = '/', hl_group = 'DiagnosticWarn' },
        ['?'] = { icon = '?', hl_group = 'DiagnosticWarn' },
        [':'] = { icon = ':', hl_group = 'DiagnosticInfo', firstc = false },
      },
    },
  }

What is the correct solution?

border display is a bit jagged?

Describe the bug
With no setting changes, when I invoke the Ex command line the UI box look like this (notice also the quickfix window also looks a bit broken with additional lines visible?)...

Screenshot 2022-10-07 at 17 38 38

If I use the configuration from:
https://github.com/folke/noice.nvim/wiki/Configuration-Recipes#display-the-cmdline-and-popupmenu-together

Then the quickfix window issues clear up, but the Ex command line is still jagged:

Screenshot 2022-10-07 at 17 41 06

Which version of Neovim are you using?
v0.8.0

Expected Behavior
I expect there to be no extra lines displayed.

Extra comments
I don't know if there's something in my config causing this?

For example, I set borders on some LSP UI elements here:
https://github.com/Integralist/dotfiles/blob/main/.config/nvim/lua/settings/options.lua#L42-L55

Plugin error when starting Neovim on WSL2

Describe the bug
Starting neovim on WSL2 Ubuntu with noice.nvim installed with packer and received an error:

Currently using the default packer snippet to manage the plugin:

-- Packer
use({
  "folke/noice.nvim",
  event = "VimEnter",
  config = function()
    require("noice").setup()
  end,
  requires = {
    -- if you lazy-load any plugin below, make sure to add proper `module="..."` entries
    "MunifTanjim/nui.nvim",
    "rcarriga/nvim-notify",
    }
})

What version of Nevoim are you using?
neovim version: 0.8.0
image

To Reproduce
Start neovim in WSL2 Ubuntu

Expected behavior
Expected to have no error message on starting neovim

Screenshots
errors:
image
image

Noice log
output from running :Noice log
image

Noice Hides Status Bar

Describe the bug
For some odd reason Noice hides my statusbar.

Which version of Neovim are you using?
Gui(Neovide)
Note
The statusbar did appear in the TUI, but not in GUI clients(Neovide, Neovim-Qt).
Noice Log
Please include any related errors from the Noice log file. (open with :Noice log)

Noice log

10/4/2022 9:33:43 PM
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: end_col value outside range

stack traceback:
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
[C]: in function 'nvim_buf_set_extmark'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: in function 'highlight'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\line\init.lua:55: in function 'highlight'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\block.lua:72: in function 'highlight'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:151: in function 'render'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:57: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:48>
...
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>
[C]: in function 'nvim_err_writeln'
...\plugged\nvim-treesitter/lua\nvim-treesitter\install.lua:169: in function 'cb'
vim/_editor.lua:262: in function <vim/_editor.lua:261>

10/4/2022 9:53:47 PM
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: end_col value outside range

stack traceback:
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
[C]: in function 'nvim_buf_set_extmark'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: in function 'highlight'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\line\init.lua:55: in function 'highlight'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\block.lua:72: in function 'highlight'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:151: in function 'render'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:57: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:48>
...
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\hacks.lua:200: in function 'push'
C:\Users\Aaron.vim\plugged\nvim-notify/lua\notify\init.lua:214: in function 'notify'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:102: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:74>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/4/2022 9:53:52 PM
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: end_col value outside range

stack traceback:
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
[C]: in function 'nvim_buf_set_extmark'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: in function 'highlight'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\line\init.lua:55: in function 'highlight'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\block.lua:72: in function 'highlight'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:151: in function 'render'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:57: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:48>
...
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\hacks.lua:200: in function 'push'
C:\Users\Aaron.vim\plugged\nvim-notify/lua\notify\init.lua:214: in function 'notify'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:102: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:74>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/4/2022 9:57:08 PM
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: end_col value outside range

stack traceback:
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
[C]: in function 'nvim_buf_set_extmark'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: in function 'highlight'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\line\init.lua:55: in function 'highlight'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\block.lua:72: in function 'highlight'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:151: in function 'render'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:57: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:48>
...
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\hacks.lua:195: in function 'push'
C:\Users\Aaron.vim\plugged\nvim-notify/lua\notify\init.lua:214: in function 'notify'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:102: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:74>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/4/2022 10:49:06 PM
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: Vim(append):Error executing lua callback: ...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:151: Keyboard interrupt
stack traceback:
[C]: in function 'nvim_buf_set_option'
...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:151: in function 'enable_syntax'
...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:175: in function 'detach'
...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:490: in function 'detach_module'
...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:499: in function 'reattach_module'
...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:108: in function <...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:107>
[C]: in function 'nvim_buf_set_option'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
...ers\Aaron.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...ers\Aaron.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

stack traceback:
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
[C]: in function 'nvim_buf_set_option'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
...ers\Aaron.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...ers\Aaron.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/4/2022 10:50:17 PM
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: Vim(append):Error executing lua callback: ...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:151: Keyboard interrupt
stack traceback:
[C]: in function 'nvim_buf_set_option'
...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:151: in function 'enable_syntax'
...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:169: in function 'attach'
...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:477: in function 'attach_module'
...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:500: in function 'reattach_module'
...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:108: in function <...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:107>
[C]: in function 'nvim_buf_set_option'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
...ers\Aaron.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...ers\Aaron.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

stack traceback:
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
[C]: in function 'nvim_buf_set_option'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
...ers\Aaron.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...ers\Aaron.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/4/2022 10:53:21 PM
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: end_col value outside range

stack traceback:
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function <...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:101>
[C]: in function 'nvim_buf_set_extmark'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\text\init.lua:67: in function 'highlight'
C:\Users\Aaron.vim\plugged\nui.nvim/lua\nui\line\init.lua:55: in function 'highlight'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\block.lua:72: in function 'highlight'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:151: in function 'render'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:57: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:48>
...
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\hacks.lua:195: in function 'push'
C:\Users\Aaron.vim\plugged\nvim-notify/lua\notify\init.lua:214: in function 'notify'
...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:102: in function <...\Aaron.vim\plugged\noice.nvim/lua\noice\view\notify.lua:74>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:107: in function 'try'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <C:\Users\Aaron.vim\plugged\noice.nvim/lua\noice\router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua\noice\util\call.lua:107: in function 'try'
...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...sers\Aaron.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/6/2022 6:28:42 PM
...m\plugged\nvim-notify/lua/notify/service/buffer/init.lua:98: Vim(set):E218: autocommand nesting too deep

stack traceback:
...rs\Aaron.vim\plugged\noice.nvim/lua/noice/util/call.lua:102: in function <...rs\Aaron.vim\plugged\noice.nvim/lua/noice/util/call.lua:101>
[C]: in function 'nvim_buf_set_option'
...m\plugged\nvim-notify/lua/notify/service/buffer/init.lua:98: in function 'render'
...ron.vim\plugged\nvim-notify/lua/notify/service/init.lua:53: in function 'push'
...s\Aaron.vim\plugged\noice.nvim/lua/noice/util/hacks.lua:196: in function 'push'
C:\Users\Aaron.vim\plugged\nvim-notify/lua/notify/init.lua:214: in function 'notify'
...\Aaron.vim\plugged\noice.nvim/lua/noice/view/notify.lua:125: in function '_notify'
...
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua/noice/util/call.lua:107: in function <...rs\Aaron.vim\plugged\noice.nvim/lua/noice/util/call.lua:92>
...ers\Aaron.vim\plugged\noice.nvim/lua/noice/view/nui.lua:126: in function 'hide'
...rs\Aaron.vim\plugged\noice.nvim/lua/noice/view/init.lua:88: in function 'display'
...ron.vim\plugged\noice.nvim/lua/noice/message/router.lua:91: in function <...ron.vim\plugged\noice.nvim/lua/noice/message/router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua/noice/util/call.lua:107: in function 'try'
...ron.vim\plugged\noice.nvim/lua/noice/message/router.lua:34: in function 'fn'
vim/_editor.lua:467: in function 'cb'
vim/_editor.lua:262: in function <vim/_editor.lua:261>

10/6/2022 6:28:42 PM
...m\plugged\nvim-notify/lua/notify/service/buffer/init.lua:98: Vim(set):E218: autocommand nesting too deep

stack traceback:
...rs\Aaron.vim\plugged\noice.nvim/lua/noice/util/call.lua:102: in function <...rs\Aaron.vim\plugged\noice.nvim/lua/noice/util/call.lua:101>
[C]: in function 'nvim_buf_set_option'
...m\plugged\nvim-notify/lua/notify/service/buffer/init.lua:98: in function 'render'
...ron.vim\plugged\nvim-notify/lua/notify/service/init.lua:53: in function 'push'
...s\Aaron.vim\plugged\noice.nvim/lua/noice/util/hacks.lua:196: in function 'push'
C:\Users\Aaron.vim\plugged\nvim-notify/lua/notify/init.lua:214: in function 'notify'
...\Aaron.vim\plugged\noice.nvim/lua/noice/view/notify.lua:125: in function '_notify'
...
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua/noice/util/call.lua:107: in function <...rs\Aaron.vim\plugged\noice.nvim/lua/noice/util/call.lua:92>
...ers\Aaron.vim\plugged\noice.nvim/lua/noice/view/nui.lua:126: in function 'hide'
...rs\Aaron.vim\plugged\noice.nvim/lua/noice/view/init.lua:88: in function 'display'
...ron.vim\plugged\noice.nvim/lua/noice/message/router.lua:91: in function <...ron.vim\plugged\noice.nvim/lua/noice/message/router.lua:75>
[C]: in function 'xpcall'
...rs\Aaron.vim\plugged\noice.nvim/lua/noice/util/call.lua:107: in function 'try'
...ron.vim\plugged\noice.nvim/lua/noice/message/router.lua:34: in function 'fn'
vim/_editor.lua:467: in function 'cb'
vim/_editor.lua:262: in function <vim/_editor.lua:261>

:messages crashes neovide, and doesn't seem to do anything in terminal?

Hi, first of all, I LOVE what I've been able to play around with so far (the command prompt).

However, whenever I call messages in neovide (my IDE of choice), I get a crash. Also, when calling :messages from nvim in kitty, nothing happens

neovide

When running neovide from the terminal to check the stderr

neovide --nofork

I get

ERROR [neovide::error_handling] Could not parse event from neovim: invalid array format false
thread 'tokio-runtime-worker' panicked at 'Could not parse event from neovim: invalid array format false', src/error_handling.rs:5:5
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
ERROR [neovide::bridge] Error joining IO loop: 'task 11 panicked'

I'm guessing neovide might not be accepting something that it should? Although I'm not even sure how to write an issue for them, because I don't know enough about nvim's internals / where they're expecting an array but should also accept a boolean

just nvim

running :messages in nvim in kitty, nothing happens.

I'm not sure of the best way to investigate this particular issue further -- ~/.cache/nvim/log doesn't have any new logs :/

Is there something I could do to try to get more verbose logs? (including somewhere in this repo's source I should try to debug (likely by dropping in print statements, b.c. I haven't tried setting up debuggers in neovim yet, and I don't even know if there's a lua debugger)

Noice <> nvim-notify settings

Describe the bug
When I set nvim-notify settings through require('notify').setup({...}) the vim.notify messages don't appear in :Noice

I use packer, in case that's relevant

Which version of Neovim are you using?
Nightly

Expected Behavior
There is a way to configure nvim-notify settings by calling notify.setup or by passing it through noice settings

Known Issues Tracker

  • neovim/neovim#17810
    • Incsearch loses highlights during redraw
    • ๐Ÿช“ we disable conceallevel during search
  • neovim/neovim#20416
    • redraw triggers last messages to ext_messages
    • ๐Ÿช“ we wrap redraw, ignore messages and check for ui updates
  • neovim/neovim#20311
    • we need to know when state will become blocking
    • ๐Ÿช“ we wrap input functions so we know blocking input is coming
  • neovim/neovim#20309
    • we need a way to control the visible cursor without switching windows/buffers/cursors
    • ๐Ÿช“ we render fake cursors instead
  • plugins that rely on the cmdline position (like cmp) don't know the real cmdline position
    • ๐Ÿช“ Noice fixes this for nvim-cmp
  • #17
  • neovim/neovim#20463
    • moving the cursor during substitute does not update the cmdline ui
    • ๐Ÿช“ we do vim.api.nvim_input("<space><bs>") during substitute to force a redraw
  • neovim/neovim#20462
    • first echo has the wrong kind
  • rcarriga/nvim-notify#137
    • nvim-notify does not wrap notifications
  • neovim/neovim#20715

Allow user configuration for positioning `nvim-cmp` popup

Is your feature request related to a problem? Please describe.
This request is pulled out of #2 (comment), so it would be easier to track. I appreciate there's been quite a lot of activity so no pressure on this one, but given it was just a comment in an issue with a different focus thought I'd split it out.

Describe the solution you'd like
So as I mentioned in that issue, I think it would be nice for the use to be able to decide where the cmp popup window opens, similar to how the nui popupmenu's position is configurable. This way a user could have the cmp window open beneath the cmdline popup entirely so they don't overlap (or wherever else they think it would be best)

Describe alternatives you've considered
A sort of alternative would be using the builtin popup, but this is ultimately not really the same as using cmp which works differently i.e. it's a pluggable autocompletion engine and it's functionality isn't the same as the wildmenu

`:digraphs` doesn't work well

Describe the bug
:digraphs just shows a wide notification at the top of the screen

Which version of Neovim are you using?
neovim/neovim@cfdb4cb

To Reproduce
Steps to reproduce the behavior:
:digraphs

Expected Behavior
Digraphs in a new buffer (as described in readme: "no more more-prompt")

Screenshots
image

Noice Log
Log file is empty

PUM Selection Quits Editor

Describe the bug
When selecting an item from a popup menu, the editor closes. This happens with the Coc completion menu and also native omnifunction completion.

To Reproduce

  1. Open a file
  2. Press <C-n> or <C-p>
  3. see error

Expected behavior
Selecting an item from a popup menu would result in it being inserted and the pop up menu closing.

Noice log
Please include any related errors from the Noice log file. (open with :Noice log)

Noice log
10/4/2022 2:42:21 PM
...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: Keyboard interrupt

stack traceback:
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
	[C]: in function 'nvim_buf_set_option'
	...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
	...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
	...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:75>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/4/2022 2:43:18 PM
...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: Keyboard interrupt

stack traceback:
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
	[C]: in function 'nvim_buf_set_option'
	...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
	...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
	...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:75>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/4/2022 5:35:57 PM
...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: Vim(append):Error executing lua callback: ...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:151: Keyboard interrupt
stack traceback:
	[C]: in function 'nvim_buf_set_option'
	...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:151: in function 'enable_syntax'
	...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:169: in function 'attach'
	...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:477: in function 'attach_module'
	...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:500: in function 'reattach_module'
	...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:108: in function <...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:107>
	[C]: in function 'nvim_buf_set_option'
	...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
	...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
	...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:75>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

stack traceback:
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
	[C]: in function 'nvim_buf_set_option'
	...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
	...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
	...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:75>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

10/4/2022 5:40:21 PM
...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: Vim(append):Error executing lua callback: ...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:151: Keyboard interrupt
stack traceback:
	[C]: in function 'nvim_buf_set_option'
	...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:151: in function 'enable_syntax'
	...lugged\nvim-treesitter/lua\nvim-treesitter\highlight.lua:175: in function 'detach'
	...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:490: in function 'detach_module'
	...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:499: in function 'reattach_module'
	...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:108: in function <...\plugged\nvim-treesitter/lua\nvim-treesitter\configs.lua:107>
	[C]: in function 'nvim_buf_set_option'
	...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
	...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
	...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:75>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

stack traceback:
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:97: in function <...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:96>
	[C]: in function 'nvim_buf_set_option'
	...ers\s158658\.vim\plugged\nui.nvim/lua\nui\utils\init.lua:129: in function 'set_buf_options'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:142: in function 'render'
	...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:137: in function <...s\s158658\.vim\plugged\noice.nvim/lua\noice\view\nui.lua:126>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\view\init.lua:81: in function 'display'
	...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:91: in function <...ers\s158658\.vim\plugged\noice.nvim/lua\noice\router.lua:75>
	[C]: in function 'xpcall'
	...\s158658\.vim\plugged\noice.nvim/lua\noice\util\call.lua:102: in function 'try'
	...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:29: in function <...rs\s158658\.vim\plugged\noice.nvim/lua\noice\ui\init.lua:22>

Lualine disappears after resizing window

Describe the bug
If I resize the pane of the terminal where vim is running in, lualine disappears. It only happens while noice is enabled.

Which version of Neovim are you using?
0.80

To Reproduce
run noice and lualine, then resize the terminal window / pane.

Expected Behavior
Window is resized and lualine is till visible at the bottom

Screenshots
image

Noice Log
Please include any related errors from the Noice log file. (open with :Noice log)

Noice log
Log comes here

Autocomplete with Noice messes up indentation in some cases

Describe the bug
When installing Noice (empty .setup()), any completion done without an LSP is de-indented by a single space. I have tried with -u NORC to no avial, and I've also uninstalled all other plugins temporarily to no avail. Having popupmenu disabled is also without effect on this issue. I am testing this on Lua files, as I don't regularly have sumneko installed.

If I leave everything in my RC, I can:

  • C-x C-f to complete path names without deindent
  • C-x C-o to produce a complaint about no omnifunc in lua files and deindent by one space
  • C-x C-n to complete without deindent

I'd appreciate any pointers on how to go about debugging this, I realise that this report does almost nothing to narrow this down yet, and that the actual issue could even be unrelated to Noice, even though I only notice it with Noice installed.

Which version of Neovim are you using?
v0.8.0 in kitty

To Reproduce
Steps to reproduce the behavior:

  1. install Noice as suggested by README
  2. enjoy all Noice features
  3. suffer completion breaking indentation

Expected Behavior
Not messing with completion results.

Screenshots
https://paste.selfnet.de/index.php/Lwfw/ (<200kB mp4)

Noice Log
None is produced

Search popup customization

Thank you for your work!

  • Settings works for cmdline, but not work for search panel. Mb i didn't find decision in docs.
  • Search panel has artefacts. I understand why that is it, but it annoys.
    image
    image

Not compatible with neovide

Describe the bug
I've installed the plugin with packer. Used one of the config recipes from the wiki but I can't get it to work.

To Reproduce
Install with Packer
Copy the config recipe from the wiki:

  use {
    'folke/noice.nvim',
    event = "VimEnter",
    requires = {
      -- if you lazy-load any plugin below, make sure to add proper `module="..."` entries
      "MunifTanjim/nui.nvim",
      "rcarriga/nvim-notify",
      "hrsh7th/nvim-cmp",
    },
    config = function()
      require("noice").setup({
        views = {
          cmdline_popup = {
            border = {
              style = "none",
              padding = { 2, 3 },
            },
            filter_options = {},
            win_options = {
              winhighlight = "NormalFloat:NormalFloat,FloatBorder:FloatBorder",
            },
          },
        },
        routes = {
          {
            filter = {
              event = "cmdline",
              find = "^%s*[/?]",
            },
            view = "cmdline",
          },
        },
      })
    end
  }

I also tried without lazy loading and still didn't work. Also tried running Noice enable, didn't work.

Expected behavior
I'd expect the command line to appear in a popup on the center of the screen.

Screenshots
image

This is how my command line looks.

Noice log
Noice log is empty.
Here are the stats:
image

Indicator when recording or finishing a macro

Is your feature request related to a problem? Please describe.
With this plugin, I am no longer able to see a clear indicator when I begin recording a macro or finish a macro. (i.e. when I press q in normal mode, or q a second time after.

Describe the solution you'd like
I would love to get a notification for macro-related messages.

Describe alternatives you've considered
Tried to fiddle with the settings but it doesn't appear to currently be supported

Command input is too small and truncates description

Describe the bug
When I open nvim-tree window and do a copy-paste on a file, a command window appears that asks what to do.

image

As shown on the image the command description is truncated, and without knowing what it says it is hard to understand what is going on.

[bug] `q:` throws errors

Reproduction:

require('packer').startup(function()
    use {
        'hrsh7th/nvim-cmp',
        requires = {
            'hrsh7th/cmp-cmdline',
        },
    }
    use 'MunifTanjim/nui.nvim'
    use 'rcarriga/nvim-notify'

    use {
        'folke/noice.nvim',
        event = 'VimEnter',
        config = function()
            require('noice').setup()
        end,
    }
end)

Then run nvim and press q:.

:messages output:

...site/pack/packer/start/nui.nvim/lua/nui/popup/border.lua:457: E11: Invalid in command-line window; <CR> executes, CTRL-C quits
Error running notification service: ...e/pack/packer/start/nvim-notify/lua/notify/util/init.lua:78: Vim:...ker/start/nvim-notify/lua/notify/service/buffer/init.lua:104: Vim:...site/pack/packer/start/nui.nvim/lua/nui/popup/border.lua:457: E11: Invalid in command-line window; <CR> executes, CTRL-C quits...im/site/pack/packer/start/nui.nvim/lua/nui/text/init.lua:67: end_col value outside range
...im/site/pack/packer/start/nui.nvim/lua/nui/text/init.lua:67: line value outside range
Error running notification service: ...e/pack/packer/start/nvim-notify/lua/notify/util/init.lua:78: Vim:...ker/start/nvim-notify/lua/notify/service/buffer/init.lua:104: Vim:...im/site/pack/packer/start/nui.nvim/lua/nui/text/init.lua:67: line value outside range...im/site/pack/packer/start/nui.nvim/lua/nui/text/init.lua:67: end_col value outside range
...im/site/pack/packer/start/nui.nvim/lua/nui/text/init.lua:67: end_col value outside range

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.