Под Bash какое-то поведение Alt+ dсводило меня с ума с годами, и я понял, что, возможно, это можно исправить настройкой.
Если я в терминале и выдаю команду, подобную этой:
...$ cat >> ~/notesSuperLongFilename.txt
и затем, если я хочу, скажем, выдать:
...$ scp ~/notesSuperLongFilename.txt
Я хотел бы вернуть "cat >> ~ / notesSuperLongFilename.txt", используя Ctrl + p (предыдущая строка), а затем сделать Ctrl+, aа затем Alt+ dи Alt+ еще dраз, чтобы у меня было:
...$ ~/notesSuperLongFilename.txt
и тогда я смогу просто ввести «scp», а затем сделать Ctrl+ m(или нажать Enter / Return).
Однако это не работает, потому что после первого Alt+ dя получаю:
...$ >> ~/notesSuperLongFilename.txt
(Все идет нормально)
но после второго Alt+ dя получаю:
...$ .txt
Поэтому по какой-то причине Alt+ сразу dудаляет ">> ~ / notesSuperLongFilename" вместо простого удаления ">>" .
Это, должно быть, самая большая трата времени, которая сводит меня с ума с помощью Linux / Bash буквально годами.
Так, как я могу исправить это (возможно сломанное) поведение Alt+ d?
PS: я не знаю, кто "отвечает" за это Alt+ dповедение: я не знаю, является ли это терминалом или оболочкой (в моем случае Bash).
источник
Ответы:
Это
bash
, в частности, настройка редактирования командной строки по умолчанию. Вот хорошая страница о том, какие команды могут быть связаны, и как изменить привязки по умолчанию.Связывание по умолчанию
Alt-d
IS ,kill-word
который должен работать как команда с таким же названием в Emacs. Однако, как вы заметили, это не так - Emacs будет рассматривать пространство между>>
тильдой в вашем примере как разрыв слова. Этоbash
не так, я бы рассмотрел ошибку. Если не считать источникаbash
, изменить его и перекомпилировать, я не знаю, что вы можете сделать.источник