在 Emacs 中插入特殊字符

在 Emacs 中插入特殊字符

我使用英文键盘,有时需要输入一些德文字母。所以我定义了

(global-set-key [?\C-\;] (make-sparse-keymap))
(global-set-key [?\C-\; ?A] [?\x08C4]) 
...

插入“ä”等。它曾经工作多年,但它不适用于我当前的 GNU Emacs 23.1.1。我意识到使用硬编码为数字的字符不是一个好主意,但它帮助我解决了编码问题(只有在 Sun、Linux 和 Windows 上,即使使用共享文件系统,它也能正常工作)。

在 Emacs 中定义插入特殊字符的键的最佳方法是什么?

答案1

编辑:添加了可能更简单的方法来输入您的特殊字符。

您的 elisp 代码在我的GNU Emacs 23.1.1Linux Ubuntu上运行良好

以下两种设置快捷键的方法均可行(在我的 emacs 中),不需要第一make-sparse-keymap行。
   (global-set-key [?\C-\;] (make-sparse-keymap))

(global-set-key [?\C-\; ?A] [?\x00E4])
(define-key key-translation-map (kbd "C-; a") (kbd "ä"))

输入特殊字符的更简单方法是使用input method包含所需字符的 。对于 'ä" 来说,latin-1-prefix是合适的。

通过以下方式选择其他输入法

  • C-x RET C-\
  • M-x set-input-method

选择latin-1-prefix

要输入字符ä,请切换到latin-1-prefix并输入"a
取决于您通常输入的内容。您可能不需要切换回latin-1-prefix

切换输入法(启用或禁用)。

  • C-\

要描述当前输入法,请使用

  • C-h C-\
  • C-h I

有关详细信息,请参阅:

此外,还有一些关于 Xah Lee 的一般信息Emacs 和 Unicode 技巧页。

相关内容