TaDaa / vimade

An eye friendly plugin that fades your inactive buffers and preserves your syntax highlighting!
MIT License
486 stars 8 forks source link

Incompatible with new floating window support in Neovim #16

Closed gavsim closed 5 years ago

gavsim commented 5 years ago

I'm using the latest version of coc.nvim (https://github.com/neoclide/coc.nvim) which has recently enabled support for the floating window support (https://github.com/neoclide/coc.nvim/commit/1d9ee13939a57f72f7b2349cd8d7f434330a997d) that has just landed in the master branch of neovim (https://github.com/neovim/neovim/pull/6619)

With vimade enabled this causes constant screen flickering and closing of the floating window, as soon as I disable the vimade plugin floating window work as expected.

For now I'm having to disable vimade which I'd rather not do as it is a great plugin. Hopefully vimade can be made compatible with floating windows. Thanks.

TaDaa commented 5 years ago

Thanks for the report .. looking into it - guessing that vimade is trying to fade these floating windows. Does seem strange that they are considered actual "windows" (in vim.windows python object), but hopefully there is some flag to distinguish them

TaDaa commented 5 years ago

Just committed a fix, its more of a temporary workaround to make it play nice with CoC floats, but hopefully a long term solution will be possible later. Currently there is no way to distinguish floating windows from normal windows but its slotted for neovim 0.4.

There are also some actual behavioral differences between floating windows and normal windows that are triggering weird timing/autocommand behaviors -- not quite sure what they (all) are, but floats could be problematic, so thanks for raising this issue.

gavsim commented 5 years ago

Great @TaDaa I'll pull the latest version and do some testing and come back to you with some feedback.

gavsim commented 5 years ago

Looks to be working much better. Thanks again.

TaDaa commented 5 years ago

Another update to this to work with latest neovim / coc.nvim -- neovim team added method for detecting floating windows, so this should work better now -- going to close for now but let me know if you run into any issues.

megalithic commented 4 years ago

@TaDaa I'm noticing errors with vimade and some other floating window plugins like git-messenger, for instance..

i'm getting the following error:

Error detected while processing function vimade#CheckWindows[3]..provider#python3#Call:
line   18:
Error invoking 'python_execute' on channel 4 (python3-script-host):
Traceback (most recent call last):
  File "<string>", line 2, in <module>
  File "/Users/me/.dotfiles/nvim/plugins/vimade/lib/vimade/bridge.py", line 32, in update
    fader.update(nextState)
  File "/Users/me/.dotfiles/nvim/plugins/vimade/lib/vimade/fader.py", line 208, in update
    fadeWin(win)
  File "/Users/me/.dotfiles/nvim/plugins/vimade/lib/vimade/fader.py", line 436, in fadeWin
    bufState = FADE.buffers[winState.buffer]
KeyError: 2
Press ENTER or type command to continue

Any thoughts? This seems to be a semi-recent issue, but can't confirm if it was a plugin update or a neovim update that this started showing itself.. maybe nvim 0.4.0?

Let me know if there are other things I can try/debug/etc.

Thanks for such an awesome plugin! Really helps with focus and buffer/split management.

TaDaa commented 4 years ago

Was able to reproduce -- I'll have a fix out for this tonight

TaDaa commented 4 years ago

or right now:) let me know if it works out -- new syntax check was being checked too early