博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
AutoHotKey 快速入门
阅读量:4358 次
发布时间:2019-06-07

本文共 1717 字,大约阅读时间需要 5 分钟。

AutoHotKey 是一个免费的键盘宏程序,可以用于配置键盘快捷键、鼠标事件

以及摇杆事件,还可以在输入文本的时候对文本进行扩展(自动补全)

第一个脚本

新建文件test.ahk并输入以下内容:

^!n::  Run, notepadReturn

保存文件,双击执行,可以在右下角看到脚本执行的图标,

然后按下Ctrl+Alt+N就可以打开记事本程序。

AutoHotKey 快捷键命令大概可以分为三个部分:

  • ::左边的部分表示需要按下的快捷键,^表示Ctrl!表示Alt
  • ::右边部分表示需要执行的命令
  • 最后Return表示结束命令

另外除了快捷键(HotKey)配置, AutoHotKey 还可以配置 HotStrings,

相当于我们平时使用的 IDE 中的文本自动补全功能

在电脑右下角的脚本执行图标上右键,单击“编辑脚本”,

会弹出一个记事本程序来编辑当前运行的脚本,加入如下内容:

::hw::Hello World!

保存文件,关闭编辑器,在右下角脚本图标上右键,单击“重新加载脚本”,

然后来测试一下脚本功能,首先Ctrl+Alt+N打开记事本,
输入hw,按下EnterTab就会进行自动补全,用Hello World!替换hw

特殊符号

^表示Ctrl这种快捷键中的特殊符号,意义如下:

符号 意义
# Win(键盘上有Windows图标的键)
! Alt
^ Ctrl
+ Shift

我们除了可以像上面的一样定义全局快捷键之外,

另外还有一些用于Windows的特殊命令,可以用于定义特定窗口的快捷键,如:

  • #IfWinActive表示窗口是否处于激活状态,可以用于指定在特定窗口下可用的快捷键,

    如下脚本表示在Untitled - Notepad窗口中按下Win+P按键会弹出窗口
    提示“你按下了Win+P”

    #IfWinActive Untitled - Notepad#space::  MsgBox, 你按下了Win+PReturn#IfWinActive
  • #IfWinExist表示窗口是否存在

发送按键 - 一键当千

快捷键后的命令部分除了执行命令运行程序之外,还可以向电脑发送按键单击事件,

就相当于 AutoHotKey 帮你去按下按键,从而获取按下一个快捷键相当于一堆按键。

LCtrl::  Send, AutoHotKeyReturn

上述命令表示按下左边Ctrl按键时会发送按键,依次按下AutoHotKey

对于键盘上的一些特殊按键,如Ctrl等都有对应的表示,如:^表示Ctrl
!表示Alt等等,除了这种类似快捷键特殊符号的表示,还可以使用{...}的方式来
表示,如:{lAlt}表示左边的Alt键,{F1}-{F24}表示键盘上的F1F24键等。

; 按下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

参考链接:

转载于:https://www.cnblogs.com/baiyangcao/p/autohotkey_basic.html

你可能感兴趣的文章
HDU 1381 Crazy Search
查看>>
NYOJ 311 完全背包
查看>>
几本书
查看>>
PLSQL
查看>>
修改计算机名
查看>>
Android-Activity的启动模式
查看>>
禅道项目管理系统整合Selenium IDE的思路
查看>>
网页数据交互!有很多可能不完善希望能提出来
查看>>
自家用的java小总结(2.4):类的知识的查漏补缺(内部类)
查看>>
Linux重定向与管道
查看>>
string.indexOf()和$.inArray()查找
查看>>
lamp :在Linux 下搭建apache、Mysql、php
查看>>
【编程题目】圆形是否和正方形相交☆
查看>>
1.Struts2简介和Struts2开发环境搭建
查看>>
2019 CCPC-Wannafly Winter Camp Day4(Div2, onsite)
查看>>
SAP CRM 集类型(Set Type)与产品层次(Product Hierarchy)
查看>>
spring mvc
查看>>
poj 3071 Football(线段树+概率)
查看>>
Python爬虫入门教程 26-100 知乎文章图片爬取器之二
查看>>
面试题39 二叉树的深度
查看>>