我在 Windows 7 x64 下使用 Emacs 24.2,带有 cedet、语义、自动完成和其他模块。
在我的一个配置文件中我定义了
(global-set-key (kbd "<C-tab>") 'semantic-complete-self-insert)
但实际上在 Emacs 中当我键入 Ctrl+Tab 时它会插入一些字符(如日语)。
我也有(prefer-coding-system 'utf-8)
。有人能解释一下这个问题吗?(Linux 下相同配置没有问题)
答案1
从这里开始:C-h k C-TAB
。甚至C-h k TAB
--- 也就是说,询问 Emacs 当您按下Tab
按键时它会看到什么键序列。
我猜它会说TAB
而不是<tab>
。不同的键盘在按下键盘Tab
键时会发送不同的事件。如果C-h k TAB
说是TAB
,则执行以下操作:
(global-set-key (kbd "TAB") 'semantic-complete-self-insert)
您也可以这样做,这样可以处理所有事情 --- 无需真正找出键盘Tab
键对应的内容:
M-x global-set-key RET TAB semantic-complete-self-insert RET
也就是说,Tab
在命令提示符下按下键global-set-key
。