zsh completion: menu e prefixo não ambíguo com uma única aba?

2

Eu estou em uma pasta onde tenho os seguintes arquivos:

aaa1  aaa2  aaa3  bbb1  bbb2  bbc1  bbc2

e eu digitei cd a no prompt. Atualmente,

  • pressionando a tecla Tab completa para cd aaa
  • então outra Tab exibe o menu ( aaa1/ aaa2/ aaa3/ )
  • e finalmente uma terceira aba completa para cd aaa1/
  • e as pressões subseqüentes passam pelo menu

Gostaria de combinar o primeiro e o segundo Tab , para que:

  • pressionando a tecla Tab completa para cd aaa e exibe o menu
  • pressionando outra aba completa para cd aaa1/
  • pressionamentos subseqüentes passam pelo menu como de costume

OR

  • pressionando a tecla Tab completa para cd aaa
  • pressionar outra aba abre o menu e para cd aaa1/
  • pressionamentos subseqüentes passam pelo menu como de costume

Existe alguma combinação de (un)setopt ou zstyle que possa alcançar isso?

    
por Soumya 13.07.2016 / 00:17

1 resposta

4

Hmm, este método parece ir diretamente para selecionar "aaa1" e estar em um modo loop-on-the-menu-items:

exec zsh -f
zmodload zsh/complist
autoload -U compinit; compinit
bindkey "^I" menu-select
cd a

Como a opção menucomplete :

exec zsh -f
autoload -U compinit; compinit
setopt menucomplete
cd a

Existe uma opção autolist , mas apenas lista as opções com a entrada de cd aaa , mas não o seu caso cd a desejado. Hmm! Que tal isso:

exec zsh -f
autoload -U compinit; compinit
setopt nolistambiguous
cd a

Isso completa para cd aaa e mostra os diretórios "aaa *".

    
por 13.07.2016 / 18:48