AutoHotKey教程初步

2023-11-08 11:30
文章标签 教程 初步 autohotkey

本文主要是介绍AutoHotKey教程初步,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

    • 下载安装与体验
    • 快捷键
    • 在程序中的热键
    • 热字串和重映射
    • 实战 Python命令行

AHK系列:

  • 初步使用⭕按键映射⭕条件语句⭕循环语句⭕文件和路径⭕面向对象

下载安装与体验

下载AHK,安装后,右键->新建->AutoHotkey脚本,内容为

#space::Run tinycool.blog.csdn.net

其中,#表示Win键;#space表示同时按下Win和空格键。后面的Run表示按下这两个键后将要执行的操作,即打开这个网址。

保存后双击运行,系统托盘会出现AHK的图标,然后按下Win和空格键,就会自动打开这个网址了。如果想要取消这个组合键,可右键托盘图标,选择退出。

从这个简单的例子,可以看出AHK的热键逻辑,::前为热键组合,后面则是这个热键对应要执行的命令。

此外,在打开脚本后,右下角会出现对应这个脚本的图标,其右键菜单中有一些常用命令,后面会用到。

快捷键

快捷键映射更普遍的写法是写成多行,并以return表示命令结束

#space::
Run tinycool.blog.csdn.net
return

除了#表示Win键之外,其他几个常用的

#!^+<^>!
winAltCtrlShiftAlt Gr

其中,<, >为修饰符,用于区分成对出现的按键,例如<!表示左侧的Ctrl。按照这个逻辑理解,<^>!应该表示左Ctrl+右Alt,对于某些具有Alt Gr键的电脑而言,则专门指代这个按键。

如果多个快捷键指向相同的动作,则可以写为

^0::
^1::
MsgBox 您按下了Ctrl0或者Ctrl1
return

在程序中的热键

通过#IfWinActive可以在Windows中捕捉被激活的程序,从而可以定制某个程序的快捷键

#IfWinActive ahk_class Notepad
^a::MsgBox 你在记事本中按下下了 Ctrl-A 

打开记事本后,按下Ctrl+A,可以得到

在这里插入图片描述

如果不清楚程序的进程代号,可以右键AHK的右下脚图标,选择Window Spy,则可以在弹出窗口中找到正在运行的窗口。

热字串和重映射

ahk脚本在记事本中有着更为广泛的应用,例如可以对一些常用的词进行缩写

#IfWinActive ahk_class Notepad
::btw::by the way

上式表示,在记事本中,输入btw按下回车后,将会被自动替换为by the way。其基本逻辑为,将::所包围着的btw替换为第二组::后的字符串。

有了这个,普通的记事本也可以做到像VIM一样炫酷。

通过a::b的格式,可以将a键重新映射为b键。

至此,有关::的含义就比较明了了,处于按键后面的::,表示执行命令;处于两个按键中间的::,表示将第一个按键重映射为第二个;用两个::把按键夹住,表示一个热字串,那么按下这串按键后,会被替换为后面的值。

实战 Python命令行

Python在命令行中使用起来非常爽,但每次进入,都需要导入额外的包,虽然只需要敲几次键盘,但时间太长也会感到厌烦,可用AHK设置一个脚本,在打开命令行后,用简化的的代码来替代import语句。

经过右键右下角AHK图标,选择window spy,可以查看被激活的窗口内容。

#IfWinActive ahk_class CASCADIA_HOSTING_WINDOW_CLASS
::imn::import numpy as np`nimport matplotlib.pyplot as plt`n
#IfWinActive ahk_class Chrome_WidgetWin_1
::imn::import numpy as np`nimport matplotlib.pyplot as plt`n

这样,只要在命令行中输入imn,就会自动转换为

import numpy as np
import matplotlib.pyplot as plt

这篇关于AutoHotKey教程初步的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/369554

相关文章

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

Makefile简明使用教程

文章目录 规则makefile文件的基本语法:加在命令前的特殊符号:.PHONY伪目标: Makefilev1 直观写法v2 加上中间过程v3 伪目标v4 变量 make 选项-f-n-C Make 是一种流行的构建工具,常用于将源代码转换成可执行文件或者其他形式的输出文件(如库文件、文档等)。Make 可以自动化地执行编译、链接等一系列操作。 规则 makefile文件

