como fazer com que ctrl + p se comporte exatamente como a seta para cima no zsh?


15

Primeiro de tudo, estou usando zsh e oh-my-zsh com quase nenhuma outra personalização.

No zsh, quando pressiono a seta para cima, ele traz os últimos comandos. E se eu digitar alguns caracteres antes de pressionar a seta para cima, ele trará o comando mais recente começando com esses caracteres. É um recurso bastante útil, pois emito muitos comandos git / vim / scp como alternativa.

Mas agora estou mudando para um teclado sem as teclas de seta e costumo usar ctrl+ em pvez da seta para cima para completar o histórico. No entanto, não importa quantos caracteres eu digitei antes de pressionar ctrl+ p, ele sempre trará o comando mais recente (não o mais recente começando com esses caracteres)

Como devo configurar o zsh (ou oh-my-zsh) para corrigir isso?

Respostas:


18
bindkey "^P" up-line-or-search

Muito obrigado! Vou arquivar um problema no oh-my-zsh para adicioná-lo ao seu lib / keybinding.zsh padrão.
Gordon Gao

4
Você pode adicionar bindkey "^N" down-line-or-searchtambém para obter consistência.
ejoubaud

6
bindkey -e

Isso usa as combinações de teclas do emacs e parece funcionar para mim.


No seu arquivo shell rc, ~/.zshrc se você definir export EDITOR=vim, também a ligação de teclas no shell será alterada para vim. Neste caso, a ligação chave set manualmente para o modo emacs porbindkey -e
MutantMahesh
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.