Autohotkey入门教程(1)HelloWorld与热键

一,前言

网上Autohotkey完整教程实在太少,许多新手不得不对着帮助文档学习。但是帮助文档只是很多命令的一种归类,跳跃性较大,初学者还是需要循序渐进地学习。为此,准备自己写部教程,抛砖引玉,希望能帮助各位编程爱好者。
关于软件安装,编辑器选择,代码运行等基本操作这里略去,直接进入编程正题。

二,你好世界

代码如下

Msgbox, HelloWorld

运行结果如下
Autohotkey入门教程(1)HelloWorld与热键_第1张图片
这里MsgBox命令的作用是在小窗口中显示指定文本。

三,快捷键和热字符串

正如Autohotkey的字面意思,它是一个很强大的自动化热键软件,即用某些按键或者字符串触发另外一些指令。

1,热键(快捷键)

^j::
   Send, My First Script
Return

^指Ctrl键;^j指按下Ctrl+j键;::用来分割热键触发的功能;这里第二行Send指令即为Ctrl+j触发的功能;Send命令用来发送按键序列,这里发送了一行文本“My First Script”;Return表示热键代码块结束,如果代码只有一行则可以省略。
在空白记事本上按下Ctrl+j,结果如下图
在这里插入图片描述
与^表示Ctrl类似,键盘上很多特殊键都用特殊符号表示,常用热键修饰符如下表所示,具体可查帮助文档,但是需要注意,这些按键必须组合其他键(不用&组合的情况)才能用其特殊符号表示。如下例,热键并不是Ctrl而是^。

^::
   Send, My First Script
Return
符号 说明
# Widows键
! Alt键
^ Ctrl键
+ Shift键
< 成对按键中左边的那个,如
> 成对按键中左边的那个,如>!为键盘右边的Alt键

当单独使用某个特殊按键时,特殊修饰符如下表

符号 说明
LWin 左边Widows键
RWin 右边Windows键
Control(或Ctrl) Ctrl键
LControl(或LCtrl) 左边Ctrl键
RControl(或RCtrl) 右边Ctrl键
Alt Alt键
LAlt 左边Alt键
RAlt 右边Alt键
Shift Shift键
RShift 右边Shift键
LShift 左边Shift键
Space 空格键
Tab Tab键
Enter(或Return) 回车键
Escape(或Esc) Esc键
Backspace(或BS) 退格键
F1 功能键,其它功能键类似
Numpad0 小键盘0,其它小键盘数字类似

组合热键可以通过&连接两个按键定义,如下例子,同时按下小键盘0和1触发功能。

Numpad0 & Numpad1::
	MsgBox You pressed Numpad1 while holding down Numpad0.
Return

2,热字符串
即用一串字符实现其他功能,范例如下

::ftw::Free the whales

热字符串需要用两个::将字符串ftw夹在中间。当你在键盘上输入ftw,再按下终止符号后,ftw将转换成Free the whales。终止符可以是回车、空格、Tab等。
如果想不输入终止符直接触发按键效果,可以采用如下语法

:*:ftw::Free the whales

3,Send命令
这里简单介绍Send命令。Send命令主要用来发送按键到特定程序。
和热键类似,Send指令也有一些特殊按键,但是注意不要混淆,大部分特殊按键和热键类似,仅仅需要用大括号包住。部分如下

符号 说明
# Widows键
! Alt键
^ Ctrl键
+ Shift键

如Send !a为发送Alt+a,Send !+a为发送Alt+Shift+a。如果需要发送!需要用大括号括住,如Send {!}a为发送!a。注意,特殊按键除了上表也可以采用大括号形式,如{Alt}、{Shift}、{Ctrl}等。
想要表示按住或松开某个按键, 可以将这个键用花括号围起来, 同时加上单词UP或DOWN。

Send, ^s                     ; 都表示发送 CTRL+s 键击
Send, {ctrl down}s{ctrl up}  ; 都表示发送 CTRL+s 键击
Send, {ctrl down}c{ctrl up}
Send, {b down}{b up}
Send, {Tab down}{Tab up}
Send, {Up down}  ; 按下向上键
Sleep, 1000      ; 保持1秒
Send, {Up up}    ; 然后松开向上键

AltTab和ShiftAltTab是两个特殊的命令, 它们仅在与热键在同一行时才能被识别。

LAlt & j::AltTab
LAlt & k::ShiftAltTab

4,Run命令
该命令用执行程序或者打开网站。如下例

Run, https://autohotkey.com
Run, C:\Some_Program\Program.exe

某些程序并不需要完整路径, 如 Windows 标准程序

Run, notepad.exe
Run, msPaint.exe

5,注释
最后简单提一下Autohotkey的注释功能。注释有两种方式
(1)使用分号来注释脚本

Run Notepad  ;这是和命令在同一行的注释

(2)使用/*和*/符号注释整块代码

/*
MsgBox, 这行被注释掉了
MsgBox, 这行也被注释掉了 
*/

6,几个例子

::/mail::[email protected]

输入/mail并按下回车会自动转换成“[email protected]

::/gs::
clipboard = 煎蛋娱乐有限公司 ; clipboard指剪切板,将汉字赋给剪切板
Send ^v
return

输入/gs并按下回车会自动转换成“煎蛋娱乐有限公司”

::/dd::
d = %A_YYYY%-%A_MM%-%A_DD% ;获得系统时间比如今天的时间:2018-12-21
clipboard = %d%
Send ^v
return

输入/dd并按下回车会自动转换成今天的日期,如“2018-12-21”

你可能感兴趣的:(Autohotkey)