SWAP作物生长模型安装教程、数据制备、敏感性分析、气候变化影响、R模型敏感性分析与贝叶斯优化、Fortran源代码分析、气候数据降尺度与变化影响分析

查看原文>>>全流程SWAP农业模型数据制备、敏感性分析及气候变化影响实践技术应用 SWAP模型是由荷兰瓦赫宁根大学开发的先进农作物模型,它综合考虑了土壤-水分-大气以及植被间的相互作用;是一种描述作物生长过程的一种机理性作物生长模型。它不但运用Richard方程,使其能够精确的模拟土壤中水分的运动,而且耦合了WOFOST作物模型使作物的生长描述更为科学。 本文让更多的科研人员和农业工作者

沁恒CH32在MounRiver Studio上环境配置以及使用详细教程

目录 1.  RISC-V简介 2.  CPU架构现状 3.  MounRiver Studio软件下载 4.  MounRiver Studio软件安装 5.  MounRiver Studio软件介绍 6.  创建工程 7.  编译代码 1.  RISC-V简介         RISC就是精简指令集计算机(Reduced Instruction SetCom

前端技术(七)——less 教程

一、less简介 1. less是什么? less是一种动态样式语言,属于css预处理器的范畴,它扩展了CSS语言,增加了变量、Mixin、函数等特性,使CSS 更易维护和扩展LESS 既可以在 客户端 上运行 ,也可以借助Node.js在服务端运行。 less的中文官网:https://lesscss.cn/ 2. less编译工具 koala 官网 http://koala-app.

【Shiro】Shiro 的学习教程(三)之 SpringBoot 集成 Shiro

目录 1、环境准备2、引入 Shiro3、实现认证、退出3.1、使用死数据实现3.2、引入数据库,添加注册功能后端代码前端代码 3.3、MD5、Salt 的认证流程 4.、实现授权4.1、基于角色授权4.2、基于资源授权 5、引入缓存5.1、EhCache 实现缓存5.2、集成 Redis 实现 Shiro 缓存 1、环境准备 新建一个 SpringBoot 工程,引入依赖:

Windows环境利用VS2022编译 libvpx 源码教程

libvpx libvpx 是一个开源的视频编码库,由 WebM 项目开发和维护,专门用于 VP8 和 VP9 视频编码格式的编解码处理。它支持高质量的视频压缩,广泛应用于视频会议、在线教育、视频直播服务等多种场景中。libvpx 的特点包括跨平台兼容性、硬件加速支持以及灵活的接口设计,使其可以轻松集成到各种应用程序中。 libvpx 的安装和配置过程相对简单,用户可以从官方网站下载源代码

PHP APC缓存函数使用教程

APC,全称是Alternative PHP Cache,官方翻译叫”可选PHP缓存”。它为我们提供了缓存和优化PHP的中间代码的框架。 APC的缓存分两部分:系统缓存和用户数据缓存。(Linux APC扩展安装) 系统缓存 它是指APC把PHP文件源码的编译结果缓存起来,然后在每次调用时先对比时间标记。如果未过期,则使用缓存的中间代码运行。默认缓存 3600s(一小时)。但是这样仍会浪费大量C

Qt多语种开发教程

Qt作为跨平台的开发工具,早已应用到各行各业的软件开发中。 今天讲讲,Qt开发的正序怎么做多语言开发。就是说,你设置中文,就中文显示;设置英语就英文显示,设置繁体就繁体显示,设置发育就显示法语等。 开发环境(其实多语种这块根环境没太大关系):win10,Qt.5.12.10 一.先用QtCreator创建一个简单的桌面程序 1.工程就随便命名“LanguageTest”,其他默认。 2.在设计师

初步学习Android的感想

之前在学习java语言的时候就经常听说过Android这门语言,那时候感觉Android有些神秘感,再加上Android是用来开发移动设备的一门语言,所以一直对Android抱有一种兴奋的心情。 在我开始接触 Android之后,感觉超好玩,因为可以在自己的手机设备上开发一些我喜欢的小应用,再想想之前说学习Android应该会很难,但是如果你真的接触了,而且有JAVA的功底,我想学习Androi