Tab e complete

2

A ligação de chave para a guia concluir nas configurações readline é definida implicitamente. Porque quando eu produzi

bind -q complete

Eu recebi isso em troca

complete can be invoked via "\C-i", "\e\e".

Agradecemos antecipadamente: -)

Curiosamente, quando eu digitei

bind -u complete
A guia

parou de funcionar

    
por rubixibuc 23.12.2011 / 07:38

1 resposta

2

Os terminais de texto só entendem caracteres, não chaves. Portanto, teclas especiais como Tab , Backspace , Enter e assim por diante devem ser codificadas em termos de caracteres. O conjunto de caracteres ASCII , no qual todos os conjuntos de caracteres modernos são baseados, reserva um espaço para control characters . Um desses caracteres é a Guia . Como é o número de caractere 9 e I é o número de letra 9, pressionar Ctrl + I equivale a pressionar a tecla Tab em um terminal de texto .

Você pode ver qual caractere ou seqüência de caracteres uma chave envia fazendo o seguinte em um shell:

  1. Comece a digitar echo -n ' no prompt.
  2. Pressione Ctrl + V , que diz ao shell que você realmente deseja inserir o próximo caractere e não tê-lo tratado como um comando de edição.
  3. Pressione a tecla (ou combinação de teclas como Shift + Tab ) sobre a qual você deseja informações.
  4. Insira | hexdump -C e pressione Retornar .

Você verá uma impressão do (s) byte (s) enviado (s) pela chave em hexadecimal. Os bytes 00 a 1f são caracteres de controle ( ^@ , ^A a ^Z , ^[ , ^\ , ^] , ^^ e ^_ ; ^x é uma notação comum para o controle caractere obtido pressionando Ctrl + x ).

    
por 24.12.2011 / 17:14

Tags