historique-recherche-arrière fonctionnant différemment dans zsh que dans bash


10

J'ai history-search-backwardmappé comme PageUp.

Quand je tape:

git push <PageUp><PageUp><PageUp>
  1. dans Bash, il commence à parcourir toutes les entrées de l'historique en commençant par git push
  2. dans Zsh, il commence à parcourir toutes les entrées de l'historique en commençant par git , il répertorie les entrées telles git status, git remote updateetc. Ce n'est pas ce que je veux.

Comment puis-je faire en sorte que zsh se comporte comme bash? Que setoptdois-je régler?

Réponses:


13
bindkey "^[[5~" history-beginning-search-backward

bindkey "^[[6~" history-beginning-search-forward

C'est ce que j'utilise


Si vous voulez que la même fonctionnalité mais avec l'arror Up et Down, remplacez la clé de liaison "^[[5~"vers "^[[A"et "^[[6~"vers"^[[B"
Autodidact

1
La recherche de début d'histoire de zsh a toujours une différence subtile avec la recherche d'historique de bash (readline). La commande de readline est équivalente à history-backward / forward (et place le curseur à la fin de la ligne) avant de déplacer le curseur sur la ligne (ce qui le transformera en "history-begin-search") tandis que ceux de zsh mettent toujours le curseur au début de la ligne. Existe-t-il un moyen simple de modifier ce comportement sans écrire de nouveau widget? THX
yuyichao

@yuyichao, avez-vous peut-être trouvé comment se zshcomporter comme bash?
Blaz

@courteous Pas vraiment, bien que je m'habitue au comportement zsh après l'avoir utilisé pendant un certain temps ... D'autant plus qu'un simple <C-e>peut transformer le zshcomportement en bashcomportement mais pas si facile dans l'autre sens.
yuyichao
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.