Appearance
加载与调试插件
理解插件如何被加载有助于调试:
- 放置插件: 将你开发和打包好的插件文件夹(确保包含
plugin.json
和dist/
目录及里面的index.js
、可选的index.css
)完整地复制到思源工作空间下的data/plugins/
目录中。 - 后端处理: 当思源启动或你启用插件时,前端会请求后端 API
/api/petal/loadPetals
。思源后端服务会执行以下操作:- 读取
data/storage/petal/petals.json
确认哪些插件是启用的。 - 对于启用的插件,读取其目录下的
plugin.json
获取元数据。 - 直接读取
dist/index.js
文件的全部内容。 - 如果
dist/index.css
文件存在,直接读取其全部内容。 - 读取
i18n/
下的语言文件内容。 - 将插件的元数据、完整的 JS 代码字符串、CSS 代码字符串和 i18n 数据打包,通过 API 返回给前端。
- (注意:虽然我们已确认后端会返回 JS/CSS,但链接的后端 API 文档
/kernel-api/petal/loadPetals.md
可能尚未更新以反映这一点)
- 读取
- 前端执行: 前端接收到数据后:
- 使用
eval
执行后端传来的 JS 代码字符串。这会实例化你的插件类并调用onload()
。 - 将后端传来的 CSS 代码字符串 注入到页面样式中。
- 使用
- 布局就绪: 当界面布局完成后,前端会调用插件的
onLayoutReady()
方法,并将之前注册的顶栏、状态栏、Dock 等 UI 元素显示出来。
调试步骤:
- 开启开发者模式: 在思源的设置中找到“集市”相关选项,开启“开发者模式”。
- 修改与重载: 修改插件代码后,你需要重新编译打包(更新
dist/
目录下的文件),然后在思源的插件设置里禁用再重新启用你的插件,或者直接重启思源,才能加载最新的代码。 - 开发者工具: 在思源界面右下角找到菜单按钮 (通常是一个问号
?
图标),点击后选择 “开发者工具” 来打开。利用 Console 查看日志和错误,利用 Sources 设置断点调试 (需要配置好 Source Maps)。