第一部分:前情提要
先是一些前情提要的废话,查看按键映射的教程可以直接跳到第二部分。
最近热衷于捡垃圾,今天回乡下家里,把大学时候买的组装电脑挖了出来,准备重新通电,看看能不能废物利用,升级一下继续发光发热。
主机升级不着急,先从清理配件开始。当时从一个国内模仿woot的网站—— 人人购 ,一个浙大学生的项目,多年前已经gg ——买的一块蓝标IBM的键盘,清灰以后插上电脑,还能正常用,但有一个非常影响日常使用的问题:没有win键。我已经习惯了一些常用功能的win组合快捷键,没有win键让我用电脑的时候非常不爽,所以开始找按键映射的方案。
网上能搜到很多设置按键映射的文章,但中文互联网的内容质量参差不齐,而且文章中提供的方案中,很多app早已经停止维护。在尝试了多个方案以后(中间我甚至阅读了一个小时的AutoHotKey的教程),最后选择了最直接的修改注册表来实现按键映射。
第二部分:设置按键映射
前面几个步骤快速略过,
1-启动注册表编辑器。
2-定位到「HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout」。
3-新建一个「二进制数值」,名称为「Scancode Map」。
4-输入按键映射的数值,保存。
5-重启电脑使配置生效。
数值规则:
第一行:00 00 00 00 00 00 00 00, 8组0,固定格式,指版本号和头部字节,照样输入即可。
第二行前4组数字:02 00 00 00,需要设置的按键映射数,如A映射为B即是一组为02,两组为03,依次往上加即可。这里实测敲01 00 00 00也能正常生效,不同教程里各自有不同解释(解释一 / 解释二),可自行查阅。
第二行后4组数字:5B E0 38 00。这里分前2组和后2组,各自对应一个按键编码。「5B E0」为目标映射按键左win键,「38 00」为源按键左Alt。如果有更多的按键映射,依次在后面输入编码即可。自动换行可以无视。
最后4组数字:00 00 00 00,4组0,固定格式,照样输入即可。
按键编码表:这里直接照搬其他文章中的编码表
以十六进制表示,分两部份,0X后面两个数是扫描码,最后两个数是ASCII码(可忽略)。如0x011b是ESC,扫描码是01。
扫描码 键
0X011B ESC
0X3B00 F1
0X3C00 F2
0X3D00 F3
0X3E00 F4
0X3F00 F5
0X4000 F6
0X4100 F7
0X4200 F8
0X4300 F9
0X4400 F10
主键盘区:
0X2960 ~
0X0231 1
0X0332 2
0X0433 3
0X0534 4
0X0635 5
0X0736 6
0X0837 7
0X0938 8
0X0A39 9
0X0B30 0
0X0C2D -
0X0D3D =
0X2B5C "
0X0E08 退格键
0X0F09 TAB
0X1071 Q
0X1177 W
0X1265 E
0X1372 R
0X1474 T
0X1579 Y
0X1675 U
0X1769 I
0X186F O
0X1970 P
0X1A5B [
0X1B5D ]
0X1E61 A
0X1F73 S
0X2064 D
0X2166 F
0X2267 G
0X2368 H
0X246A J
0X256B K
0X266C L
0X273B ;
0X2827 '
0X1C0D 回车
0X2C7A Z
0X2D78 X
0X2E63 C
0X2F76 V
0X3062 B
0X316E N
0X326D M
0X332C ,
0X342E .
0X352F /
0X3920 空格键
右边数字键盘:
0X5200 INSERT
0X4700 HOME
0X4900 PAGE UP
0X5300 DELETE
0X4F00 END
0X5100 PAGEDOWN
0X4800 上箭头
0X4B00 左箭头
0X5000 下箭头
0X4D00 右箭头
0X352F /
0X372A *
0X4A2D - (注意,这是数字键盘的)
0X4737 7
0X4838 8
0X4939 9
0X4B34 4
0X4C35 5
0X4D36 6
0X4E2B +
0X4F31 1
0X5032 2
0X5133 3
0X5230 0
0X532E DEL
左 Crtl 扫描码是 1D ,表示 1D 00 , 右 Ctrl 键扫描码是 E01D,表示 1D E0。
左 ALT 扫描码是 38 ,表示 38 00 ,右 ALT 键扫描码是 E0 38,表示 38 E0。
左 Shift 扫描码是 2A ,表示 2A 00, 右 Shift 键扫描码是 36 ,表示 36 00。
补充:
有推友提到微软官方有一款软件Windows Resource Kit Tools自带的remap能实现这个功能,原理也是修改注册表,但毕竟有GUI,方便用户操作。但我在网上搜寻一番后,发现这款软件应该已经停更多年,而且较难找到下载资源。不过依然写在文章最后,提供一个思路。