让你的Capslock键变废为宝
Capslock 键的劣性
如果你是 Windows 系统用户,就会发现,很多时候我们是用不到 Capslock 键的。Capslock 键是切换大小写的锁定,而在平常工作中,只要摁住 Shift 键一样可完成该功能。并且 在键盘的布局上来看 ,Capslock 键 的地理位置 非常便捷,这不可是我们想要的。
下文将告诉你 如何把 作用微小的 Capslock键 变成你的得力助手。
修改前奏
本文使用的修改键的脚本语言 是使用的 AutoHotKey ,一门超级强大的脚本语言。
- 点击AutoHotKey官网下载链接下载AutoHotKey 安装包 并安装。
- 新建文本文件,文件名格式为
文件名.ahk, 并用编辑器打开,建议 使用下载 AutoHotKey 插件后的 VSCode。 - 新建完成后的 ahk 文件,你可以双击运行,或者 右键点击文件,然后单击
Compile Script转换成 可执行文件再执行。
修改进行曲
俗话说:“授人以鱼不如授人以渔”,所以,我先教你三个简单的例子,以便你能快速掌握 所需的 AHK 脚本知识。
模拟发送命令

模拟键盘事件

模拟光标行为

一些 AHK 小常识
其中还有一些必备的小知识

修改成果

