致AHKer
2018-10-03 本文已影响0人
阿波罗计划
全世界ahker联合起来,夺回属于ahk在程序世界的一切!
说笑归说笑,在coders里没有几个人不认识autohotkey的,入门倒也很简单
中文说明地址:https://wyagd001.github.io/zh-cn/docs/AutoHotkey.htm
路线:热键!^+#的表示,组合热键,按键列表,程序窗口。。
举例:#a表示win+a组合,!b表示alt+b组合,c表示ctrl+c,+d表示shift+d,还可以派生+e,#f,!g,^+!h等组合
看得差不多就可以开始了
我们直接说哪些可以帮助提高效率的思路,当然这里只是浅水区,终极用法可以到github或者qq群和各路大佬谈笑风生。
第一种当然是run 程序/路径/网址
,这类基本占了90%
第二种是按键映射,对于右撇子来讲,左手可以操作删除(backspace),还有回车换行(\r\n),可以使用反单引号和capslock映射到backspace和enter,另外可以增加一对热键控制其生效或失效。右手呢,控制复制粘贴(鼠标左侧的两个按键)
XButton1::^c
XButton2::^v
`::backspace
capslock UP::send,{enter} ;这里UP表示按下弹起后生效
!1::Suspend ;控制生效失效
第三种是字符串操作,在对于像经常使用BaiduPCS-go的朋友很有用配合Clipboard
使用,比如
!l::
Length := StrLen(Clipboard)
MsgBox,字符串长度为%Length%
return
/*
第一个对于像windows路径为反斜杠和部分编程需要正斜杠路径的矛盾,可以实现按下alt+/后替换剪切板的内容
*/
!/::
Clipboard := StrReplace(Clipboard, "\","/")
return
!space::
Clipboard := StrReplace(Clipboard, " ","\ ")
return
^!/::
Clipboard := StrReplace(Clipboard, "/","\")
return
!'::
clipboard="%clipboard%"
return
第四种配合程序窗体使用
#w:: ;获取窗体的类
WinGetClass, class, A
Clipboard=%class%
MsgBox %class%
return
f1::
IfWinActive, ahk_class CabinetWClass ;
/*CabinetWClass 表示资源管理器,这里在集成了QTTabBar的资源管理器里f1、f2可以用作previousTab和nextTab使用,同理f6/f7/f8分别表示剪切粘贴删除*/
send,^+{tab}
return
f2::
IfWinActive, ahk_class CabinetWClass ;Cmder ;ahk_class VirtualConsoleClass ;
send,^{tab}
return
f6::
IfWinActive, ahk_class CabinetWClass
send,^x
return
f7::
IfWinActive, ahk_class CabinetWClass
send,^v
return
f8::
IfWinActive, ahk_class CabinetWClass
send,^d
return
说明,对于fn键ahk并不能直接控制;
下面内容看心情添加
!^p:: ;拷贝剪切板到D:\tmp.txt,然后复制到USB手机/sdcard/A/tmp.txt
{
/*FileSelectFile, positionFileName, S16,, Create a new file:
if (positionFileName = "")
return
*/
positionFileName = D:\tmp.txt
content = %Clipboard%
outFile := FileOpen(positionFileName , "w" , "utf-8")
if !IsObject(outFile)
{
MsgBox , 不能打开文件: %positionFileName%
return
}
outFile.write(content)
outFile.Close()
Run, %ComSpec% /c adb push D:\tmp.txt /sdcard/A/
;命令行解释器cmd.exe 用那个宏来表示?
;%ComSpec% /k在执行完命令后保留命令提示窗口,而/c则在执行完命令之后关闭提示窗口
return
}