2009-05-13 7 views
19

Я хотел бы связать Ctrl +R к 'isearch-backward и связать Ctrl +сдвиг + ¨R к 'tags-apropos, но я не могу различить между двумя нажатиями клавиш.Может ли Emacs различать ctrl-r и ctrl-shift-r?

Может Emacs различать Ctrl +R и Ctrl + Сдвиг + R? Что должно зайти в мой файл .emacs, чтобы разрешить эту привязку?

ответ

31

Да.

(global-set-key (kbd "C-r") 'isearch-backward) 
(global-set-key (kbd "C-S-r") 'tags-apropos) 

Путь, чтобы выяснить ответ на такого рода вопрос, чтобы сделать помощь по ключевому Ch к и введите нажатий клавиш, которые вы заинтересованы. Что Emacs показывает в Помощь буфера строка, которую вы можете передать макросу 'kbd.

+5

Мне нравится «научить человека ловить рыбу» – justinhj

2

Да - один - "\C-r", другой - "\C-R". Они могут быть легко связаны с отдельными командами. Например, это следует сделать трюк, если поместить в файл .emacs:

(global-set-key "\C-R" 'tags-apropos) 
+2

К сожалению, это не работает. Когда вы передаете строку глобальному набору ключей, любой символ верхнего регистра переводится в его нижний регистр. Итак, (global-set-key "\ C-R" 'tags-apropos) на самом деле будет связывать Ctrl + r, а не Ctrl + Shift + r. Чтобы обойти этот перевод, вы можете использовать макрос «kbd», как утверждает другой ответ. –

 Смежные вопросы

  • Нет связанных вопросов^_^