Se o seu shell usa a biblioteca readline
, aqui está o que eu tenho no meu arquivo /etc/inputrc
padrão:
# mappings for Ctrl-left-arrow and Ctrl-right-arrow for word moving
"\e[1;5C": forward-word
"\e[1;5D": backward-word
"\e[5C": forward-word
"\e[5D": backward-word
"\e\e[C": forward-word
"\e\e[D": backward-word
Este arquivo é lido apenas se a variável de ambiente INPUTRC
não estiver definida e se você não tiver nenhum arquivo .inputrc
em seu diretório pessoal.
Agora, devemos instruir o console a emitir uma das strings backward-word
quando a tecla Ctrl-Left for pressionada e uma das strings forward-word
quando a tecla Ctrl-Right for pressionada.
Para isso, precisamos adicionar alguns mapeamentos de teclado especiais a /etc/console-setup/remap.inc
:
# Ctrl + Left arrows key (readline's backward-word)
control keycode 105 = F200
string F200 = "3[5D"
# Ctrl + Right arrows key (readline's forward-word)
control keycode 106 = F201
string F201 = "3[5C"
Aqui eu pedi emprestado dois keyyms F200
e F201
(coletados quase aleatoriamente da saída de dumpkeys --long-info
) para armazenar as seqüências esperadas por readline
. keycode 105
é a seta para a esquerda e keycode 106
é a seta para a direita (esses códigos de tecla também foram obtidos com dumpkeys
).
Agora, vamos reconstruir nosso novo mapa de teclado:
setupcon --save-only
Deve (re) criar o arquivo /etc/console-setup/cached.kmap.gz
. Você pode carregá-lo manualmente com o comando:
loadkeys /etc/console-setup/cached.kmap.gz
Ou melhor, da mesma forma quando a sua máquina inicializa:
service console-setup start