180 - 《如何写 Obsidian 插件》
发布于 2022年9月2日
下午翻了下 Obsidian 插件的资料,做下笔记。从中也可以学习到一个 UI 类的应用可以如何设计插件体系,相比我们之前做的 Umi UI 的插件体系高级多了。
1、如何快速上手?
➀ 启动插件项目。
$ git clone git@github.com:obsidianmd/obsidian-sample-plugin.git
$ cd obsidian-sample-plugin
# 复制插件路径
$ pwd | pbcopy
$ npm i
$ npm run dev
➁ Link 到 Obsidian 知识库的 .obsidian/plugins 目录。
$ cd path/to/obsidian/知识库
$ cd .obsidian/plugins
$ ln -sf $(pbpaste)
➂ 打开「Obsidian > 配置 > 第三方插件」,搜索「sample」找到此插件,开启。
➃ 重启 Obsidian 生效(或者按「⌘+⌥+I」打开开发者工具,按「⌘+R」刷新,这是大部分教程里没有提到的)
2、obsidian-sample-plugin 的工程化和结构?
整体目录结构如下,
# 有用的文件
- main.ts
- main.js
- style.css
- manifest.json
- versions.json
# 工程化脚本
- esbuild.config.mjs
- version-bump.mjs
Obsidian 插件主要是这些文件,main.js、style.css、manifest.json 和 versions.json。main.js 用于加功能;style.css 用于自定义样式,可以不存在;manifest.json 是插件基本信息;versions.json 里维护了插件版本和要求的 Obsidian 版本的隐射关系,也可理