11

Я хотел бы навсегда сохранить макрос клавиатуры, который я записал, используя Cx ( и Cx). Есть ли простой способ "увидеть источник" моего недавно записанного макроса, чтобы я мог связать его с сочетанием клавиш в ~/.inputrc?

Я думал, что dump-macros сделают это, но это не похоже ...

4 ответа4

2

Оказывается, это действительно невозможно, то есть, до сегодняшнего вечера это было невозможно!

Так как мне было любопытно покопаться в исходном коде bash, я пошел дальше и добавил эту функцию :). Посмотрим, применил ли мой патч мой сопровождающий.

1

Лучшее, что я мог придумать, это попробовать:

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

Или, если макрос содержит несколько строк, попробуйте:

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

Если вы использовали управляющие символы, вы можете добавить туда sed, чтобы заменить их правильными управляющими кодами для inputrc.

Затем войдите и отредактируйте последнюю строку, чтобы иметь правильный префикс и суффикс для того, чего вы пытаетесь достичь ...

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

0

Добавьте эту строку в .inputrc:

alias macro

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .