分享一个纯鼠标操作复制粘贴的ahk脚本
纯业余编码,很简单,但是可以让你不必ctrlc,ctrlv:毕竟还是有按错几率,而且可能要低头看一下键盘。单用鼠标显然更快。
当然,想锻炼/就喜欢按键盘的人可以略过。
也许类似的脚本很早就有,只是没看到,那么就自己捏了一个。
说了是业余,不知道发哪里,那就发小破站吧(掩面)。
参考了知乎问题VimWei的回答:
https://www.zhihu.com/question/55428976 如何让热键的单击和双击执行不同任务?
功能:
双击鼠标右键:复制
单击鼠标中键:粘贴(小于0.3秒)
长按鼠标中键:剪切(大于0.3秒)
长按鼠标右键:删除(大于0.2秒)
ctrl+鼠标右键:全选
ctrl+1:暂停脚本
ctrl+2:退出脚本
基本不影响鼠标默认功能,单击右键还是显示“菜单”。双击右键复制后,设置了一个beep音提醒,不喜可以删掉soundbeep行。如果非喜欢选中文件后,长按右键,那。。。可以自行把时间设长点。
使用:
1新建一个txt文档,复制脚本内容粘贴到txt,保存关闭,txt后缀改为ahk。
2这是ahk v1的脚本,去ahk官网首页下载1.1.xx包,解压后,把新建的ahk文件拖到包内的AutoHotkeyxxx.exe上就可运行。或者,
3用compiler文件夹下的Ahk2Exe,把ahk文件转成exe文件,以后可以直接双击exe使用。
脚本内容:
#SingleInstance Force
;参考https://www.zhihu.com/question/55428976 如何让热键的单击和双击执行不同任务?
^Rbutton::
send ^a
return
mbutton::
KeyWait, MButton, T0.3 ; T后数字为多少秒内松开鼠标中键
If ErrorLevel = 1 ;如果超时
{
sendinput, ^{x} ;发送《剪切》
}
Else
{
sendinput, ^{v} ;发送《粘贴》
}
return
RButton::
if (RB_presses > 0) {
RB_presses += 1
return
}
RB_presses := 1 ;设置计数器,记录按键次数
SetTimer, LabelRB, -400 ;设置时钟,在 0.4秒内等待更多的按键
return
LabelRB:
if (RB_presses = 1) { ; 单击右键:≤0.x秒《右键功能》,>0.x秒《删除》
KeyWait, Rbutton, T0.2 ; T后数字为多少秒内松开鼠标r键
If ErrorLevel = 1 ;如果超时
{
sendinput, {del}
}
Else
{
sendinput,{Rbutton}
}
} else if (RB_presses >= 2) { ;双击右键,发送《复制》
Sendinput,^{c}
SoundBeep, 1800, 150
}RB_presses = 0 ;每次响应时钟后把计数器清0复位
return
^1::pause
^2::exitapp