j-hui / fidget.nvim

💫 Extensible UI for Neovim notifications and LSP progress messages.
MIT License
1.95k stars 58 forks source link

Fidget does not display Lazy notifications #208

Closed adorostkar closed 8 months ago

adorostkar commented 8 months ago

Hello, I am trying to configure fidget for neovim. I use Lazy { 'j-hui/fidget.nvim', config = function() require('fidget').setup() end, },

however after the setup the plugin is not working. I tried :lua print(require('fidget').is_installed()) which returns false

I tried manually running :lua require('fidget').setup({}) which also doesn't work since afterwards the call to is_installed() is still false

NeoVim version is 0.9.4

There is no log for fidget in .local/share/nvim/

j-hui commented 8 months ago

I tried :lua print(require('fidget').is_installed()) which returns false

What version of Fidget are you on? This function only exists on the legacy branch, and I'm surprised that it returns anything for you without throwing an error like this:

E5108: Error executing lua [string ":lua"]:1: attempt to call field 'is_installed' (a nil value)
stack traceback:
        [string ":lua"]:1: in main chunk
Press ENTER or type command to continue
adorostkar commented 8 months ago

So that is the reason. I actually tried the legacy branch when I wrote this. Now it throws the exact same message. How should I figure out why this doesn't work though?

j-hui commented 8 months ago

Can you please be more specific about what exactly doesn’t work? Is it notifications in general (calling fidget.notify() does nothing), or LSP progress messages not showing up (in which case, which LSP server(s) are you using), or is the plugin crashing?

adorostkar commented 8 months ago

Maybe I am misunderstanding the usage but for instance when you change the configuration of neo vim, it gives a warning message. This message I assume would be captured and shown by fidget but this doesn't happen.

I tried fidget.notify() and it works. The plugin doesn't crash and it works with lsp servers. I have null-ls, bash-language-server.

The plugin is not crashing.

j-hui commented 8 months ago

when you change the configuration of neo vim, it gives a warning message. This message I assume would be captured and shown by fidget but this doesn't happen.

This sounds like the behavior of Lazy, which calls vim.notify() when your Lazy config has changed.

Fidget (and other notification plugins) work by overriding vim.notify = fidget.notify; you can let Fidget handle that for you during setup() time by setting the notification.override_vim_notify option to true.

By the way, Lazy seems to assume that whatever notification plugin you're using supports in-buffer Markdown rendering, which Fidget does not. On the other hand, nvim-notify does; so you might want to consider also installing that. Fidget uses some heuristics to figure out if it should redirect the message to be rendered by nvim-notify.

I tried fidget.notify() and it works. The plugin doesn't crash and it works with lsp servers. I have null-ls, bash-language-server.

In that case, it seems like the plugin is working fine. I'm going to close this issue now, but please re-open if you have any more issues.