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.