On Thu, 12 Jul 2001, Elp�dio Silva wrote:
> Pessoal, s� a t�tulo de curiosidade: Aquela fun��o de auto-completar
> nome_de_arquivo ou nome_de_diret�rio c om a tecla TAB � feita por
> quem?
� feito pelo programa que est� lendo a console, usualmente o BASH.
O bash completa comando (se for o primeiro par�metro da linha),
arquivo, vari�vel de ambiente (se come�ar com $), hostname (se tiver
um @, pegando os nomes de /etc/hosts).
Muitos programas usam uma biblioteca GNU chamada "readline", o bash
inclusive. O "readline" � respons�vel pela edi��o da linha. Os
comandos de edi��o default s�o "emacs-like" (emacs � um editor de
texto muito sofisticado).
Mini manual para edi��o no readline no modo emacs-like:
O emacs tem um anota��o pr�pria onde "C-X" indica a tecla "Control X",
e M-X indica a tecla "Meta X", que pode ser gerada por um ESC seguido
de X, ou pela composi��o "Alt X".
Tecla(s) nota��o emacs descri��o
Ctrl-A C-A vai para o in�cio da linha
Ctrl-E C-E vai para o fim da linha
ESC f
ou Alt-F M-f avan�a uma palavra
ESC b
ou Alt-b M-b retrocede uma palavra
Ctrl-_ C-_ undo
Ctrl-K C-K (kill) Deleta at� o fim da linha
ESC BackSpace
Alt BackSpace C-DEL Deleta palavra anterior (� esquerda)
ESC d
Alt-d M-d Deleta palavra � direita
Ctrl-Y C-Y (yank) insere �ltimo elemento deletado
ESC y
ou Alt-y M-y (yank-pop) insere o pen�ltimo elemento
deletado, s� funciona ap�s um C-Y
Ctrl-T C-T troca de lugar o caracter ao lado esquerdo
do cursor com o segundo a esquerda do
cursor (transforma "vm_" em "mv_", onde
"_" indica a posi��o do cursor)
ESC t M-t troca a palavra a esquerda do cursor
com a palavra a direita do cursor
Cntrl-R C-R (reverse incremental search) procura um
comando anterior que tenha a mesma
seq��ncia de caracteres ao que se
digitar em seguida
Ctrl-C C-C Cancela edi��o da linha atual (no emacs
mesmo, cancelar � C-G).
--- Wagner [EMAIL PROTECTED]
Assinantes em 13/07/2001: 2264
Mensagens recebidas desde 07/01/1999: 122840
Historico e [des]cadastramento: http://linux-br.conectiva.com.br
Assuntos administrativos e problemas com a lista:
mailto:[EMAIL PROTECTED]