Sous Bash, un comportement de Alt+ dme rend fou depuis des années et j'ai compris que cela pourrait peut-être être corrigé avec un paramètre.
Si je suis sur un terminal et émets une commande comme celle-ci:
...$ cat >> ~/notesSuperLongFilename.txt
puis si je veux, disons, émettre:
...$ scp ~/notesSuperLongFilename.txt
Je voudrais récupérer le "chat >> ~ / notesSuperLongFilename.txt" en utilisant Ctrl + p (ligne précédente) puis refaire Ctrl+ a, puis Alt+ det Alt+ dpour avoir:
...$ ~/notesSuperLongFilename.txt
puis je serais en mesure d'entrer simplement "scp" puis de faire un Ctrl+ m(ou appuyez sur Entrée / Retour).
Cependant ça ne marche pas car après le premier Alt+ dj'obtiens:
...$ >> ~/notesSuperLongFilename.txt
(jusqu'ici tout va bien)
mais après le deuxième Alt+ dj'obtiens:
...$ .txt
Donc, pour une raison quelconque, Alt+ dsupprime ">> ~ / notesSuperLongFilename" à la fois au lieu de simplement supprimer ">>" .
Ce doit être le plus gros gaspilleur de temps qui me rend fou avec Linux / Bash depuis des années.
Alors, comment puis-je corriger ce comportement (sans doute cassé) de Alt+ d?
PS: je ne sais pas qui est "responsable" de ce Alt+ dcomportement: je ne sais pas si c'est le terminal ou si c'est le shell (Bash dans mon cas).
la source
Réponses:
Il s'agit
bash
en particulier de la configuration d'édition par défaut de la ligne de commande. Voici une belle page sur les commandes qui peuvent être liées et comment changer les liaisons par défaut.La liaison par défaut pour
Alt-d
est cellekill-word
qui est censée fonctionner comme la commande du même nom dans Emacs. Cependant, comme vous l'avez observé, ce n'est pas le cas - Emacs considérerait l'espace entre>>
et le tilde dans votre exemple comme une rupture de mot. Cebash
n'est pas le cas, je considérerais un bug. À moins d'obtenir la sourcebash
, de la changer et de la recompiler, je ne sais pas ce que vous pouvez faire.la source