Я хотів би мати можливість копіювати та вставляти текст у командному рядку на 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та яку термінальну програму ви використовуєте?