AutoHotKey 快速入门

摘要:
AutoHotKey是一个免费的键盘宏程序,可用于配置键盘快捷键、鼠标事件和摇杆事件。它还可以在输入文本时展开文本。第一个脚本创建一个新文件,测试Ahk并输入以下内容:^!AutoHotKey快捷键命令大致可分为三部分:::左侧部分表示要按下的快捷键,^表示Ctrl,!

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,按下EnterTab就会进行自动补全,用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}表示键盘上的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://autohotkey.com/docs/Tutorial.htm

免责声明:文章转载自《AutoHotKey 快速入门》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Json数据中的特殊字符处理This system is not registered with an entitlement server. You can use subscription-manager to register.下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

mac怎么快速回到桌面 隐藏所有窗口

当你同时按下Option+Command+h键,就能把所有已打开的程序窗口(不包括当前正在运行的应用程序窗口)最小化到Dock栏上。注意不是关闭哦,是最小化哦。如果需要把程序窗口恢复到屏幕上,直接点击相应的应用程序图标就可以了。如果你同时按下Option+Command键并点击桌面上空白的区域,就能把除Finder窗口以外的所有窗口隐藏起来,直接显示桌面。...

idea的一些快捷方式

关于IDEA工具的快捷键及一些简单的设置: 1.字体设置 file --->settings ---> 输入font  --->  设置字体样式以及字号大小。 2.快速生成main方法 psvm或者main 3.快速生成System.out.println() sout 4.注意:IDEA是自动保存的,不需要ctrl+s; 5.删除一行:...

(21)C#VS快捷键

1.移动光标 ctrl+ 右键:按单词移动 home:移动到一行得开头 ,end:移动到一行得末尾 ctrl+home:移动到文本得第一行初始位置,ctrl+end文本最末尾 pageDn:往文件下面翻一个屏幕, ctrl+向下:视角向下移动一行 2.文本选择 shift+右键:向右选中一个字母, ctrl+shift+右键:向右选中一个单词 ctrl+...

Mac & XCode 使用技巧总结

Mac OS 是基于UNIX 的操作系统。 一 基本技巧 1. 允许安装任何来源的APP 系统偏好设置 -> 安全性和隐私 -> 通用 选择”允许从以下位置下载的应用程序“ 中的 “任何来源”。 2.使用虚拟机安装Mac后,分辨率自适应屏幕 如果宿主的屏幕分辨率为"1920 * 1080" 。虚拟机设置--> 显示器-->选中指定监...

vscode折叠/展开所有区域代码快捷键

vscode代码编辑器折叠所有区域的代码快捷键 查看了使用说明,快捷键如下: 1. 折叠所有区域代码的快捷:ctrl + kctrl + 0; 先按下ctrl 和 K,再按下 ctrl 和 0 ; ( 注意这个是零,不是欧 ) 2. 展开所有折叠区域代码的快捷:ctrl +kctrl + J; 先按下ctrl 和 K,再按下 ctrl 和 J...

sublime 技巧与快捷键篇

技巧大全:https://www.zhihu.com/question/24896283 1、CTRL + ALT + 点击 直接展开所有的文件菜单 2、快速选中所有变量,而不是所有字母:将光标放在变量右侧,然后按下F3 3、点击跳转到代码定义 https://blog.csdn.net/shangdibaozi/article/details/7750...