【问题标题】:How to prevent Windows XP from stealing my input Ctrl-Space which is meant for Emacs?如何防止 Windows XP 窃取我用于 Emacs 的输入 Ctrl-Space?
【发布时间】:2010-09-15 19:11:55
【问题描述】:

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

【问题讨论】:

  • 语言栏是什么意思?任务栏中的输入语言环境?
  • 我注意到该栏实际上在Vista中被称为语言栏。在德语 XP 中,它被称为 Eingabegebietsschemaleiste,字面意思是输入区域设置栏:)

标签: windows emacs


【解决方案1】:

在我刚刚经历的过程中找到了解决这个问题的方法。因此,即使问题很旧,也可以这样做。

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

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

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

【讨论】:

  • 谢谢,这帮我搞定了 :)
  • 在 Windows 7 64 位中也为我工作!太棒了!
  • 还有一个提示,请在切换到任何语言之前进行此设置,如果任何窗口已经使用 IME,则更改将不起作用。因此,请在重新启动 Windows 时执行此操作。
  • 不幸的是,这并不能真正帮助那些想要保留外语并想要释放热键的人。我会推荐几个答案或superuser.com/a/480723/161249 作为永久解决方案。
【解决方案2】:

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

  • 打开 RegEdit 并导航到 HKEY_CURRENT_USER\Control Panel\Input Method\Hot Keys
  • 查找具有以下值的“00000070”(繁体中文)或“00000010”(简体中文)键:Key Modifiers='02,c0'(Control)Virtual Key='20'(空格)
  • 将这些值替换为,例如Key Modifiers='FF,c0,00,00' 和 Virtual Key='FF'。
  • 注销/重新登录(重要)。

这在 Windows 7 中对我有用。

【讨论】:

【解决方案3】:

,我一直都知道这个 Windows 错误。经过大量不满意的解决方法和一年一两次的无果搜索后,我试图找到解决方案,我终于找到了!

程序

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

注意事项:症状

每个注册表项(看起来像一个文件夹)都对应于您通常会在Control Panel > Region and Language > Keyboards and Languages > Change keyboards... > Advanced Key Settings > 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

【讨论】:

    【解决方案4】:

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

    提供的两种解决方案是:

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

    【讨论】:

    • 这个错误不会发生在每个人身上。我自己从未见过。
    • 这些是一种较弱的解决方法。有关实际解决方案,请查看 Richard C 的答案或superuser.com/a/480723/161249
    【解决方案5】:

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

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

    【讨论】:

    • @Thorbjørn,如果我有 Windows 7,当然可以。如果您知道 Windows 7 的正确步骤,请随时添加。
    • 实际上,你不能。这是一个非常烦人的错误,专门针对几代 Windows 操作系统存在的中文 IME 切换热键。
    【解决方案6】:

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

    【讨论】:

    • 事实上,你不能。这是一个非常烦人的错误,专门针对几代 Windows 操作系统存在的中文 IME 切换热键。
    【解决方案7】:

    以下对我有用:

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

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

    将 C-Space 绑定到 C-Space 不起作用。

    【讨论】:

      【解决方案8】:

      我找到了this 的帖子,它适用于我的 Vista。

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

      【讨论】:

      【解决方案9】:

      对我有用的简单技巧:

      Ctrl+Windows+空格

      按钮都在一个位置,因此它们可以同时按下。 它们作为 Ctrl+Space 工作

      【讨论】:

      • ctrl + shift + 空格会更方便
      【解决方案10】:

      【讨论】:

      • 虽然理论上这可以回答这个问题,it would be preferable 在这里包含答案的基本部分,并提供链接以供参考。
      【解决方案11】:

      在查看并尝试使用 regedit 的 Richard C 的答案之后...

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

      故事的寓意:如果某些东西在 Windows 中不能正常工作,重新开始

      【讨论】:

        【解决方案12】:

        愚蠢的方式,但是在我的系统上打开了很多应用程序,所以只是从“常规”选项卡 - 已安装的服务中删除了中文。成功了!

        【讨论】:

          猜你喜欢
          • 2015-12-31
          • 1970-01-01
          • 2011-02-18
          • 2011-02-10
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-11-06
          • 2011-05-09
          相关资源
          最近更新 更多