No modo vicmd padrão R já está vinculado a vi-replace-chars
.
Então, quando você define R + R para redo
com
bindkey -a rr redo
você tem duas ações possíveis que o Zsh pode seguir quando R é pressionado
- interprete como o comando
vi-replace-chars
ou - aguarde um segundo caractere e interprete o comando
redo
O algoritmo para combinar os comandos do teclado no Zsh favorece os comandos curtos para que ele sempre use a ação 1..
Para impedir que Zsh faça isso, primeiro você precisa remover a ligação para R com
bindkey -a -r r
e adicione sua nova opção com
bindkey -a rr redo
Você também pode adicionar vi-replace-chars
com
bindkey -a re vi-replace-chars