zsh histórico histórico de conclusão da seta não funcionando

2

Não consigo fazer com que os atalhos de teclado do histórico do zsh funcionem como eu gostaria. Gostaria de poder digitar sudo e depois usar a seta para cima para percorrer todos os comandos de histórico com o prefixo sudo .

Acredito que isso deva ser bindkey "^[[5~" up-line-or-history . Eu tenho isso em lib/key-bindings.zsh e esse arquivo deve ser originado. Estou usando uma instalação em grande parte não modificada de oh-my-zsh .

Eu tenho o que eu acho que são os mesmos arquivos .zshrc e lib em uma VM e o histórico funciona como eu quero. A VM está executando zsh 4.3.10 enquanto minha outra máquina (aquela que não está funcionando) está em 5.0.0 . Este é um problema de versão?

    
por Matt 05.03.2013 / 00:49

2 respostas

2

Não tenho certeza se isso mudou de 4.3.10 para 5.0.0, mas o widget que você está procurando é chamado de history-search-backward nos últimos lançamentos.

Além disso, uma ligação de chave legal é history-incremental-pattern-search-backward , em que você pode inserir (em um prompt especial após chamar esse widget) por exemplo sudo*destdir para percorrer todos os comandos que começam com sudo e terminam com destdir .

    
por 05.03.2013 / 21:47
0

Veja o link

Adicionando isso ao .zshrc, resolvi isso para mim:

# start typing + [Up-Arrow] - fuzzy find history forward
if [[ "${terminfo[kcuu1]}" != "" ]]; then
    autoload -U up-line-or-beginning-search
    zle -N up-line-or-beginning-search
    bindkey "${terminfo[kcuu1]}" up-line-or-beginning-search
fi
# start typing + [Down-Arrow] - fuzzy find history backward
if [[ "${terminfo[kcud1]}" != "" ]]; then
    autoload -U down-line-or-beginning-search
    zle -N down-line-or-beginning-search
    bindkey "${terminfo[kcud1]}" down-line-or-beginning-search
fi
    
por 29.05.2018 / 00:36

Tags