Emacs中C-i和tab的关系是什么?

时间:2013-07-25 08:12:26

标签: emacs

将函数绑定到C-i时。似乎tab与函数绑定。 为什么会这样?它在Emacs中被认为是同一个关键吗?

2 个答案:

答案 0 :(得分:4)

它们恰好在默认设置中链接, 但它不一定是这样的:

(keyboard-translate ?\C-i ?\C-j)

现在C-i会换行,而tab仍然会缩进。

答案 1 :(得分:3)

在文本终端上按TAB会将C-i代码(名为TAB的ascii字符)发送到应用程序,因此在tty C-i和TAB下通常无法区分。 默认情况下,Emacs通过在tab没有绑定的情况下将C-i事件映射到tab来保留GUI环境中的等效性(这在function-key-map中完成)。因此,大多数软件包应将其命令绑定到TAB字符(即C-i)而不是tab事件,以便它在tty或GUI下同样良好地工作。但是如果你想区分这两者,那就很容易了:只需将你想要的命令绑定到tab事件,就不会再发生从tabC-i的映射。 / p>