zsh-vi-mode
zsh-vi-mode copied to clipboard
Slow on 'J' in NORMAL mode
General information
- Terminal program: iTerm.app 3.4.20 (xterm-256color)
- Operating system: macOS 13.5.1 (22G90)
- ZSH framework: starship 1.16.0
- ZSH version: zsh 5.9 (x86_64-apple-darwin22.0)
- ZVM version: zsh-vi-mode 0.10.0
Basic examination
- [X] I have read through the README page
- [X] I have the latest version of zsh-vi-mode
- [X] I have tested with another terminal program
Problem description
Using ZVM_VI_ESCAPE_BINDKEY=jj
Reproduction steps
- Press 'jj' to enter NORMAL mode
- Press 'k' a number of times to navigate back/up in the history
- Press 'j' to navigate down/forward in the history and notice a delay
Expected behavior
'j' should be as fast as 'k' It seems that in NORMAL mode there is a delay after pressing 'j' perhaps because it's waiting if 'j' is pressed again within a certain timeframe (ZVM_VI_ESCAPE_BINDKEY). I would think that this is only necessary in INSERT mode to escape it.
Hi @piejanssens
Thanks for your issue. When you change the escape bindkey of normal mode to jj
, it will make a common prefix of j
, for j
and jj
, that's why the readkey engine needs to wait for a specific time ZVM_ESCAPE_TIMEOUT
which is 0.3
seconds by default to accept next keystroke, by this way, it can confirm which function the user actually wants.
Thanks & Regards