Je suis récemment passé à zsh, en utilisant robbyrusselloh-my-zsh
. Avant cela, j’utilisais bash avec beaucoup de choses personnalisées et il ne me manque qu’une chose, car zsh essaie d’être «trop intelligent»:
Si je tape git commit
puis ↑zsh passe par toutes les git
commandes récentes . Ce que je veux vraiment, c’est de passer en revue toutes les commandes qui commencent par git commit
(pas seulement git
).
Comment puis-je obtenir ce comportement dans (oh-my-) zsh?
zsh
autocomplete
command-history
oh-my-zsh
Patrick Oscity
la source
la source
Réponses:
J'ai trouvé la solution à mon problème dans la documentation ZSH . Oh-my-zsh semble mapper les touches ↑et ↓à quelque chose comme
Ce qui donne le comportement exact que j'ai décrit ci-dessus. La documentation ZSH décrit le comportement de
history-search-backward
asCe que je voulais à la place, c’était le mappage suivant, que j’ai inséré dans mon
~/.zshrc
:Le comportement de
history-beginning-search-backward
est comme suit:Aussi, si
\e[A
ne fonctionne pas pour les flèches haut ou bas, appuyez<ctrl-v><KEY (e.g., up arrow)>
sur un autre terminal qui donne^[OA
. Ensuite, vous pouvez utiliser ceci au lieu de\e[A
. Le processus est décrit ici: http://zshwiki.org/home/zle/bindkeysla source
bindkey
ne fait rien de réel, à cause d'un bogue, l'équipe OMZ l'a corrigé avec ce plugin . Il suffit de le télécharger et de le rechercher avantbindkey
.Je voulais le même comportement pour zsh avec
oh-my-zsh
plugin installé et trouvéhistory-substring-search
.J'ai obtenu le même comportement que décrit ci-dessus en ajoutant le plugin à mon
~/.zshrc
:Je suppose que ce plugin n'existait pas à l'époque où cette question a été posée. Juste un autre moyen de réaliser la même chose.
la source