Skip to main content
场景插件在加载时,MN 会向上下文注入 mn 实例对象,可以通过访问其上的成员来进行与 MN 的交互。

只读信息

以下成员均为 mn 对象下的只读成员:
  • version:插件 SDK 版本号
  • currentMode:workspace/mini。需要插件自行进行适配
  • lang: App 界面语言。
  • locale: 系统所在区域。
  • theme: light/dark。白色、棕褐色、绿色为 light;灰色、黑色为 dark
  • _drag:作用暂不明确

方法

api(path, opts)

对 MN 数据进行 CRUD 操作。此方法调用方式与 Marginnote CLI 相同,但有部分 API 不可用。准确可用 API 需查询 capabilities。 下面代码演示了如何使用 mn.api 进行操作
具体实践详见数据交互。

ai(noteid, taskId, params)

mn.ai允许你使用 MN 内置的 AI 执行任务。需要注意的是,使用此命令前需在 template.json 中定义任务 id。
template.json
下面是调用示范
具体实践详见 使用 MN 内置 AI

call(name, data)

用于调用main.js中定义的函数并接收回调。 具体实践详见面板之外

on(event, cb)

mn.on 用于监听 MN 发送的事件。你需要先在 mnaddon.json 里声明你要监听哪些事件。
mnaddon.json
具体实践详见 事件系统

UI 相关

  • fit(): 自适应面板高度
  • height(h): 设置面板高度
  • size(w,h): 设置面板宽高
  • mode(m): 设置面板模式为workspace/mini
  • close(): 关闭面板
  • reload(): 重载面板
具体实践详见UI 控制

log

记录日志。但由于现在没有查看的入口,作用尚不明确。