Configurando backspace = 2 em zsh com ligações do vi

1

Acabei de definir meu zsh para o modo vi, pois sinto que a palavra / WORD ( w / b W / B ) ignorar as combinações de teclas me ajudará a trabalhar mais rápido do que o simples ^a ^e no modo de ligação do emacs. No entanto, gostaria de set backspace=2 ou set backspace=eol, start ; Eu tenho isso no meu .nvimrc , e é com o que estou acostumado agora.

Existe alguma maneira de definir essa variável em zsh ?

    
por Jules 01.06.2015 / 18:02

1 resposta

4

Vincule a tecla de retrocesso a backward-delete-char em vez de vi-backward-delete-char .

bindkey -v '^?' backward-delete-char

Você pode querer vincular outros widgets vi-* a sua variante não vi- . Execute bindkey -LM viins para listar o mapa de teclas do modo de inserção em um formulário que você possa ajustar e copiar para o seu .zshrc .

Alternativamente, se os comandos da palavra motion são tudo o que leva você ao vi map, você pode mapeá-los no modo Emacs.

bindkey '^[B' vi-backward-blank-word
bindkey '^[E' vi-forward-blank-word-end
bindkey '^[F' vi-forward-blank-word
bindkey '^[b' vi-backward-word
bindkey '^[e' vi-forward-word-end
bindkey '^[f' vi-backward-blank-word
    
por 02.06.2015 / 02:35