Как установить привязку клавиш CMD в Emacs?
Я использую Emacs в терминале Mac OS X, установленном с homebrew.
Мой ключ CTRL - это мой ключ C, а ключ ALT - Meta.
Как я могу определить привязки клавиш для комбинаций клавиш CMD?
Например, я хочу установить CMD- (стрелку вправо), чтобы перейти в конец строки.
ИЗМЕНИТЬ
Я пробовал предложения @nickcarlo ниже
(setq mac-command-modifier 'super)
(global-set-key (kbd "s-<right>") 'move-end-of-line)
Я не думаю, что CMD-ключ настроен на супер правильно, так как я не вижу s-foo
в мини-буфере, как если бы я набрал C-x
или M-x
или что-то еще. Я заметил, что CMD-right, когда я открываю два окна терминала, переключается между двумя терминальными окнами, поэтому я думал, что это может блокировать любые пользовательские настройки. Однако я пробовал:
(global-set-key (kbd "s-9") 'move-end-of-line)
.. и CMD-9 ничего не делает, кроме звукового сигнала, чтобы сказать мне, что я нажал что-то неправильно.
Настройка комбинаций клавиш, отличных от CMD, кажется, работает нормально, например:
(global-set-key (kbd "C-w") 'move-end-of-line)
Ответы
Ответ 1
Вы можете установить его с чем-то вроде:
(global-set-key (kbd "s-<right>") 'move-end-of-line)
"s" является ссылкой на ваш командный ключ.
PS: Я не нахожусь на своем mac прямо сейчас, поэтому я не уверен, что именно вам нужно написать, чтобы установить его на определенные вами ключи, чтобы переместить его в конец строки, но команда представлена символом s в emacs.
ИЗМЕНИТЬ
Просто протестировал это на моем mac. Это точный код, который вы хотите записать (если вы хотите установить его по всему миру), чтобы связать ваш командный ключ + клавишу со стрелкой вправо, чтобы переместить курсор в конец строки.
Если вышеуказанное не работает, вы также можете попробовать
(global-set-key (kbd "\s <right>") 'move-end-of-line)
Разница между тем, что выше и выше, заключается в том, что приведенное выше соответствует CMD + right, и этот эквивалент CMD, а затем отпустите CMD и нажмите правую клавишу. Обе работают на OS X в моей системе.
Также проверьте следующее сообщение, чтобы установить CMD как супер-ключ, если ваш Emacs еще не зарегистрировал его как таковой:
http://ergoemacs.org/emacs/emacs_hyper_super_keys.html
В частности, вы можете использовать следующий код, чтобы настроить CMD-ключ как Super:
(setq mac-command-modifier 'super)
Ответ 2
В Aquamacs для меня работала следующая
(global-set-key (kbd "A-r") 'my-command)
Ответ 3
Шаг 1: c-x c-f.emacs//открывает файл .emacs
Шаг 2: добавьте следующие строки в конец файла .emacs
;; changing the command to control
(setq mac-command-modifier 'control)
Шаг 3: Сохраните файл .emacs
Шаг 4: M-x eval-buffer//M-x = Alt-x//Это оценивает буфер .emacs и перезагружает Emacs
Шаг 5: Попробуйте CMD-e, чтобы перейти к концу строки.//Теперь CMD действует как control
Шаг 6: Тем не менее CMD-e не перезагружает Emacs.
Наслаждайтесь использованием Emacs!