源文件
我调试了很长时间的 Capslock 快捷配置,希望能对你有所帮助。
;管理员运行
if not A_IsAdmin
{
Run *RunAs "%A_ScriptFullPath%"
ExitApp
}
;无环境变量
#NoEnv
;高进程
Process Priority,,High
;一直关闭 Capslock
SetCapsLockState, AlwaysOff
; CapsLock -> Esc
CapsLock::
Send {Esc}
return
; CapsLock & alt -> Enter
CapsLock & alt::
Send {Enter}
return
; CapsLock & Space -> Shift
CapsLock & Space::
Send {Shift Down}
return
CapsLock & Space up::
Send {Shift up}
return
; 光标移动
CapsLock & j::
MouseMove, -15, 0, 0, R
return
CapsLock & k::
MouseMove, 0, 15, 0, R
return
CapsLock & i::
MouseMove, 0, -15, 0, R
return
CapsLock & l::
MouseMove, 15, 0, 0, R
return
; 左键单击
CapsLock & u::
SendEvent {Blind}{LButton down}
KeyWait Enter
SendEvent {Blind}{LButton up}
return
; 右键单击
CapsLock & o::
SendEvent {Blind}{RButton down}
KeyWait Enter
SendEvent {Blind}{RButton up}
return
; h 向上滚动
CapsLock & h::
SendEvent {Blind}{WheelUp}
return
; 分号 向下滚动
CapsLock & `;::
SendEvent {Blind}{WheelDown}
return
CapsLock & 3::
SendEvent {Blind}{WheelUp}
return
CapsLock & 4::
SendEvent {Blind}{WheelDown}
return
CapsLock & F5::
Reload
return
; 指针移动
CapsLock & e::
Send {Up}
return
CapsLock & d::
Send {Down}
return
CapsLock & s::
Send {Left}
return
CapsLock & f::
Send {right}
return
; 行首行尾
CapsLock & a::
Send {home}
return
CapsLock & g::
Send {end}
return
; 左右删除
CapsLock & w::
Send {BS}
return
CapsLock & r::
Send {Delete}
return
; 撤销重做
CapsLock & t::
Send ^{z}
return
结束语
深入Web全栈各项技术,坚持原创,文章更新虽不定,但只为质量而生。
请关注 我的个人网站:这个坏掉的番茄 ToMoToes,愿陪你一起在全栈的道路上努力前行!
让你的Capslock键变废为宝的更多相关文章
- 判断NumLock键和CapsLock键是否被锁定
实现效果: 知识运用: AIP函数GetKeyState //针对已处理过的按键 在最近一次输入信息时 判断指定虚拟键的状态 intkey:预测试的虚拟键键码 实现代码: [DllImport(&qu ...
- ubuntu修改capslock键,单独使用为esc,组合使用时为ctrl+
一.下面这部分可以将capslock与ctrl互换 将下面的代码放入-/.Xmodmap中, remove Lock = Caps_Lock remove Control = Control_L ke ...
- windows 设置CapsLock键开启大写后使用shift键取消大写
1.打开控制面板——>时钟.语言和区域——>更改键盘或其它输入法——>更改键盘——>高级键设置——>要关闭Caps Lock 2.ok
- vim:将<esc>映射为CapsLock键
无语,大写锁定键基本不用,却占据这么重要的位置,凭啥?换了,搜了半天,决定用它uncap(https://github.com/susam/uncap) 一个开放源代码的小工具,就位踢走大写键而生地, ...
- 如何判断CapsLock键是否按下
SHORT cap_state = ::GetKeyState(VK_CAPITAL); char str[10]; sprintf(str, "%d", ...
- 屏蔽按CapsLock键切换到大写时,编辑框自动弹出的提示(UnregisterClass(TOOLTIPS_CLASS)后,重新设置WndProc并注意返回值)
WNDPROC OldProc; LPCTSTR lpStr = TEXT("保持大写锁定打开可能会使您错误输入密码"); LRESULT CALLBACK WindowProc( ...
- 修改win10 capslock键成esc键 vim
桌面编辑一个文件CapsLock2Esc.reg Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentCont ...
- C++自定义修饰键,实现如<Capslock+J>等组合键的按键映射
前:所谓修饰键,就是Ctrl,Alt,Shift,Win这些按键. Update: 我使用AHK写了一个功能更丰富的脚本:https://github.com/h46incon/ModifierCus ...
- ubuntu下将CapsLock改为Ctrl键
需求:Ubuntu下用Vim时,ESC因为在左上角,还算是好按,但是Ctrl就太坑了,在左右两个下角,实在是太不方便了. 经过分析决定将:CapsLock键改为Ctrl,但仍然保留下面的原Ctrl键( ...
随机推荐
- redis设置开机启动
方式一 1.设置redis.conf中daemonize为yes,确保守护进程开启,也就是在后台可以运行.(设置为yes后,启动时好像没有redis的启动界面,不知道为什么) #vi编辑redis安装 ...
- 仔细讲解socket(转载https://www.zybuluo.com/phper/note/47110)
老实讲,到目前为止,我对socket一无所知,真的.我就现学现卖用过nodejs平台的socket.io搭建过一套高可用实时性的网页聊天系统,其他,就真的只是听过它. 今天就来仔仔细细的学一下,soc ...
- 【深度学习系列】用PaddlePaddle和Tensorflow实现GoogLeNet InceptionV2/V3/V4
上一篇文章我们引出了GoogLeNet InceptionV1的网络结构,这篇文章中我们会详细讲到Inception V2/V3/V4的发展历程以及它们的网络结构和亮点. GoogLeNet Ince ...
- 51、css初识
前端内容就分三部分html.css.javascript(js),对一个网页来说html相当于是一个裸体的人,css相当于给这个人穿上了衣服,javascript相当于给这个人赋予动作行为,今天我们要 ...
- rsync 指定端口拷贝
rsync -aP -e 'ssh -p 2288' ssh-audit.dat 172.18.18.31:/opt/freesvr/audit/sshgw-audit/sbin
- 通过C#来开启、关闭、重启Windows服务
通过C#开启服务需要这个C#程序有相应权限,比如服务的账户是Local System的就必须以管理员权限运行C#程序才能开启或关闭. 这里只写重启的方式(就是先关闭,后开启): // Security ...
- 用LinkedList集合演示栈和队列的操作
在数据结构中,栈和队列是两种重要的线性数据结构.它们的主要不同在于:栈中存储的元素,是先进后出:队列中存储的元素是先进先出.我们接下来通过LinkedList集合来演示栈和队列的操作. import ...
- PE格式第三讲扩展,VA,RVA,FA(RAW),模块地址的概念
PE格式第三讲扩展,VA,RVA,FA的概念 作者:IBinary出处:http://www.cnblogs.com/iBinary/版权所有,欢迎保留原文链接进行转载:) 一丶VA概念 VA (vi ...
- bzoj 1597: [Usaco2008 Mar]土地购买
Description 农 夫John准备扩大他的农场,他正在考虑N (1 <= N <= 50,000) 块长方形的土地. 每块土地的长宽满足(1 <= 宽 <= 1,000 ...
- HBase0.98使用ReplicationAdmin管理集群同步
公司datalink平台负责从各种数据源读取数据并同步到其他的同步或者异构数据源,最近增加的HBase的reader利用到了Hbase的Replication特性. 正常情况下,我们配置HBase的R ...