徐锦洪 发表于 2024-7-28 07:25:59

windows与Mac统一按键方案

【因由】

windows体系中,很多快捷键组合都会用到ctrl,包括常用的复制粘贴等,每天使用次数多了,对小拇指的负担会比较重,时间久了,小拇指开始有痛感,为了淘汰小拇指的负担,加上从前使用Mac的按键体验(Mac的cmd与windows的alt位置相同),就想要把Ctrl与Alt交换一下,使用大拇指操纵,回到使用Mac时的感觉(网上也有很多人发起使用大写锁定键CapsLk来替换部门Ctrl的按键组合,但是对小拇指还是有负担),网上搜了一下,windows改建主要有两种方式:

[*]单次修改,通过软件实现键盘映射,必要包管软件不停运行。
[*]永久修改,直接修改注册表按键映射,重启电脑后永久有效。
【初次尝试】

一开始为了省事,直接使用的PowerToys软件,PowerToys是微软官方提供的工具软件,内里集成了很多小功能,此中键盘管理器可以实现按键映射、按键组合映射,基本符合需求,就尝试修改了一下,将LCtrl与LAlt交换,交换后发现Alt+Tab的切换不能用了,又增长了组合映射,把LAlt+Tab和LCtrl+Tab交换,交换后体验了一下,还是不错的,只要包管PowerToys每次以管理员的方式开机启动,基本就能用
键盘管理器使用手册:PowerToys实用于 Windows 的 Keyboard Manager 实用工具 | Microsoft Learn
https://i-blog.csdnimg.cn/blog_migrate/13ea6c07c8d4748af01c93585e99f8de.png
【固定方案】

既然已经用PowerToys实现了我的需求,为什么还要做永久修改呢?
在实际使用过程中,发现PowerToys的键盘映射常常失效,尤其是某些软件新打开后,键盘映射就失效了,不得不锁屏,重进输密码再用,着实痛楚,就开始尝试使用永久修改的方式来解决这个痛点
注册表只能修改按键的映射,所以先修改注册表,将LCtrl与LAlt交换,这里用到了开源软件sharpkeys
https://i-blog.csdnimg.cn/blog_migrate/67ed98d68598379fa9b19796d338260a.png
修改完后,写入注册表,重启,LCtrl与LAlt就交换乐成了
下一步就是恢复LAlt+Tab的功能,这里用到了AutoHotkey, AutoHotkey的安装与使用这里不做过多介绍,下面直接贴上我的脚本(基于AutoHotkey1.0),将此脚本放到开机自启动列表,至此,小拇指不用再体会疼痛的感觉了
#UseHook
SendMode Input
#MaxThreads 255

#MaxThreadsPerHotkey 255
<!Tab::
Send {LCtrl down}{Tab}
Keywait LAlt
Send {LCtrl up}
return
#MaxThreadsPerHotkey

<^Tab::AltTab 至于为什么要先改注册表,而不是直接使用AutoHotkey,先将LCtrl与LAlt交换,再实现LAlt+Tab与LCtrl+Tab的交换?
我也尝试过,但是都不乐成,终极才选用这种方案
当然,AutoHotkey作为开源自动化工具,能实现的功能还是很多的,大家可以自行研究
【工欲善其事,必先利其器】 
感谢 
PowerToys实用于 Windows 的 Keyboard Manager 实用工具 | Microsoft Learn
https://github.com/randyrants/sharpkeys
AutoHotkey官网
autohotkey - 如何在 autohotkey 中重新映射 alt+tab? - IT工具网


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: windows与Mac统一按键方案