$ bind -p | grep 'complete$'
"\C-i": complete
"\M-\e": complete
Isso mostra que a ligação de chave padrão de Meta + Esc (e Ctrl + i ) no modo de edição de linha de comando do Emacs é a função Readline complete
. A tecla Meta é normalmente Esc nos teclados sem uma chave explícita Meta . A documentação Readline para esta função diz
Attempt to perform completion on the text before point. The actual completion performed is application-specific. Bash, for instance, attempts completion treating the text as a variable (if the text begins with
$
), username (if the text begins with~
), hostname (if the text begins with@
), or command (including aliases and functions) in turn. If none of these produces a match, filename completion is attempted. Gdb, on the other hand, allows completion of program functions and variables, and only attempts filename completion under certain circumstances.
Em relação ao seu comentário, resposta do Anthon : Não, pressionar Esc duas vezes não é o mesmo que pressionar Tab geralmente (a menos que esteja em um programa que mapeie ambos para a mesma ação, como o Readline faz por padrão). Entretanto, Ctrl + i é o mesmo que Tab , assim como Ctrl + [ é o mesmo que Esc . Isso significa que você pode fazer a conclusão com Ctrl + [ Ctrl + [ em bash
, se desejar, desde que o dobro Esc esteja vinculado ao Readline complete
function. Isso é útil se você estiver trabalhando em um terminal VT220, por exemplo, sem a chave Escape: