AndrewRadev / sideways.vim

A Vim plugin to move function arguments (and other delimited-by-something items) left and right.
http://www.vim.org/scripts/script.php?script_id=4171
MIT License
479 stars 9 forks source link

conflict with coc.nvim in nvim #44

Closed unphased closed 3 years ago

unphased commented 3 years ago

Hi, I am afraid I don't have as much information as I would like to have, but I've been making slow progress on this issue and I think I have enough to be able to report now.

Basically when using coc.nvim, certain plugins I was using cause its diagnostic signs to become stale and linger around. This is, as you can imagine, completely disruptive to development workflow.

I was able to bisect my plugins down to a group of 4 plugins that when any of them individually are enabled (along with the entire rest of my set of plugins) I experience this behavior with coc.nvim. They are:

" Plug 'AndrewRadev/sideways.vim'
" Plug 'AndrewRadev/linediff.vim'
" Plug 'AndrewRadev/splitjoin.vim'
" Plug 'AndrewRadev/inline_edit.vim'

Once all 4 are commented out I no longer get the lingering stale signs in typescript TSX files I'm working with.

Interestingly Plug 'AndrewRadev/switch.vim' is no problem. I still have it enabled.

One of the problems with this bug report is that I cannot even reproduce this lingering signs issue with most other syntaxes. So it may even theoretically be a very specific bug with neovim AND coc.nvim AND typescript tsx...

(with regular vim (which i have not used in a while so i lend less weight to this data) which I just re-compiled on master, the problem does not surface!)

I was wondering if we could brainstorm what config is being set in these 4 plugins but not switch which may help point to the root problem.

unphased commented 3 years ago

Alright I think i was barking up the wrong tree because enabling more other plugins is bringing the issue back. I think it must be some sort of neovim specific timing issue. I'll try some other neovim versions and other things.

unphased commented 3 years ago

latest neovim build does not exhibit the problem. This is the cost of living on the bleeding edge.

AndrewRadev commented 3 years ago

Well, I'm glad you found a solution to the problem, hope it doesn't reoccur :). I was going to suggest maybe linediff could be doing something, since it uses signs, but it should only do that when activated. And splitjoin and sideways have some form of TSX support, so who knows.

As you say, maybe just a timing issue, something async happening while plugins are being loaded.