目录
Windows10 键盘映射
网上键盘映射的文章很多,有些文字表达存在歧义,有些键位表(键值表)居然错误,折腾几次才实践出要义。写此笔记希望他人可以避坑,快速完成键盘映射。为避免歧义下文中尽量不使用映射,对应一说。(到底左映射右,还是右映射左分不清楚)
介绍
变更键盘映射需要在注册表中添加值,重启后才生效!
假设要把Caps Lock键当做Esc键来使,我们约定Caps Lock键是敲击键,Esc键是目标键。
敲击键被按下后,实际作用的是目标键,这两个按键之间的关系是一对。两个按键的在注册表中的对应关系如下:
目标键 <- 敲击键
每个按键对应一个键值,如Caps Lock键的键值是‘3A 00’,Esc键的键值是'01 00'。编辑注册表值时的顺序是
目标键 | 敲击键 |
Esc | Caps Lock |
01 00 | 3A 00 |
方法一
添加值的位置是:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout
右键点Keyboard Layout这个文件夹,选择新建二进制值。
并且给建好的值取名为Scancode Map,编辑此值时需要穿鞋,戴帽。
"Scancode Map"=hex:
00,00,00,00, //固定格式 '帽子'
00,00,00,00, //固定格式 '帽子'
02,00,00,00, //02表示后面还有2行(更改2个按键对应关系的1行 + 最后一行全0固定格式)
01,00,3A,00, //目标键 <- 敲击键 Esc <- Caps Lock
00,00,00,00 //固定格式 '鞋子'
在注册表中显示为
点击确定,修改完成。重启后敲击Caps Lock按键,生效的是Esc。
参考 https://blog.csdn.net/lhdalhd1996/article/details/90741092
方法二
打开记事本中,在记事本中写入
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,02,00,00,00,01,00,3a,00,00,00,00,00
然后保存为后缀是.reg的文件。双击文件,确定,重启后生效。
参考 https://blog.csdn.net/Ace_Shiyuan/article/details/81283065
Linux 键盘映射
linux 可以使用‘xmodmap’命令更改键盘映射。后期再详细描述这部分内容。
临时更改可以在命令行里输入,重启后恢复默认。
$ xmodmap xx xx
在某用户下更改,可以在用户家目录下的.bashrc或.bash_profile文件内添加。重启后登录该用户依然有效。
xmodmap xx xx
全局更改,修改/etc/profile
其他
常用键盘映射关系
以下键值都在Windows10系统中实测过,可放心使用。
Caps Lock -> Esc //vim中常用。 Scancode在正文中。
Caps Lock <-> Esc //两键互换。注意指定更改的行数是3! 2行键值对应 + 1行固定格式
"Scancode Map"=hex:00,00,00,00,00,00,00,00,03,00,00,00,3a,00,01,00,01,00,3a,00,00,00,00,00
Esc //Esc键默认,不改变。
Caps Lock -> Esc //Caps Lock改为Esc键,键盘中存在2个Esc。//变更第一行
Right Alt -> Caps Lock //右Alt不常用,可改为大写键。//变更第二行
"Scancode Map"=hex:00,00,00,00,00,00,00,00,03,00,00,00,01,00,3a,00,3a,00,38,e0,00,00,00,00
掌握方法后,可按自己想法更改键盘映射,祝大家玩的开心!
注意事项
网上键位表众多,请大家注意甄别,避免掉坑!
如有其他的键盘映射的实用方式,可以留言或私信。