emacs中不同的键盘布局键绑定

时间:2012-10-28 18:24:58

标签: emacs

我正在使用两种键盘布局 - 一种用于母语,另一种用于英语。 问题是当我切换到母语键盘布局时,尝试执行键绑定命令。

是否有一种简单的方法可以告诉emacs使用默认的英文版布局绑定处理所有命令(C-key,M-key等)?

我见过这个问题: Emacs determining keyboard layout 其中一个答案模拟了他们的相应英语布局键的所有键,但提到它占用了加载时间,代码很长,不可读,因此可能容易出错。

帮助我很感激。

2 个答案:

答案 0 :(得分:5)

许多布局管理器允许应用程序(甚至是窗口)保持自己的布局。使用Emacs的英文版面,用你的母语写,切换输入法( C - \ )。

答案 1 :(得分:3)

如果两个布局使用完全不同的字符,那么您可以简单地让Emacs尝试“另一个字符”。例如。如果一个键在美国版式中为b,而在另一个版块中为и,则可以使用:

(define-key function-key-map [?и]       [?b])
(define-key function-key-map [?\C-и]    [?\C-b])
(define-key function-key-map [?\M-и]    [?\M-b])
(define-key function-key-map [?\M-\C-и] [?\M-\C-b])

OTOH如果两个布局最终交换一些字符,Emacs真的需要知道哪个布局是活动的,以便知道是否重新映射密钥。我不太了解键盘处理知道如何让Emacs告诉你当前正在使用哪种布局。