问题描述
|
我正在使用emacsformacosx.com,并希望将Apple键盘上的Meta_R(右Meta键或右选项键)停止作为Emacs Meta键。
原因是我希望能够继续使用正确的选项键作为字符修饰符,以便在emacs中编写时可以输入UTF-8字符。我知道我可以执行
C-x 8 RET
并输入em dash
,但是比Alt_R -
要做更多的工作!
有什么办法可以将键码传递给global-unset-key
?还是我忽略的其他事情?
我应该清楚,我仍然希望能够使用Meta_L绑定:)
解决方法
Aquamacs有一个称为ns-right-alternate-modifier的变量。如果我正确阅读了文档,则应该执行您想要的操作:
(setq ns-right-alternate-modifier nil)
我不确定股票GNU Emacs是否支持此功能。
, 要在Mac OS X版本的GNU Emacs上将左ALT键与META映射,将右ALT键与ALT映射,我使用:
(setq mac-option-key-is-meta t)
(setq mac-right-option-modifier nil)
它应该为您期望的行为做好工作。
, 我找到了适用于法语键盘的Macbook Pro解决方案。
考虑到我几乎从来没有在这里使用Fn键:
; ALT被视为ALT,不能解释为META
(setq-default mac-option-modifier无)
; Fn被视为META,而不被解释为Fn
(setq-default mac-function-modifier \'meta)
因此,我可以在emacs中随意使用尽可能多的反斜杠!
\\\\[大!!!]\\\\
, 这不完全是您想要的,但这是我的工作,可能会对某人有所帮助(例如,在只有一个选项键的Macbook键盘上):您可以只绑定所需的键:
(global-set-key \"\\M-_\" (lambda () (interactive) (ucs-insert \"2014\")))
用于破折号等。只需绑定您常用的任何内容即可。在极少数情况下,您想输入尚未绑定的内容,您可以(在Aquamacs中也可以在其他Emacsen中输入)打到绑定到toggle-mac-option-modifier
的C-;
,这样Option键就不再是Meta,键入字符,然后再次按C-;
。