我习惯于在 Mac OS X 上按 Alt+N 来写一个 ~ 字符。这在 Emacs 中不起作用。Alt+N 键似乎绑定到命令历史记录。所以我的问题是如何在 Mac OS X 上的 Emacs 中写一个 ~ 字符?
编辑:我正在使用 Aquamacs。
我习惯于在 Mac OS X 上按 Alt+N 来写一个 ~ 字符。这在 Emacs 中不起作用。Alt+N 键似乎绑定到命令历史记录。所以我的问题是如何在 Mac OS X 上的 Emacs 中写一个 ~ 字符?
编辑:我正在使用 Aquamacs。
虽然这个问题已经很老了,但对于Emacs for OS X(当今最流行的选择)来说,似乎没有一个答案能令人满意。所以,对于未来的读者...
默认情况下,适用于 OS X 的普通 Emacs 使用这两个Alt键Meta。由于在德语 Mac 键盘上输入了许多字符Alt(波浪号、方括号、花括号等),我建议设置ns-right-alternate-modifier
为,这样可以使用右键nil
输入波浪号 ( Alt-n) 和其他字符,而可以使用左键作为(如)。 AltMetaM-x
或者Cmd可以定制为Meta. 所有选项都可以在M-x customize-group ns
.
您可以随时打开“字符查看器”,选择“标点符号”,找到“~”(波浪号),然后双击它。这会将其插入 Emacs 点。(在“系统偏好设置”窗口的“键盘”窗格中选中“在菜单栏中显示键盘和字符查看器”后,可以轻松访问“字符查看器”。)
您还可以将 emacs-lisp 函数定义为:
(defun tilde () (interactive) (insert "~"))
然后调用它M-x tilde
来插入一个波浪号。然后可以将该功能分配给您选择的组合键
(global-set-key "\M-\C-!" 'tilde) ;; you choose the combo
并将所有这些添加到您的“emacs init”文件中。
quoted-insert
应该处理这个。
C-qAlt-N
Aquamacs:选项-> 选项命令元键-> 元和法语?
不幸的是,在终端(emacs -nw)中运行 emacs 时,fpbhb 的答案不起作用。
我能够想出一个适用于两种情况(独立和终端)的解决方案。另外,我有一个国际键盘,我还能够解决在终端中运行 emacs 时无法输入特殊字符的问题。
当将 emacs 作为应用程序运行时(即不在终端中),此代码段将左选项键正确绑定到“META”。它不绑定正确的选项键,可用于键入特殊字符:
(setq mac-command-key-is-meta nil
mac-command-modifier nil)
(setq mac-option-key-is-meta t
mac-option-modifier 'meta
mac-right-option-modifier nil)
在终端中运行 emacs 时,以上所有内容均无效。要在终端中获得相同的键绑定,您必须:
终端首选项 -> 键盘 -> 使用选项作为元键
不幸的是,这样做之后,您将无法使用选项键在国际键盘中键入特殊字符。特别是我错过了波浪号、反斜杠和@。
我通过将缺少的键映射添加到我的 .emacs 来解决最后一个问题:
(define-key key-translation-map (kbd "M-ñ") (kbd "~"))
(define-key key-translation-map (kbd "M-º") (kbd "\\"))
(define-key key-translation-map (kbd "M-2") (kbd "@"))
瞧。