将函数绑定到C-i
时。似乎tab
与函数绑定。
为什么会这样?它在Emacs中被认为是同一个关键吗?
答案 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
事件,就不会再发生从tab
到C-i
的映射。 / p>