命令文件与属性
Diatom/用户手册/命令文件与属性

命令文件、属性与正文重读

命令列表

ini
[my_command]
type=f
tip=一条命令
code='''
MsgBox("hello")
'''

列表使用 Diatom 自定义的 section/key-value 格式。它支持裸值、单双引号、三引号正文,但不是完整标准 TOML。建议简单属性一行一个,正文用三单引号,文件保留结尾换行。

列表里的注释使用 ;' 说明。全局配置的注释规则不同,不要把三种解析器视作完全一致。

独立脚本的属性头

属性放在文件第一条有效内容,使用逗号分隔。旧写法全部保留:

文件 属性头
.ahk ;? type=e,read=1
.py #? type=jp
.js //? type=js
.ps1 #? type=jw
.lua --? type=ju

/* toml … */ 目前没有实现,不应作为属性头使用。

独立脚本头中的空属性被忽略。例如 key= 不会创建有效热键。名称来自文件名,前后括号说明可被剥离。普通文件夹名不自动加入命令名。

修改后什么时候生效

修改内容 生效方式
名称、别名、热键、属性 保存后重启
新增、删除文件 重启
列表中的 code 重启
没有 read 的独立脚本正文 重启
带 read、每次新建实例的脚本正文 下次新建实例时重读
已在复用执行器里编译的函数或标签 不承诺因 read 自动更新

read 的主要用途是独立线程调试,动态加载及代码缓存更新不属于覆盖目标。Lua 当前没有接入统一的执行前重读流程,不要依赖它实现同样行为。

常用属性

属性 作用
type 选择执行模式
fn、ps 函数名和参数
code 正文
alias 用 `
key AHK 热键,多个用 `
tip 执行提示
ban 存在时不加载
pc、pc_bl 机器白名单、黑名单
dog、task、ev 启动、定时、事件
lib 注入配套 AHK 库

禁用一条命令可用 ban=1,恢复时删除该属性;不要写 ban=0 期待恢复。也可把文件扩展名改成不支持的名称,或把整个目录改为以 .skip 结尾。

同名规则

列表中后加载的同名条目覆盖前者;独立脚本遇到已有名称时跳过;别名不会覆盖已有名称。多个根路径汇总后按完整文件路径排序,src_dir 中的书写顺序不代表覆盖优先级。

因此不建议依靠文件夹名称“碰巧覆盖”。先给自己的命令一个独特名称,再为它分配空闲触发。

用户手册

正在读取手册…