AutoHotKey 快速入门
AutoHotKey 是一个免费的键盘宏程序,可以用于配置键盘快捷键、鼠标事件
以及摇杆事件,还可以在输入文本的时候对文本进行扩展(自动补全)
第一个脚本
新建文件test.ahk并输入以下内容:
^!n::
Run, notepad
Return
保存文件,双击执行,可以在右下角看到脚本执行的图标,
然后按下Ctrl+Alt+N就可以打开记事本程序。
AutoHotKey 快捷键命令大概可以分为三个部分:
::左边的部分表示需要按下的快捷键,^表示Ctrl,!表示Alt::右边部分表示需要执行的命令- 最后
Return表示结束命令
另外除了快捷键(HotKey)配置, AutoHotKey 还可以配置 HotStrings,
相当于我们平时使用的 IDE 中的文本自动补全功能
在电脑右下角的脚本执行图标上右键,单击“编辑脚本”,
会弹出一个记事本程序来编辑当前运行的脚本,加入如下内容:
::hw::Hello World!
保存文件,关闭编辑器,在右下角脚本图标上右键,单击“重新加载脚本”,
然后来测试一下脚本功能,首先Ctrl+Alt+N打开记事本,
输入hw,按下Enter或Tab就会进行自动补全,用Hello World!替换hw。
特殊符号
像^表示Ctrl这种快捷键中的特殊符号,意义如下:
| 符号 | 意义 |
|---|---|
| # | Win(键盘上有Windows图标的键) |
| ! | Alt |
| ^ | Ctrl |
| + | Shift |
我们除了可以像上面的一样定义全局快捷键之外,
另外还有一些用于Windows的特殊命令,可以用于定义特定窗口的快捷键,如:
#IfWinActive表示窗口是否处于激活状态,可以用于指定在特定窗口下可用的快捷键,
如下脚本表示在Untitled - Notepad窗口中按下Win+P按键会弹出窗口
提示“你按下了Win+P”#IfWinActive Untitled - Notepad
#space::
MsgBox, 你按下了Win+P
Return
#IfWinActive
#IfWinExist表示窗口是否存在
发送按键 - 一键当千
快捷键后的命令部分除了执行命令运行程序之外,还可以向电脑发送按键单击事件,
就相当于 AutoHotKey 帮你去按下按键,从而获取按下一个快捷键相当于一堆按键。
LCtrl::
Send, AutoHotKey
Return
上述命令表示按下左边Ctrl按键时会发送按键,依次按下AutoHotKey,
对于键盘上的一些特殊按键,如Ctrl等都有对应的表示,如:^表示Ctrl,
!表示Alt等等,除了这种类似快捷键特殊符号的表示,还可以使用{...}的方式来
表示,如:{lAlt}表示左边的Alt键,{F1}-{F24}表示键盘上的F1到F24键等。
; 按下Win+H就等于按下Ctrl+Alt+HOME键
#h::
Send, ^!{HOME}
Return
其实,除了^、!、+、#可以表示组合键之外,
其他的{...}形式的符号都只是按顺序敲击键盘罢了,
比如:^{HOME}表示按下Ctrl的同时按下HOME键,
而{Ctrl}{HOME}则表示按下Ctrl松开,然后按下HOME键。
若是想要实现组合键的功能,可以使用{Ctrl Down}和{Ctrl Up}这种组合,
表示按下和松开{Ctrl}键,在这两个之间的符号都会在按住Ctrl的情况下执行。
也就是说:^{HOME} = {Ctrl Down}{HOME}{Ctrl Up} != {Ctrl}{HOME}
注:支持的Send键列表见官方文档,
但是要注意的是除了官方文档提供的按键可以使用{...}形式,
其他的按键都不可以使用,如{a}就是一种错误的表达方式
另外,Send后的部分可以分多行以便于阅读,只要用括号括起来就可以:
^j::
Send,
(
Line 1
Line 2
A dobe
)
Return
AutoHotKey 快速入门的更多相关文章
- Web Api 入门实战 (快速入门+工具使用+不依赖IIS)
平台之大势何人能挡? 带着你的Net飞奔吧!:http://www.cnblogs.com/dunitian/p/4822808.html 屁话我也就不多说了,什么简介的也省了,直接简单概括+demo ...
- SignalR快速入门 ~ 仿QQ即时聊天,消息推送,单聊,群聊,多群公聊(基础=》提升)
SignalR快速入门 ~ 仿QQ即时聊天,消息推送,单聊,群聊,多群公聊(基础=>提升,5个Demo贯彻全篇,感兴趣的玩才是真的学) 官方demo:http://www.asp.net/si ...
- 前端开发小白必学技能—非关系数据库又像关系数据库的MongoDB快速入门命令(2)
今天给大家道个歉,没有及时更新MongoDB快速入门的下篇,最近有点小忙,在此向博友们致歉.下面我将简单地说一下mongdb的一些基本命令以及我们日常开发过程中的一些问题.mongodb可以为我们提供 ...
- 【第三篇】ASP.NET MVC快速入门之安全策略(MVC5+EF6)
目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...
- 【番外篇】ASP.NET MVC快速入门之免费jQuery控件库(MVC5+EF6)
目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...
- Mybatis框架 的快速入门
MyBatis 简介 什么是 MyBatis? MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架.MyBatis 消除 了几乎所有的 JDBC 代码和参数的手工设置以及结果 ...
- grunt快速入门
快速入门 Grunt和 Grunt 插件是通过 npm 安装并管理的,npm是 Node.js 的包管理器. Grunt 0.4.x 必须配合Node.js >= 0.8.0版本使用.:奇数版本 ...
- 【第一篇】ASP.NET MVC快速入门之数据库操作(MVC5+EF6)
目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...
- 【第四篇】ASP.NET MVC快速入门之完整示例(MVC5+EF6)
目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...
随机推荐
- STM32 USB设备描述符、配置描述符、端点描述符含义
查了一整天的资料,自己把不懂的全部试了一遍 一下是程序以及注释 /* USB设备描述符*/ const uint8_t CustomHID_DeviceDescriptor[CUSTOMHID_SIZ ...
- 009---linux进程管理
进程管理 top 查看运行状态:top 查看cpu核心数:top and 1 查看cpu占用率最大:top and P free 查看内存状态:free 以M为单位:free -m 以G为单位:fre ...
- Fedora 下面安装FTP服务
1. yum install vsftpd 2. systemctl disable vsftpd.service 3. systemctl stop vsftpd.service 4. system ...
- 【转】Odoo装饰器: one装饰
one装饰器的作用是对每一条记录都执行对应的方法,相当于traditional-style中的function,无返回值! 应用举例: 定义的columns now = fields.Datetime ...
- BZOJ1924_所驼门王的宝藏_KEY
题目传送门 这道题苟了我好久,因为链表的内存问题,之后再细讲. 首先这是一道Tarjan+DAG上DP的题目. 有三种门,对于每种门可以和其他门相连.即连边. 使用链表快速查询连边. 建完图后可以进行 ...
- 模拟登陆百度以及Selenium 的基本用法
模拟登陆百度,需要依赖于selenium 模块,调用浏览器,执行python命令 先来说一下这个selenium模块啦...... 本文参考内容来自 Selenium官网 SeleniumPython ...
- hdu2098分拆素数和(素数+暴力)
分拆素数和 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...
- 浅谈如何提高自动化测试的稳定性和可维护性 (pytest&allure)
装饰器与出错重试机制 谈到稳定性,不得不说的就是“出错重试”机制了,在自动化测试中,由于环境一般都是测试环境,经常会有各种各种的抽风情况影响测试结果,这样就为测试的稳定性带来了挑战,毕竟谁也不想自己的 ...
- 【system.file】使用说明
对象:system.file 说明:提供一系列针对文件操作的方法. 注意:参数中的filePath 均为相对网站根目录路径 目录: 方法 返回 说明 system.file.exists(filePa ...
- Java学习笔记-11.运行期间类型鉴定
1.Class对象的getClasses()方法获取的是该类中所有的公共的内部类,以及从父类,父接口继承来的内部类.getinterfaces()方法返回类继承的所有接口. import javax. ...