Caps Lock 与 Esc 按键互换
来源:互联网 发布:乐视网络电视怎么下载 编辑:程序博客网 时间:2024/05/19 16:48
Caps Lock键的位置,左手小指轻松可及。其功能只是切换大小写,纯大写毕竟用得少,偶尔大写只需Shift加字母,更快捷(不包含每次按Shift键都使用大拇指的那类人)。
便利的位置与鸡肋的功能,强烈的冲突下只有一个结果——换之而后快。
换哪个键并不需要太多的考虑,因为使用VIM、Emacs,Esc键用得多,这个键又地处北极偏远地区,交通极不方便,与Caps Lock互换,顺理成章。
解决方案
1、以下代码保存为 CapsLock2Esc.reg 文件;
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,03,00,00,00,3a,00,01,00,01,00,3a,00,00,00,00,00
2、双击该文件,弹出框,选“是”;
3、重启系统,完成。
重点解读
重点分析上面代码中的那一长串二进制,为方便分析,拆分为每8位一行,并加上行号,结果如下:
1. 00,00,00,00,
2. 00,00,00,00,
3. 03,00,00,00,
4. 3a,00,01,00,
5. 01,00,3a,00,
6. 00,00,00,00
头两行和最后一行,是固定的,都是8个0。
第3行,表示共更改了多少个按键,本例为3个,怎么算的?从第4行开始,到最末尾行(虽然严格来说末行不算),每行算1个,4、5、6行,刚好3个。
第4行,前后各4位,分别代表某个按键。本例为将3a00的按键映射为0100。3a00代表CapsLock键,0100代表Esc键。
第5行,同理,0100的按键映射为3a00,即Esc映射为CapsLock。
第6行,已经讲了,末行,固定8个0。如果需要增加更多的映射,可以在此行之上,不断加类似4、5行格式的。当然,最后的结果,还是要将各行合为一行的。
附录
部分按键映射对照表,需要查看全部对照,请点击相关资料4。
Escape01 00
Tab0F 00
Caps Lock3A 00
Left Alt38 00
Left Ctrl1D 00
Left Shift2A 00
Left Windows5B E0
Right Alt38 E0
Right Ctrl1D E0
Right Shift36 00
Right Windows5C E0
Backspace0E 00
Delete53 E0
Enter1C 00
Space39 00
Insert52 E0
HOME47 E0
End4F E0
Num Lock45 00
Page Down51 E0
Page Up49 E0
Scroll Lock46 00
还有一个特殊的值——00 00,表示啥也不干,如果要将某个按键禁用,只需映射为00 00。
特别说明,本人仅测试过CapsLock与Esc按键,其他均未测试,如有不正确的地方,还望告知。
- Caps Lock 与 Esc 按键互换
- linux转换caps lock与ESC
- 在Ubuntu下交换Esc和Caps Lock按键
- Ubuntu下交换Esc和Caps Lock按键
- Ubuntu互换ctrl和caps lock按键位置
- 【转】Ubuntu互换ctrl和caps lock按键位置
- caps lock 映射成 esc
- Win和Linux下Ctrl与Caps Lock的互换
- 将Esc键和Caps Lock键调换
- Win7:CapsLock与Esc互换
- 条款1:把Caps-Lock和Control键互换!
- [Ubuntu] 修改键位 — ctrl 和 caps lock 互换
- cAPS lOCK
- ubuntu交换Ctrl与Caps Lock键
- [转]将caps lock改成esc,解放你的vim!
- vim小技巧(将Caps Lock键映射成Esc)
- mac book更改caps lock键为esc键/ctrl键
- XFCE下ctrl与caps locks两个键互换
- Ry’s Objective-C Tutorial
- 一次架构师面试题,你会怎么回答
- Open Source Objective-C Code With Github and CocoaPods
- 一个图片验证码的实现
- ArcGlode常用代码
- Caps Lock 与 Esc 按键互换
- 我开源了一个App Store线上收费软件的源码,与大家一起学习提高
- Java的两种异常的处理
- wait queue in linux kernel
- BUREK
- 在对话框显示图标
- android Bitmap 转化成字节数组与流
- poj 3259 Wormholes spfa算法
- IExternalCommand和IExternalApplication的简单用法