应安装 SublimeAutoHotkey(作者 evilC)插件,配置对应 AHK v1/v2 的硬编码 Build System 路径,启用 auto_complete,等待索引完成,并保存脚本为 UTF-8 编码。

Sublime Text 本身不支持 AutoHotkey(AHK),装完插件后仍无法高亮、Ctrl+B 报错、补全不触发——根本原因不是操作遗漏,而是插件选错或路径/配置没对齐当前 AHK 版本(v1 或 v2)和 Sublime 版本(ST4)。下面直奔关键点。
怎么选对 AutoHotkey 插件(避免装错)
别搜“AutoHotkey”就点安装。目前唯一持续维护、兼容 ST4 + AHK v2 的是 SublimeAutoHotkey(作者 evilC),不是 fincs 的旧版,也不是名字带“sublime-ahk”的其他同名包。
- 按
Ctrl+Shift+P→ 输入Package Control: Install Package→ 等列表加载完,搜SublimeAutoHotkey,认准作者栏写evilC - 装完新建
test.ahk,右下角状态栏必须显示AutoHotkey;若仍是Plain Text,说明没生效,先删掉%APPDATA%Sublime Text 4PackagesUser下残留的旧插件配置再重装 - AHK v1 用户可勉强用,但函数跳转、补全对 v2 支持更完整;v2 安装路径默认是
C:Program FilesAutoHotkey2AutoHotkey.exe,别和 v1 的C:Program FilesAutoHotkeyAutoHotkey.exe混了
Build System 怎么配才不报 “autohotkey not recognized”
这个错误不是 Sublime 的问题,是它找不到 AutoHotkey.exe。PATH 方案容易漏加或未重启生效,推荐直接硬编码路径。
- 菜单 →
Tools → Build System → New Build System… - 粘贴以下内容(注意双反斜杠
\,单斜杠会解析失败):{ "cmd": ["C:\Program Files\AutoHotkey\v2\AutoHotkey.exe", "$file"], "shell": true, "working_dir": "$file_path", "file_regex": "^([^\n]+)\((\d+)\):? ?(.*)$", "selector": "source.ahk" } - 保存为
AutoHotkey.sublime-build,之后在右下角 Build System 菜单里手动选它;Ctrl+B才真正调用本地 AHK v2 解释器 - 如果用的是 AHK v1,把路径改成
C:\Program Files\AutoHotkey\AutoHotkey.exe,别漏掉v2文件夹层级
为什么 if / loop 补全不弹、Ctrl+Click 跳不到函数
补全和跳转不是“装完就开”,有两个隐藏开关必须打开,且首次索引需要几秒等待。
- 确认全局补全已启用:菜单 →
Preferences → Settings,左侧默认设置中搜auto_complete,确保值为true - 函数跳转依赖插件后台索引,首次使用需等右下角状态栏出现“Indexing…”提示消失;若一直转圈,删掉
%APPDATA%Sublime Text 4CacheSublimeAutoHotkey后重启 Sublime - 补全关键词(如
if、loop、send)严格区分大小写,输IF不会触发;自定义函数跳转只支持当前文件内定义的函数,跨文件不识别是 Sublime 本身限制 - 中文乱码常见于脚本保存编码非 UTF-8 —— 右键文件标签 →
Save with Encoding → UTF-8
最易被忽略的其实是版本对齐:AHK v2 语法和 v1 不兼容,插件配置、Build System 路径、甚至 if 补全模板都按 v2 设计。用 v1 却配 v2 路径,或反过来,都会导致部分功能静默失效。动手前先确认你本地运行的是哪个版本的 AutoHotkey.exe。


















