说明
1. 参考作者李辉在博客上的文章:AutoHotkey——自动化你的生活
一、AutoHotkey简介
AutoHotkey是一款免费的、Windows平台下开放源代码的热键脚本语言。从名字可以看出来,它可以用来设置热键。但是因为它是一门脚本语言,所以就不止设置快捷键那么简单了。帮助文档这样介绍它的功能:
- 通过发送键盘键击和鼠标点击自动化几乎所有的操作。您可以手工编写宏或者使用宏录制器。
- 为键盘,游戏杆和鼠标创建热键。几乎任何按键、按钮或组合键都可以设置为热键。
- 在您键入缩写时扩展缩写。例如,键入 “btw” 能自动地生成 “by the way”。
- 创建自定义的数据输入表格、用户界面和菜单栏。详见图形用户界面。
- 重新映射您键盘、游戏杆和鼠标上的按键和按钮。
- 通过WinLIRC客户端脚本对手执遥控器的信号作出反应。
- 运行现有的AutoIt v2脚本,并用新功能增强它们。
- 将任何的脚本转换为EXE文件,使其在没有安装AutoHotkey的计算机上也能运行。
二、最简流程示例
到www.autohotkey.com下载或点击这里下载(AutoHotkey1.1),然后安装。
使用编辑器或记事本新建一个脚本文件,格式为
.ahk
,编码格式为UTF-8
。编辑脚本,在脚本中写入下面这行:
1
#h::Run www.greyli.com
保存后双击运行。
这时按下Windows键和h键就会打开我的博客。
在上面这个命令中
符号
#
表示Windows键
#
后紧跟着h
表示组合键符号
::
用来分隔热键和命令(左边是热键,右边是命令)Run
命令用来打开一个文件或网页,中间空一个空格。
三、基本术语
脚本/宏(Script):你要编辑的一个格式后缀为
.ahk
的纯文本文件(编码格式为UTF-8
)。你把代码写进这个脚本里,双击执行后,你的热键就生效了。热键(hotkey):用来触发操作的按键或组合键,也就是快捷键。
命令:你为某个热键指定的一个动作(action),比如打开程序,打开网页等。
热字串(hotstring):类似于热键,当你输入热字串并按下回车或空格后触发相应的命令。
宏录制器(AutoScriptWriter):可以录制回放你的操作的工具,非常适合新手入门学习。
多行热键:当通过热键触发多个命令时,这时的格式是命令从第二行开始,每个命令一行,最后以占据一行的return结束。
1
2
3
4#h::
RunWait Notepad
Msgbox Goodbye!
return参数:自定义的数值,传递给命令执行,比如sleep后面的时间数就是参数。参数与命令通过空格或逗号隔开,多个参数使用逗号隔开。
注释(comment):注释是用来对你的代码进行解释和说明的文字
单行的注释以
;
开头多行注释用
/*
和*/
括住。1
2
3
4;这是单行注释
/* 这里
是
多行注释 */
四、常用命令
- Run:用来打开一个程序、文档、网页或者快捷方式
- Send:发送键击或一段字符
- Msgbox:消息窗口
- Inputbox:用户输入窗口
- Sleep:脚本等待指定的时间,然后执行下面的命令。后面接时间参数(毫秒)
- Click:在指定的位置点击鼠标
五、常用符号
#
:Windows键^
:Control键!
:Alt键+
:Shift键&
:用来连接两个按键组成组合键(使用除了上面四个按键外)<
和>
:分别表示成对按键中左边和右边的的按键Tab
和Enter
等:没有特殊符号。使用Send命令时用大括号括起来以和字符区分开。
注:前四个为修饰键,可以和其他按键直接相连(比如写成#a),其他按键要做修饰键时需要用&连接(比如a&b)。
六、基础应用示例
(一)为常用软件、网站设置快捷键
建议用热字串来启动常用的程序,把快捷键留给常用的操作。为了防止打字时冲突可以在热字串前加特定的符号,比如斜线。使用热字串启动命令要使用多行热键格式。
按下
Windows
键和k
键打开Notepad++:1
#k::Run D:\Program Files (x86)\Notepad++\notepad++.exe
按下
Windows
键键和h
键,或输入hui
后按下回车或空格(推荐使用空格)可以打开我的博客:热字串在要触发的文本两边各有一对
::
1
2
3
4
5#h::Run www.greyli.com
;下面使用热字串运行同样的命令,这时要采用多行分隔
::hui::
Run www.greyli.com
return
按下
Alt
键和m
键打开一组网页和程序:1
2
3
4
5!m::
Run www.google.com
Run http://fm.douban.com
Run D:\Program Files (x86)\Notepad++\notepad++.exe
return
(二)用热键或热字串保存常用文字
按下
Alt
键和k
键发送我的签名:1
2
3!k::
Send Sincerely,{Enter}Richard Hui.
return写下
@g
键后按下空格或回车,自动转换为我的邮箱1
::@g::withlihui@gmail.com
按下
Alt
键和g
键后填入我的账户和密码并登录(先把光标点在第一个输入框里)。1
2
3!g::
Send withlihui@qq.com {Tab}mimashi123 {Enter}
return
七、Tips与建议
- 命令不区分大小写。
- 所有的符号均为英文符号。
- 一个脚本里可以写入多个热键。
- 发送的字符里包含的按键前要有一个空格。
- 不分配热键的命令将从上往下依次执行。
- 修改后的脚本要重新运行(双击执行脚本文件)才能生效。