You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Expected: Vim consumes typed characters as usual
Observed: Vim is blocked and typed characters are echoed on the screen until FZF is closed
This issue per se is not so important but it causes another bugs: #434, tmux-plugins/vim-tmux-focus-events#2. With set -g focus-events on tmux sends FocusIn/FocusOut escape sequences (<Esc>[I and <Esc>[O) to Vim instance. But since Vim is blocked by FZF, these escape sequences are echoed on the screen as ^[[I and ^[[O.
By default, Neovim doesn't have such issues because FZF is running asynchronously in separate terminal. But in Vim FZF is invoked with blocking system() call.
I'm not sure if I want to rewrite Vim plugin to work in asynchronous manner, as it complicates the implementation without obvious benefit (and also because I don't use the tmux plugin). Have you tried the workaround suggested in tmux-plugins/vim-tmux-focus-events#2 (comment)?
Yes, I've tried this workaround but unfortunately it doesn't work for me. Once I open FZF, leftover characters begin to appear.
Another affected plugin is https://github.com/christoomey/vim-tmux-navigator. Again, navigation works fine until I open FZF. While it's opened, I can't switch from Vim to other panes using vim-tmux-navigator because Vim is blocked.
I could give async FZF invocation a try using Neovim implementation as an example. At first glance, it doesn't seem to be so hard. Can you please point me out any clues/caveats here?
Steps to reproduce:
Expected: Vim consumes typed characters as usual
Observed: Vim is blocked and typed characters are echoed on the screen until FZF is closed
This issue per se is not so important but it causes another bugs: #434, tmux-plugins/vim-tmux-focus-events#2. With
set -g focus-events on
tmux sends FocusIn/FocusOut escape sequences (<Esc>[I
and<Esc>[O
) to Vim instance. But since Vim is blocked by FZF, these escape sequences are echoed on the screen as^[[I
and^[[O
.By default, Neovim doesn't have such issues because FZF is running asynchronously in separate terminal. But in Vim FZF is invoked with blocking system() call.
https://github.com/junegunn/fzf/blob/master/plugin/fzf.vim#L395
Would it be possible to have the same asynchronous FZF behavior in Vim as well, e.g. by using Vim 8 job API?
The text was updated successfully, but these errors were encountered: