当前位置: 首页 > news >正文

【效率封神·续】快捷管家:把 AHK 菜单做成可扩展的「私人指挥部」

上一篇:【效率封神】AutoHotkey (AHK) 全方位指南:从 10 分钟入门到打造「私人指挥部」

上一篇把 AHK 热键、Window Spy、多级菜单和#HotIf讲清楚了。这篇介绍我基于 AHK v2 做的快捷管家:按下Alt + Z弹出分类菜单,用来打开文件夹、程序和文件。日常增删改走菜单,不必先改脚本。


0. 为什么还要再做一个工具?

上一篇的示例菜单是「写死」的:每加一个路径,就要改脚本、重启。用了一段时间会遇到三个问题:

痛点写死菜单时的情况快捷管家的做法
资源越来越多分类和热键都记不住一个入口,按分类排成最多 4 列
路径经常变每次改.ahk菜单里新增 / 编辑,写入Data\Items.ini
想给别人用配置和个人目录绑在一起种子配置用系统变量,运行数据与脚本分离

目标不是再做一个 Launchy,而是:热键只负责呼出,菜单负责分类,INI 负责持久化,脚本负责扩展。


1. 这是什么

快捷管家是 Windows 上的个人资源启动器,基于 AutoHotkey v2。

它做三件事:

  1. 用系统原生菜单打开文件夹、程序、文件
  2. 在菜单里完成新增、编辑、删除、收藏
  3. 把「最近使用」和资源列表存到Data\,脚本本身尽量保持稳定

不依赖自定义大窗口,后台占用很小,适合当开机自启的「指挥部」。

Alt + Z / Alt + Shift + Z

快速菜单

托盘「快速菜单」

管理

收藏

最近

Script

分类标题 + 资源名,最多 4 列

单击资源名:打开

新增 / 编辑 / 删除 / 收藏

资源管理器 / 复制路径


2. 功能一览

2.1 快速菜单

入口作用
Alt + ZAlt + Shift + Z打开快速菜单
托盘图标「快速菜单」同上;也可进「管理」
双击托盘默认打开快速菜单

菜单顶部固定四项:管理收藏最近Script。下面是按分类排列的资源,每个分类先显示一行粗体分类名:,其下是资源名。

标记含义
*已加入收藏
[缺失]当前路径不存在

点资源名即打开。分类标题不可点,编辑和删除请走管理

2.2 打开规则

类型行为
文件夹用资源管理器打开该目录
程序运行该路径(应指向.exe/.bat等)
文件用系统默认应用打开

补充:

  • 路径不存在会弹窗,不会写入「最近」
  • 同一路径可以对应多条资源(例如「工作文档」和「文档备份」)
  • 若类型选了「程序」但路径仍是目录,打开会进文件夹;要启动软件,把路径改成实际.exe

2.3 管理、收藏、最近

你想做的事操作
打开点分类下的资源名
在资源管理器中显示管理→ 资源管理器
复制路径管理→ 复制路径
新增管理→ 新增资源
改名称 / 分类 / 路径 / 类型管理→ 编辑资源
删除管理→ 删除资源(会确认)
收藏 / 取消收藏新增或编辑时勾选,或管理→ 加入或取消收藏

打开成功后记入「最近」,最多 10 条,存的是资源id(改路径或重复路径时不会串项)。清空:Script → 清空 Recent

2.4 Script 与全局热键

Alt + ZScript

作用
编辑主程序打开快捷管家.ahk
编辑配置文件打开HubConfig.ahk
清空 Recent清空最近列表
从 HubConfig 重新导入用种子列表覆盖Items.ini
重启脚本重新加载主程序

脚本在后台时,另有几组与菜单独立的热键:

快捷键功能
Ctrl + Alt + 2发送Win + 2(切换任务栏第 2 个钉选应用)
Ctrl + Alt + T管理员任务管理器
Ctrl + Alt + S管理员 CMD

按名称打开资源、随脚本拉起其它程序,见第 6 节。


3. 文件结构与数据流

快捷管家/ ├─ 快捷管家.ahk 主程序:菜单、热键、打开、增删改 ├─ HubConfig.ahk 种子列表,仅首次或「重新导入」时写入 Items.ini ├─ README.md 使用说明 └─ Data/ ├─ Items.ini 当前真正生效的资源列表 ├─ Items.ini.bak 上次成功保存的备份 ├─ Recent.ini 最近打开过的资源 id ├─ Recent.ini.bak 最近列表的备份(若有) └─ Ui.ini 旧版窗口尺寸残留,当前菜单版不读取

要点:Items.ini之后,只改HubConfig.ahk不会出现在菜单里,除非执行Script → 从 HubConfig 重新导入。重新导入会覆盖后来在菜单里做的修改。

Items.ini每条字段:IdNameCategoryPathFavoriteKindfolder/app/file)。保存时先写临时文件再替换,避免写到一半把列表写空。

重置

日常

Alt+Z 管理

Items.ini

点资源名打开

Recent.ini

改 HubConfig.ahk

Script 重新导入


4. 安装与第一次运行

4.1 环境

  1. 安装 AutoHotkey v2(不要用 v1)
  2. 把整个文件夹放到一个固定位置,例如D:\Tools\快捷管家
  3. 双击快捷管家.ahk

不要频繁移动目录:运行数据都在Data\下,路径是相对脚本目录的。

4.2 首次导入

如果Data\Items.ini还不存在,脚本会读取HubConfig.ahk里的ALL_ITEMS,生成初始列表。仓库自带的种子是通用示例,换电脑也能跑:

ALL_ITEMS := [ ["文档", "常用目录", A_MyDocuments, true], ["桌面", "常用目录", A_Desktop, true], ["本工具目录", "常用目录", A_ScriptDir, false], ["记事本", "常用程序", A_WinDir "\notepad.exe", true], ["计算器", "常用程序", A_WinDir "\System32\calc.exe", false] ]

4.3 开机自启

与上一篇相同:Win + R→ 输入shell:startup→ 把快捷管家.ahk的快捷方式放进去。

脚本含中文时,保存编码用UTF-8 with BOM

建议以普通权限运行。若要操作受保护的系统窗口,再考虑提权;不必默认管理员。


5. 日常怎么用

推荐顺序:先用菜单加自己的资源,不要一上来改HubConfig.ahk

5.1 新增一条资源

  1. Alt + Z管理新增资源
  2. 填写名称、分类、路径、类型;高频条目勾选「加入收藏」
  3. 路径用「文件夹…」「文件…」选择,类型会自动判断,也可手改
  4. 分类可从已有列表选,也可输入新分类名(会变成新的一列)

5.2 收藏与最近

  • 收藏:菜单顶部单独一项,适合每天都要进的目录或软件
  • 最近:打开成功才记;最多 10 条,按 id 去重

5.3 托盘

托盘提示名为「快捷管家」。右键可打开快速菜单、管理、重启、退出。脚本挂了或改完主程序后,用「重启脚本」,或退出后再双击启动。


6. 如何扩展

扩展分三层:改种子列表、加热键、改主程序行为。

6.1 批量改种子列表

适合「换电脑后一次性灌入常用目录」,或自己维护一份可版本管理的清单。

HubConfig.ahk每一项格式:

["名称", "分类", "路径", 是否收藏],
字段含义
名称菜单上显示的文字
分类列分组;新分类名会变成新的一列
路径文件夹 / 程序 / 文件
是否收藏true/false

示例:把项目目录和工作软件加进去。

ALL_ITEMS := [ ["文档", "常用目录", A_MyDocuments, true], ["工作仓库", "开发", "D:\Work\repo", true], ["对比工具", "常用程序", "C:\Program Files\Scooter Software\Beyond Compare 4\BCompare.exe", false] ]

改完后必须:Script → 从 HubConfig 重新导入。这一步会丢弃Items.ini里后来在菜单中做的修改,执行前看清提示。

日常零星增删,继续用管理即可,不必改种子文件。

6.2 按名称绑定热键

主程序提供OpenHubItemByName("名称")。名称必须与菜单条目一致;改路径后热键仍然有效,因为查找走的是名称,打开走的是该条当前路径。

快捷管家.ahk末尾取消注释或自行添加:

^!d::OpenHubItemByName("文档") ; Ctrl + Alt + D 打开「文档」

改完后Script → 重启脚本

这比写死Run "D:\xxx"更稳:搬家或改路径时,只改菜单里的那一条。

6.3 启动时拉起其它程序

StartBackgroundServices()在脚本启动时执行一次。把「希望常驻、但不必每次手动开」的程序放这里:

StartBackgroundServices() { AppPath := "C:\Path\To\SomeApp.exe" if !ProcessExist("SomeApp.exe") && FileExist(AppPath) Run(AppPath, , "Hide") }

6.4 改菜单列数或热键入口

呼出菜单的热键在文件前部:

!z::ShowQuickMenu() !+z::ShowQuickMenu()

分类列数由AddColumnGroups(..., 4)的最后一个数字控制。资源特别多时,可改成56;改完重启脚本。

6.5 给「打开」加自己的规则

OpenResource()当前逻辑:

folder

app / file

点资源名

路径是否存在

弹窗,不写入最近

类型

explorer 打开目录

Run 该路径

写入 Recent id

若要「打开目录前先切到已有窗口」,可在OpenResource()里对kind = "folder"WinExist/WinActivate判断,思路与上一篇「有就切过去,没有才打开」相同。

6.6 扩展时建议动哪里

