问题分析
- 在使用 IntelliJ IDEA 时,遇到了热键冲突的问题,IDEA 的代码补全提示快捷键 Ctrl+空格 与系统本身的输入法切换默认快捷键相冲突。如下:
- 这个切换通过修改以下热键是无效的
- 笔者搜索得到的答案是:这是一个Bug,启动电脑时系统会通过注册表项读取默认的快捷键配置,结果热键自动重置。
问题解决
-
笔者根据情况使用了较为取巧的方法,添加了新的语言模块,其他保持不变
因为只是为了编程,所以在编程时切换为 ENG 输入,避免热键冲突,同时也不影响编写代码。切换时也很方便,Win+空格就可以。还有搜索得到的其他解决方案,暂时记录以备不时之需。
-
使用第三方软件替换热键
1. 安装 autohotkey 2. 编写如下脚本 3. 双击运行脚本 4. 要开机自动运行的话可在 任务计划程序 中添加任务 #IfWinActive ahk_class Emacs ; if in emacs +Capslock::Capslock ; make shift+Caps-Lock the Caps Lock toggle Capslock::Control ; make Caps Lock the control button ^Space::ControlSend, ,^{Space Down}{Space Up},ahk_class Emacs ; Sends simulated keystrokes to a window or control #IfWinActive ; end if in emacs 作者:虞季夏 链接:https://www.zhihu.com/question/22288432/answer/502086049 来源:知乎
-
修改注册表
答案来源:CTRL 空间始终切换中文 IME (视窗 7)