如何防止Windows XP窃取我的输入Ctrl-Space,这是用于Emacs?

时间:2008-10-07 15:44:21

标签: windows emacs

我正在学习和使用Emacs。我发现烦人的是,Windows XP会阻止Ctrl-Space输入来切换语言栏,而不是在Emacs中设置标记。 “语言栏”是本机输入语言选择,例如英语键盘以外的中文键盘。有没有办法暂时阻止XP窃取它?我已从“控制面板”中的“区域和语言选项”中禁用了语言栏,但问题仍然存在。它不会发生在办公室的Windows 2000桌面上,但它发生在我的Windows XP笔记本电脑上。非常感谢你。

12 个答案:

答案 0 :(得分:24)

我刚刚体验过这个问题的解决方案。所以,即使问题已经过去,也会如此。

适用于Windows 7和其他人。我添加了中文,日文和韩文输入语言,因为我需要这些语言进行一些开发。之后我通过控制面板“更换键盘......”再次删除它们。我一次性删除它们并关闭对话框。 在此之后,所有语言仍显示在语言栏中,我遇到了Ctrl-Space问题。

为了解决这个问题,我一次为每种语言做了以下事情: 1.打开控制面板小程序“更改键盘......” 2.添加语言键盘(即中文) 3.单击“确定”并退出控制面板 4.再次打开小程序并移除键盘。

问题似乎是在同时删除多个键盘时出现的错误。

答案 1 :(得分:9)

博客Sorting it all Out下的评论(在sundar的答案中提到)提到了这个解决方案:

  • 打开RegEdit和naviagate到HKEY_CURRENT_USER \控制面板\输入法\热键
  • 找到'00000070'(繁体中文)或'00000010'(简体中文)键,其值为:Key Modifiers = '02,c0'(Control)Virtual Key = '20'(Space)
  • 将这些值替换为,例如键修饰符='FF,c0,00,00'和虚键='FF'。
  • 退出/重新登录(重要)。

这在Windows 7中对我有用。

答案 2 :(得分:5)

我已经意识到的这个Windows错误。经过大量不满意的解决方法和一年一两次的徒劳无功的搜索,我试图找到解决方案,我终于拥有了它!

程序

  1. 转到Start>输入regedit并启动它
  2. 导航至HKEY_CURRENT_USER/Control Panel/Input Method/Hot Keys
  3. 选择名为的密钥:
    • 00000070代表Chinese (Traditional) IME - Ime/NonIme Toggle热键
    • 00000010代表Chinese (Simplified) IME - Ime/NonIme Toggle热键
  4. 在右侧子窗口中,有三个子项。
    • 键修饰符指定 Alt / Ctrl / Shift / etc并设置为 Ctrl ({{1 }})。
    • 虚拟键指定完成键,并设置为 Space 02c00000)。
  5. 20000000中的第一个字节从Key Modifiers更改为02
  6. 00中的第一个字节从Virtual Key更改为20
  7. 注销并重新登录。我不认为有必要重新启动。
  8. 除非您想要重新执行此操作,否则请勿更改“控制面板”中的FF
  9. 注意:症状

    每个注册表项(看起来像文件夹的内容)都适用于您在Hot keys for input languages中通常可以找到的每个特定热键设置。重复出现的错误是即使通过GUI更改,热键也会自动重置为 Ctrl + space

    这适用于Windows 7 64位,但从我的研究来看,它看起来也适用于XP和Vista。

    来源:

    Traditional Chinese Pocket IME Hot Key Registry Settings

    Simplified Chinese MSPY 3.0 IME Hot Key Registry Settings

答案 3 :(得分:4)

博客here似乎正在讨论这个问题。看起来即使从控制面板禁用热键也不起作用 - 由于操作系统中的一些错误,它们会自动重新启用。

提供的两种解决方案有:

  • “使用GeoShell等替代桌面shell可以缓解这个问题。” (Link
  • “再安装一种语言。 我在英文win XP上安装日文和中文。然后,XP不再响应Ctrl-Space。“(Link

答案 4 :(得分:3)

转到区域和语言选项控制面板。单击语言选项卡,然后单击详细信息...按钮。单击“密钥设置...”按钮。双击“输入语言的热键”列表中的每个条目,并确保未选中复选框。 (如果是,请取消选中它们并单击“确定”。)

您无需禁用语言栏,只需热键即可。

答案 5 :(得分:2)

您还可以更改语言栏的热键。

答案 6 :(得分:1)

以下适用于我:

有一个Windows免费软件AutoHotkey让你, 例如,将F12绑定到Alt-a。

安装AutoHotkey并将C-Space绑定到C - @。

将C空间绑定到C空间不起作用。

答案 7 :(得分:1)

我发现了this帖子,它在Vista上适用于我。

  • 在运行对话框中打开“regedit.exe”
  • 将注册表编辑器浏览到以下位置:HKEY_CURRENT_USER \ Control Panel \ Input Method \ Hot Keys \
  • 现在删除名称为0000007x(x表示任意数字)
  • 的注册表项

答案 8 :(得分:1)

对我有用的简单技巧:

控制+视窗+空格

按钮都在一个地方,所以它们可以一次压在一起。 它们用作Ctrl + Space

答案 9 :(得分:0)

答案 10 :(得分:0)

在查看并尝试了理查德C的答案之后......

我发现,在语言设置窗口中更改了所有键序列后,上面指定的注册表值已经更改了....所以没有编辑注册表,我重新启动了Ctrl-Space序列被禁用了!!

故事的道德:如果某些内容在Windows中不起作用, RESTART

答案 11 :(得分:0)

愚蠢的方式,但是我的系统上打开了很多应用程序,所以只需从常规选项卡中删除中文语言 - 已安装的服务。它奏效了!