Front-end web developer——[to be a better man]
文章字体大小Font Size文章字体大小:12px, 14px
05

Windows XP下正确的“修改中/英标点切换快捷键”方法

  Windows XP下的输入法键值修改,可以说是它的一个BUG,因为在图形界面下进行某些键的修改后就再也无法重设了,如输入法/非输入法切换Ctrl+space为Ctrl+shift+space,再了无法修改为Ctrl+space,这里所说的“修改中/英标点切换快捷键”也是同样情况。

  文章分三部分:问题描述及原理修改方法延伸

  问题描述及原理
  因为我机子上的“中/英标点切换快捷键”坏掉了,这么好的快捷键没了,得想法把它修复,于是在上网找了很多,但直接的操作方法不如意,如这篇修改输入法中/英标点切换快捷键

运行regedit,打开注册表编辑器,找到 HKEY_CURRENT_USER\Control Panel\Input Method\Hot Keys\00000012,将右边的二进制值“Key Modifiers”修改为“02 C0 00 00”即可。

  其实这是不全面的,而且没有效果,因为我的机子上的00000012项也没了,而00000012项代表的就是“修改中/英标点切换快捷键”,而且,我在图形界面中怎么设置也不行,总说有被占用了。

图形界面下设置
中/英标点切换没了

  我们在搜索引擎上,继续以“修改中英标点切换快捷键”为关键字继续找,始终得到不满意解决方案。那就换关键词吧:既然知道HKEY_CURRENT_USER\Control Panel\Input Method\Hot Keys\00000012这个注册表,那就顺藤摸瓜,以Hot Keys 00000010为关键字找,找到了Input Method of Win32 System ,并从中了解到一些十分有用的快捷键原理,大概意思如下:

Virtual Key = 20 00 00 00 //这是组合键的第二个,这个值是指SPACE
Key Modifiers = 02 C0 00 00 //这是组合键的第一个,这个值指Ctrl
Target IME = 00 00 00 00 //这是组合键的目标输入法或行为,这个值可指向到默认的输入法

上面的行为过程是这样的:当我们先按下Key Modifiers,不放手,然后按下第二个键Virtual Key,就会转到目标输入法/或行为。

  好了,既然知道原理,我们只要找到相关的代表值就行了。继续找,又发现这里(The CD Forum _ Plugins _ Simplified Chinese Plugin),
里面有丰富的注册表值可查,从文章看出,这些值应该就是默认的值了。虽然那里给出的代码很长,但往下查找,找到了这一组:


0×0, “Control Panel\Input Method\Hot Keys\00000012″
0×3, “Control Panel\Input Method\Hot Keys\00000012″, “Key Modifiers”, 02,c0,00,00
0×3, “Control Panel\Input Method\Hot Keys\00000012″, “Target IME”, 00,00,00,00
0×3, “Control Panel\Input Method\Hot Keys\00000012″, “Virtual Key”, be,00,00,00

原来”Virtual Key”的值是”be 00 00 00″!

  解决方法
  针对不同的情况,据我目前所知,就有以下两种及相应的解决方法:
  方法1、如果00000012还在,即如果得组合键的中间加上shift还可以使用的话(Ctri+shitf+.),可以这样:
运行regedit,打开注册表编辑器,找到 HKEY_CURRENT_USER\Control Panel\Input Method\Hot Keys\00000012,将右边的二进制键及相应的值分别修改如下:
Key Modifiers :02 c0 00 00
Target IME :00 00 00 00
Virtual Key :be 00 00 00

完成后重启。
  方法2、如果00000012不见了,像我这情况,无论怎么也改变不了的话,可以添加回去,方法有很我种,但我喜欢这样:
右击HKEY_CURRENT_USER\Control Panel\Input Method\Hot Keys\00000010项,或者在HKEY_CURRENT_USER\Control Panel\Input Method\Hot Keys\下的其它也行项也行,再点击导出,保存到一个地方,然后用记事本打开,在里面修改如方法1相关的值,基本上,修改后的内容是这样的:
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Control Panel\Input Method\Hot Keys\00000012]
“Key Modifiers”=hex:02,c0,00,00
“Target IME”=hex:00,00,00,00
“Virtual Key”=hex:be,00,00,00

保存后双击,确定,注入成功后,在注册表中就可以看到这项内容,而且此时,图片界面中也可以看到Ctrl+Period已经出来了,重启,OK,恭喜!
  PS:如果使用“图形界面”设置输入法快捷键,实际即是普通的设置方法,只是被我说得悠忽了点:P

  延伸
  对于亚洲国家来说,输入法的人性化设置很有用,但Window在这方面做得很不错了,像Ctrl+Space等这些已经让人们形成输入法操作已经得到认同,而且人们在使用过程中已经形成了习惯,但这些习惯都是Windows 的默认设置,而Window却不能在这些设置受改动时让它方便的还原。不过像Ctrl+Space这些的设置只似乎对亚洲地区的国家来说才是习惯,因为在大部分欧美国家开发的文本编辑都对Ctrl+Space有特殊的用途,如Dreamweaver和NetBeans就用且只能用Ctrl+Space来做为代码提示的快捷键。好吧,其它不说,让我们说说怎么延伸吧。

  延伸1、以同样的方法恢复输入法的其它默认值,只要把键值用上面的方法把上面的值放进去就可以了。当然,更好的方法就是在刚刚安装完系统时把注册表导出,以后有需要就把相应的导入就行了。我这里就有两个,一个是为Ctrl+Space,另一个是为Ctrl+.的,点击中英文标点切换恢复等.zip下载。
另外,HKEY_USER 根键也有说这个问题的,推荐大家去看看。

  延伸2、要善于利用搜索引擎解决问题。通常来说,在搜索出来的结果前5页之后的基本是不相关的了;而且我们在还不太清楚问题描述时,关键词也会有所偏颇,但我们可以通过一些蛛丝马迹,改变关键词,以得到更精确的结果。如果这样还不行,可以切换搜索引擎,如英文可用google英文来搜索,中文的话,百度非常好。

Popularity: 69% [?]

 tags Tags: , ,

comments4 Responses to “Windows XP下正确的“修改中/英标点切换快捷键”方法”

  1. mercy Says:

    刚开始用Ubuntu的菜鸟飘过~~~

  2. mercy Says:

    侧栏里的小姑娘跳舞的uniqlock计数器是做什么用的?没看懂。

    GOVO:我那个uniqlock就是一个clock,一个flash时钟,为了给blog添加一点趣味而已。

  3. 西岸 Says:

    嗨,govo,好久不见,最近我们几个在讨论合租服务器不知道你有没有兴趣参与。 我的qq: 85759499 gorewayne.com 的QQ: 1026754

  4. daiea123 Says:

    好佩服你呀,

respondLeave a Reply

:mrgreen: :| :twisted: :arrow: 8O :) :? 8) :evil: :D :idea: :oops: :P :roll: ;) :cry: :o :lol: :x :( :!: :?:

&| &