需求改哪里是否要重启
加一条日常资源管理 → 新增资源
批量重置整份列表HubConfig.ahk+ 重新导入导入即可
加全局热键 / 开机拉起程序快捷管家.ahk末尾
改菜单列数、呼出键快捷管家.ahk
改打开方式OpenResource()

不要手改Data\Items.iniData\Recent.ini。菜单和 Script 已经覆盖增删改、备份和清空。


7. 备份、搬家与排错

  • 正常保存会更新Data\Items.ini.bak
  • 搬家:整份文件夹连同Data\一起复制;资源路径按本机磁盘,换电脑后用管理 → 编辑改路径
  • Items.ini损坏:先试.bak;或从 HubConfig 重新导入(会丢掉之后在菜单里的修改)
  • 菜单出现[缺失]:路径变了或盘符变了,走管理 → 编辑即可
  • 改了HubConfig.ahk菜单没变:还没「重新导入」,或导入时点了否

8. 和上一篇的对应关系

上一篇讲的是 AHK 能力;这篇是把这些能力收成一个可维护的小工具。

上一篇概念在快捷管家里的落点
Alt + Z多级菜单快速菜单 + 分类列
Run打开路径OpenResource()按类型打开
「有窗口则激活」可自行扩到OpenResource()
热字符串 / 热键全局热键 +OpenHubItemByName
配置与脚本混在一起HubConfig.ahk种子 +Items.ini运行时数据

上一篇那句仍然适用:如果一个动作每天要做 10 次以上,就应该把它自动化。快捷管家只是把「自动化」从散落的热键,收成一张能分类、能收藏、能扩展的菜单。


9. 结语

快捷管家的用法可以压成三句话:

  1. Alt + Z打开,点名称即打开资源
  2. 日常增删改走管理,不要手改 INI
  3. 要扩展:种子列表用HubConfig.ahk,热键和启动逻辑写在主程序末尾

把文件夹放到固定位置,加进开机启动,再把自己真正每天都进的目录填进去,它就会从「示例菜单」变成你的指挥部。

点击下载


#AutoHotkey #Windows效率 #自动化脚本 #程序员工具 #生产力提升 #快捷管家

http://www.cnnetsun.cn/news/4293236.html

相关文章:

  • MySQL 中的事务隔离级别有哪些?默认的事务隔离级别是什么?为什么选择这个级别?
  • 从失忆到第二大脑:AI Agent 记忆系统的三次范式跃迁
  • 蓝桥杯嵌入式国赛ADC按键设计:从电路原理到软件滤波实战
  • HDMI数据的接收发送实验(二十五)
  • 林伽一 · AI科技日报 | 2026年08月28日
  • C++函数模板:从重复代码到泛型编程的核心利器
  • 常州市本地维修壁挂炉师傅|上门维修壁挂炉电话|故障码不点火维修|本地口碑维修推荐
  • 模拟退火算法:从冶金原理到数学建模实战优化
  • 发布日之后如何持续被发现:从社区机制到创始人长期运营策略
  • 受控英语:让大模型与多Agent协作更稳定可解析
  • Partmode开源CAD:浏览器里的SolidWorks替代方案体验与部署评估
  • AI走进实验室:从数据分析到自动化实验的科研新范式
  • MATLAB优化工具箱实战:从标准规划问题到求解器深度解析
  • 颠簸路段百遍循环测试方案:车辆耐久与感知鲁棒性验证
  • 社区论坛整站源码部署与二次开发实战指南
  • 字节成立AI数据部门,数据工程成模型能力新天花板
  • MATLAB线性规划建模与求解实战:从数学建模到工程优化
  • 基于MATLAB的航天器软着陆轨道优化与闭环控制仿真实践
  • Java SpringBoot选课系统:高并发与事务一致性实战指南
  • Python游戏开发入门:用Pygame实现《外星人入侵》项目
  • 仿网易云音乐静态页:纯CSS实现高分前端教学范本
  • T-DFNN:基于增量学习的入侵检测系统如何克服灾难性遗忘
  • 图论最短路径算法实战:从Dijkstra到Floyd,数学建模竞赛核心应用解析
  • YOLOv11工业视觉实战:从数据标注到模型部署的针织品瑕疵检测全流程
  • 华为MetaERP # Oracle EBS R12 AP:业务对象 (BO) 与逻辑实体 (LE)【聚合关系】深度解析## 前置概念界定(UML 标准 + EBS 落地口径,区分组合 / 聚合
  • MATLAB三维海浪仿真:从谱分析到FFT加速的流体动力学建模实践
  • 无索引AI编码助手:用grep实现轻量本地代码搜索
  • 项目式学习GitHub仓库:用实战项目提升编程能力
  • Matlab插值算法全解析:从一维到高维,原理、选型与实战避坑指南
  • iFixAi:AI Agent 结果自动化审计与质量验证工具