O atalho "delete word" do shell exclui muitos caracteres

9
Em Bash, algum comportamento de Alt + d está me enlouquecendo há anos e descobri que talvez pudesse ser corrigido com um cenário.

Se eu estiver em um terminal e emitir um comando como este:

...$   cat >> ~/notesSuperLongFilename.txt

e, em seguida, se eu quiser, por exemplo, emitir:

...$ scp ~/notesSuperLongFilename.txt

Eu gostaria de recuperar o "cat > > ~ / notesSuperLongFilename.txt" usando Ctrl + p (linha anterior) e então fazer Ctrl + a e então Alt + d e Alt + d novamente, então eu teria:

...$  ~/notesSuperLongFilename.txt

e então eu seria capaz de simplesmente digitar "scp" e então fazer um Ctrl + m (ou pressionar Enter / Return).

No entanto, não funciona porque depois da primeira Alt + d eu obtenho:

...$ >> ~/notesSuperLongFilename.txt

(até aí tudo bem)

mas depois da segunda Alt + d eu obtenho:

...$ .txt

Portanto, por algum motivo Alt + d exclui "> > ~ / notesSuperLongFilename" de uma só vez, em vez de simplesmente excluir "> >" .

Este tem que ser o maior desperdício de tempo que está me deixando louca com o Linux / Bash desde literalmente anos.

Então, como posso corrigir esse comportamento (indiscutivelmente quebrado) de Alt + d ?

PS: Eu não sei quem é "responsável" pelo comportamento Alt + d : não sei se é o terminal ou se é o shell ( Bash no meu caso).

    
por Cedric Martin 04.07.2013 / 18:09

1 resposta

3

I don't know who's "responsible" for that Alt+d behavior: I don't know if it's the terminal or if it's the shell (Bash in my case).

É bash , especificamente a configuração de edição de linha de comando padrão. Aqui é uma boa página sobre quais comandos podem ser ligados e como alterar as ligações padrão.

A ligação padrão para Alt-d é kill-word , que deve funcionar como o comando do mesmo nome no Emacs. Como você observou, o Emacs consideraria o espaço entre >> e o til em seu exemplo como uma quebra de palavra. Que bash não, eu consideraria um bug. Além de obter a fonte para bash , alterá-la e recompilá-la, não sei o que você pode fazer.

    
por 04.07.2013 / 18:26