跳转到内容

JXA 指令

JXA(JavaScript for Automation)是 macOS 上的一种脚本语言,允许用户使用 JavaScript 来自动化和控制 Mac 应用程序。JXA 是 AppleScript 的现代替代品,提供了更强大的功能和更广泛的应用支持。具体功能请参考 JXA Apple Developer Forums

运行 JXA 指令

在扩展的 package.json 中添加一个新的指令,并在指令的 main 字段中,指定一个入口文件,该文件以 js 为后缀,就可以将该文件当作 JXA 文件运行。

在入口文件加载完成后,Doggy 会调用该文件中的 globalThis.run 函数,该函数为指令的入口函数。

globalThis.run

一个 JXA 指令的入口函数

globalThis.run(Doggy doggy)

参数

  • doggy: 所有与当前指令的上下文信息都存储在其中

Doggy 的属性说明

属性类型说明
DoggyCmdNameString当前运行指令的 identifier
DoggyInputsArray输入参数,即用户在唤醒 Doggy 之前,选中的内容
DoggyConfigsString当前扩展的配置信息,是一个 JSON 字符串

返回值

返回一个 CmdExecutorResult 对象

  • CmdExecutorResult: 当前指令运行的结果

CmdExecutorResult 的属性说明

属性类型说明
statenumber0: 运行成功 1: 运行失败
resultString处理结果

示例

globalThis.run = function(doggy) {
let input = doggy.DoggyInputs[0]
return {
state: 0,
result: "1 + 1 = 2"
}
}