Я хотів би мати можливість копіювати та вставляти текст у командному рядку на Bash, використовуючи ті самі прив’язки клавіатури, які використовує Emacs за замовчуванням (тобто використовуючи C-space
для set-mark
, M-w
для копіювання тексту C-y
, M-y
для вставки його тощо).
У документації GNU Bash йдеться про те, що Bash постачається з деякими з цих ключових прив’язок, встановлених за замовчуванням.
Наприклад, Yanking ( C-y
) працює за замовчуванням на мій термінал. Однак я не можу змусити команди set-mark
і copy
команди працювати, і вони, здається, не прив'язані до жодних клавіш за замовчуванням.
Зазвичай спосіб, яким користувач може визначити свої власні ключові прив’язки, це додати їх до них .inputrc
. Так що я подивився і виявив наступні функції Баш в документації, я вважаю , може допомогти мені визначити Emacs-як поведінка , яке я хочу (тобто set-mark
з C-space
і copy
з M-w
).
copy-region-as-kill ()
Скопіюйте текст у регіоні в буфер вбивства, щоб його можна було витягнути відразу. За замовчуванням ця команда не пов'язана.
і
set-mark (C-@)
Встановіть позначку на точку. Якщо вводиться числовий аргумент, позначка встановлюється в цю позицію.
Якщо я правильно розумію, зазначене вище означає, що copy-region-as-kill
за замовчуванням не пов'язана жодна послідовність клавіатури, а за замовчуванням set-mark
прив’язана C-@
.
Я спробував C-@
на своєму терміналі, але не думаю, що він працює, set-mark
тому що я не бачу жодного тексту, виділеного під час переміщення курсору. У будь-якому випадку, я спробував додати прив'язки клавіатури ( M-w
і C-
) до функцій copy-region-as-kill
і set-mark
вище у своїх, .inputrc
а потім перезавантажив її C-x C-r
, але це не вийшло. Я знаю , що інші мої записи в .inputrc
роботі , тому що у мене є інші визначені користувачем клавіш , визначені в ній.
Чи є щось, що я роблю неправильно? Я щось пропускаю?
bash
та яку термінальну програму ви використовуєте?