Чи є спосіб зберегти макрос клавіатури в bash?


11

Я хотів би назавжди зберегти макрос клавіатури, який я записав за допомогою C-x (та C-x ). Чи є простий спосіб "побачити джерело" для мого нещодавно записаного макросу, щоб я міг прив'язати його до комбінації клавіш у ~ / .inputrc?

Я думав dump-macros, що це зробить, але, схоже, це не буде ...


Ну, я буду проклятий. Я не знав про цю особливість.
Чарлі Мартін

Я використовую gnome-terminal та gconf-редактор для налаштування комбінацій клавіш.
saeedgnu

Відповіді:


2

Виявляється, це насправді неможливо, тобто це було неможливо до сьогоднішнього вечора!

Оскільки мені було цікаво копатись у вихідному коді bash, я продовжив цю функцію :). Ми побачимо, чи застосували мої виправлення технічні засоби bash .


1

Найкраще, що я міг придумати, це спробувати:

echo >>.inputrc '<ctrl-x e>'

Або якщо макрос має кілька рядків, спробуйте:

echo >>.inputrc <<EOF
<ctrl-x e>
EOF

Якщо ви використовували контрольні символи, ви можете поставити туди sed, щоб замінити їх правильними кодами евакуації для inputrc.

Потім увійдіть і відредагуйте останній рядок, щоб мати правильний префікс і суфікс для того, що ви намагаєтесь досягти ...


збережіть крок, відредагуйте .inputrc, розташуйте туди, де ви хочете, щоб макрос і Cx e "ввели його". Але так, я б сказав, що це найкращий спосіб, звичайно, ви можете помістити його куди завгодно, це лише купа натискань на клавіші. Якщо ви не знаходитесь у «правильному режимі / місці / програмі», ви, ймовірно, отримаєте неправильно зрозумілі введення. Але можна було б очікувати, що якщо ви не використали макрос у потрібному місці, чи не так?
lornix


0

Здається, що .inputrc дозволяє вам просто редагувати свої команди. Я намагався dump-macrosтакож використовувати, але не міг змусити його працювати, і немає багато документації про нього. Можливо, це не працює або застаріло.

Якби була така команда, як xevприв'язки до emacs, це було б корисно. У будь-якому випадку, я думаю, що найкраще відредагувати inputrc, використовуючи вказівки на першому посиланні нижче внизу сторінки. Це зробити досить просто.

Друга посилання - це приклад файлу inputrc, щоб допомогти з'ясувати, як налаштувати макроси.

В сторону також є класна команда, bind -Pяка називає список усіх ваших макросів.

http://www.gnu.org/software/bash/manual/html_node/Miscellaneous-Commands.html#Miscellaneous-Commands

Ось приклад файлу inputrc:

http://www.gnu.org/software/bash/manual/html_node/Sample-Init-File.html#Sample-Init-File


Так, вся справа в тому, що не потрібно писати макрос вручну, а замість цього роздрукувати той, який я щойно записав ...
mgalgs

виявляється, dump-macrosпросто роздруковується, що будуть виводити ваші визначені в даний час макроси.
mgalgs
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.