Как правильно получить RIGHT KEYSEQ для readline в .inputrc?

С чем я борюсь:

Я настраиваю файл ~/.inputrc так, чтобы он совпадал с моими пользовательскими привязками клавиш emacs, и я очень борюсь с последовательностями клавиш readline.

Под этим я подразумеваю, что если я хочу установить <up> / <down>, я должен установить для него значение "\e[A" / "\e[B"

. Как я могу определить keyseq для <F1>..<F12>? ] или даже если я хочу связать что-то, скажем, (kbd "C-x <M-f7>") в терминологии emacs (то есть: чтобы [control]+[x] [alt]+[f7] было одним ключевым ключом)?


Что я хочу:

есть какая-нибудь команда , которая сообщает мне определенную клавишу на клавиатуре, какова ее управляющая последовательность? Если нет команды, есть ли другой ресурс (article / table / ...) с некоторыми подсказками?

--> goal: replace <KEY SEQUENCE> with proper keyseq

"<f3>"           : start-kbd-macro
"<S-f4>"         : end-kbd-macro
"C-x <C-M-S-f4>" : dump-macro
"<f4>"           : call-last-kbd-macro
... more keybindings ...

5
задан 9 March 2012 в 06:58

1 ответ

Я нашел решение: использовать emacs -nw и функция insert-quoted (значение по умолчанию связывает с Ctrl+q).

Ctrl+q приведет к ^[[A
Ctrl+q F1 в ^[[[A

Строки в ~/.inputrc будет затем следовать (результаты могут варьироваться в зависимости от среды - главным образом переменная $TERM):

"\e[[A": "pressed up key"
"\e[[[A": "pressed F1"

Мотивация для изменения .inputrc может следовать.

Разве Вам не нравятся подобные emacs ключи за навигацию вдоль строки и истории?
Я не делаю и я предпочитаю привязки клавиш ErgoEmacs, потому что они логичны, и я хочу использовать их не только в Emacs, но и в масштабе всей системы.

"\ej": backward-char
"\el": forward-char
"\ei": previous-history
"\ek": next-history
"\eh": beginning-of-line
"\eH": end-of-line
"\eu": backward-word
"\eo": forward-word
"\eg": kill-line
"\eG": backward-kill-line
"\ee": backward-kill-word
"\er": kill-word
"\ed": backward-delete-char
"\ef": delete-char
"\ez": undo
"\ex": kill-region
"\ec": copy-region-as-kill
"\ev": yank
"\e;": forward-search-history
"\e:": reverse-search-history

Я записал "sudo установку способности" так много раз (обычно после новой установки), что я имею M-a M-i (т.е. Alt+a Alt+i) как ярлык для этого (потому что alias к тому же самому не автоматически заполняют),

"\ea\ei": "sudo aptitude install "

Существует много других причин, почему у Вас должно быть свое собственное ~/.inputrc ...

3
ответ дан 9 March 2012 в 06:58

Другие вопросы по тегам:

Похожие вопросы: