如何在Mac OS X上的Emacs中编写波形符(〜)字符?

时间:2012-06-20 19:58:42

标签: macos emacs key-bindings aquamacs

我习惯在Mac OS X上按Alt + N来编写一个〜字符。这在Emacs中不起作用。 Alt + N键似乎绑定到命令历史记录。所以我的问题是如何在Mac OS X上的Emacs中编写一个〜字符?

编辑:我正在使用Aquamacs。

5 个答案:

答案 0 :(得分:10)

虽然这个问题很陈旧,但Emacs for OS X(这些日子最受欢迎的选择)似乎没有一个答案令人满意。所以,对于未来的读者......

OS X的普通Emacs默认使用 Alt 键作为 Meta 。在德语Mac键盘上使用 Alt 键入了很多字符(代字号,括号,花括号等),我建议将ns-right-alternate-modifier设置为nil,允许使用 Alt 键输入波浪号( Alt-n )和其他字符,而键可以用作 Meta (例如M-x)。

或者 Cmd 可以自定义为 Meta 。所有选项都可以在M-x customize-group ns下进行交互式自定义。

答案 1 :(得分:2)

您可以随时打开“角色查看器”,选择“标点符号”,找到“〜”(波浪号),然后双击它。这将把它插入Emacs点。 (在“系统偏好设置”窗口的“键盘”窗格中选中“在菜单栏中显示键盘和字符查看器”后,可以轻松访问“角色查看器”。)

您还可以将emacs-lisp函数定义为:

(defun tilde () (interactive) (insert "~"))

然后使用M-x tilde调用它来插入代字号。然后可以将该功能分配给您选择的键组合

(global-set-key "\M-\C-!" 'tilde)   ;; you choose the combo

并将所有这些添加到“emacs init”文件中。

答案 2 :(得分:0)

quoted-insert应该处理这个问题。

Ç-Q 替代-N

答案 3 :(得分:0)

Aquamacs:选项 - >选项命令Meta Key - >元和法语?

答案 4 :(得分:0)

不幸的是,在终端中运行emacs时,fpbhb的答案不起作用(emacs -nw)。

我能够找到解决这个问题的解决方案,适用于两种情况(独立和终端)。此外,我有一个国际键盘,我还能够解决在终端中运行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时,以上所有内容均无效。要在终端中获得相同的键绑定,您必须:

终端首选项 - >键盘 - >使用Option作为Meta键

不幸的是,执行此操作后,您将无法使用选项键在国际键盘中键入特殊字符。特别是我错过了波浪号,反斜杠和@。

我通过将缺少的键映射添加到我的.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 "@"))

瞧。