Opensidian 0.8.0 发布
Opensidian 0.8.0 已发布:在此下载,并用签名的 SHA256SUMS
校验下载文件。
本文涵盖自 0.6.2 以来的全部变化(0.7.0 从未发布)。
新功能:社区插件
- 插件浏览器:设置 → 社区插件 → 浏览,显示社区插件列表、下载量和最新版本。 可在此安装、更新、启用和卸载。每个已安装的文件都以 sha256 固定。
- 默认受限模式:仓库默认处于受限模式,不运行任何插件代码,仓库也无法自行开启自己的插件。
信任开关保存在仓库之外的
~/.opensidian.json中。 - 受信任的仓库提供插件在 Obsidian 中所期望的桌面能力:Node
fs、child_process、网络监听、request/requestUrl以及系统打开方式。 关闭信任会卸载插件代码,并重新关闭这些能力。 - 前 10 名社区插件可完整使用:Templater、Dataview、Tasks、Excalidraw、 Git、Calendar、Style Settings、Kanban、Advanced Tables 和 Copilot 都能通过浏览器安装, 并在界面中通过了主要功能的实际操作测试。 在更大范围的测试中,50 个热门插件里有 44 个能够加载。
- Canvas 核心插件:
.canvas视图,依据公开的 JSON Canvas 规范净室实现。 Excalidraw 通过它进行嵌入。 - 插件 API 依据公开的
obsidian.d.ts净室重写:工作区、仓库、 元数据缓存、编辑器、设置、建议、嵌入、视图、快捷键、自定义 CSS、 协议处理器,以及为需要它们的插件提供的固定版本 PDF.js、MathJax、Prism 和 moment。
新功能:应用
- 编辑器基于 CodeMirror 6:笔记编辑器、实时预览、撤销/重做、滚动、大纲 和查找现在都运行在 CodeMirror 6 上。扩展编辑器的插件拿到的是编辑器自己的 CodeMirror 实例;较旧的插件仍可使用 CodeMirror 5 兼容层。
- 设置 › 钥匙串:在系统钥匙串(Secret Service)中列出、添加、编辑和删除此仓库的机密。
插件也把机密存放在这里(
app.secretStorage)。没有明文回退, 机密值不会出现在页面或日志中。 - 设置 › 通用 显示 Opensidian 和插件 API 的版本(1.14.4)。 检查更新 会查询 GitHub releases,并用固定的 ed25519 密钥验证发布签名。 自动更新默认关闭。帮助会打开 opensidian.org。
更快
- 打开笔记(预热后,5 次中最慢的一次):40 ms,之前为 103 ms。样式只应用一次, 字体缓存在空闲时预热。
- 关系图:没有变化;移动和静止的方式与 0.6.2 相同。
修复
- 光标颜色 跟随主题,在深色主题上不再是黑色。
- 点击前输入:在点击前一刻按下的键会落在光标处,而不是点击的位置。
- 阅读视图 在上方图片较晚加载时,也能再次回到你的位置。
- 快速切换器:从中打开的笔记会获得键盘焦点,与 Obsidian 一致。
- 侧边栏插件视图 保持在侧边栏高度之内,不再无限增长。
安全
- 受信任仓库中插件的文件访问被限制在仓库之内,并拒绝符号链接; 受限仓库完全不向插件提供主机文件系统访问。
- 关闭信任会从页面的内容安全策略中移除
unsafe-eval。 - 加固了 HTML 清理和 HTML 转 Markdown 的标签剥离(CodeQL 发现的问题)。
完整变更日志:GitHub release v0.8.0。