Você pode usar ahistory-search
funcionalidade do zle :
bindkey "^[[A" history-beginning-search-backward
bindkey "^[[B" history-beginning-search-forward
Isso liga Upe Down(ajusta suas próprias seqüências de escape) a uma pesquisa de histórico, para trás e para frente, com base no que já foi inserido no prompt.
Portanto, se você digitar "vim" e pressionar Up, o zsh irá retroceder no seu histórico apenas para os comandos que começam com "vim".
Além disso, você pode colocar o cursor no final da linha depois de selecionar o comando desejado no histórico do zsh, usando a função history-search-end (normalmente localizada em /usr/share/zsh/functions/Zle/
) e anexando -end
ao final de cada linha, da seguinte forma:
autoload -U history-search-end
zle -N history-beginning-search-backward-end history-search-end
zle -N history-beginning-search-forward-end history-search-end
bindkey "^[[A" history-beginning-search-backward-end
bindkey "^[[B" history-beginning-search-forward-end