No OSX, posso simplesmente manter pressionada a optiontecla e pressionar a tecla do cursor esquerdo até chegar à palavra que preciso editar (ou no Vi posso simplesmente pressionar b, mas não consegui descobrir como fazer isso no Terminal ainda...
Responder1
Para definir a ligação de teclas: Primeiro você precisa descobrir quais códigos de teclas a sequência de teclas Ctrl+ Leftcria. Basta usar o comando cat
para desligar qualquer interferência nas combinações de teclas existentes e, em seguida, digitar a sequência de teclas. No meu sistema (Linux), é assim:
$ cat
^[[1;5D
Pressione Ctrl+ dpara sair do gato. Agora você descobriu que Ctrl-Left emite 6 códigos de teclas:
- Escapar (^[)
- [
- 1
- ;
- 5
- D
Agora você pode emitir o comando bind:
bind '"\e[1;5D": backward-word'
Responder2
A função bash que você deseja é backward-word
. Você pode executar bind -q backward-word
para obter uma lista de chaves vinculadas a essa função. Uma ligação comum é Esc+b
Além disso, muitos terminais suportam Ctrl+ Left(a mesma tecla de atalho que você pode usar no X para retroceder por palavra)
Responder3
O atalho de tecla padrão no Bash backword-word
é Alt+ b. O mesmo resultado pode ser alcançado com Esc+ b. Você deve experimentá-los antes de editar seus atalhos de teclado.
Use bind
o comando para editar ou bind -q [name]
obter o atalho de teclado atual de uma ação específica.