拓冰建站拓冰建站
首页 / 资讯中心 / 正文

思源笔记 v2.9.3 版本全解析:流云海外订阅、插件体系增强与开发者 API 升级

思源笔记 v2.9.3 版本全解析流云海外订阅、插件体系增强与开发者 API 升级【免费下载链接】siyuanAn open-source, privacy-first, self-hosted knowledge workspace where humans and AI agents work together 开源、隐私优先、自托管的知识工作空间让人与智能体在此协作项目地址: https://gitcode.com/GitHub_Trending/si/siyuan本指南围绕思源笔记SiYuanv2.9.3 版本发布说明展开系统梳理该版本在云端同步订阅流云北美数据中心、插件能力、桌面端与移动端体验、缺陷修复以及插件开发 API 等方面的全部变更并结合仓库源码深入解释关键特性的实现原理。读完本文你将掌握 v2.9.3 的完整变更清单、非中国大陆用户启用云端同步的实操步骤以及插件开发者可用的protyleSlash、ICommand.langText、Protyle.reload/insert等新 API 的调用方式与底层逻辑。版本概述思源笔记 v2.9.3 是一个功能与体验并重的版本其核心变化集中在三个方向云端同步付费体系扩展开始支持非中国大陆地区用户使用流云北美数据中心账号进行付费订阅并同步开放了限量终身订阅活动插件生态能力增强新增插件命令面板、一键启用/禁用所有插件、插件设置入口管理以及多项插件开发 API桌面端与移动端体验打磨启动界面更平滑、默认工作空间路径调整、默认主题配色改进、Emoji 输入交互优化等。同时该版本移除了对 macOS 10.15 之前系统的支持并完成了一项重要的开发重构——升级 Electron 基础框架。说明本文基于仓库内 v2.9.3 发布说明简体中文其英文版见 v2.9.3.md繁体中文版见 v2.9.3_zh_CHT.md。云端数据同步流云北美数据中心订阅全流程v2.9.3 最引人注目的功能是开始支持非中国大陆地区用户进行付费订阅。如果需要在非中国大陆地区使用思源的云端数据同步服务请按照以下步骤操作注册流云账号访问流云官网注册页面创建账号流云即 SiYuan 官方云服务品牌切换登录数据中心在思源应用中依次进入设置 - 账号登录时选择流云北美数据中心开启 7 天免费试用登录成功后点击试用订阅按钮即可开启为期 7 天的免费试用付费订阅如需长期使用前往流云订阅页面选择思源对应的订阅方案完成付费。终身订阅活动配合海外订阅能力上线官方同步推出了限量终身订阅活动价格一次性付费$148权益终身使用云端数据同步特性名额数量有限先到先得适用范围该活动仅针对流云北美数据中心账号。这一变更对应发布说明中的两个功能条目支持流云北美数据中心账号登录、支持非中国大陆地区付费订阅。从产品形态上看这意味着思源的云端同步服务从此覆盖全球用户此前仅面向中国大陆地区的订阅体系被扩展为多数据中心模式。改进功能详解v2.9.3 共包含 20 项功能改进按模块可以划分为以下几组。插件体系增强插件相关改进是该版本的重头戏共有 4 项直接相关添加插件时将该插件设置到顶栏插件菜单中新安装的插件会自动出现在顶栏插件菜单中减少手动查找成本支持一键启用/禁用所有已下载插件在插件管理界面可以批量操作所有已下载插件方便快速切换插件组合进行排障或性能优化插件命令面板为插件增加了独立的命令面板入口配合快捷键系统统一管理插件动作禁用/启用插件时设置按钮需要被隐藏/显示插件列表中的设置按钮会根据插件的启用状态动态显示/隐藏避免对未启用插件进行无效配置。这些改动共同完善了插件的安装、启用、配置、触达全链路管理体验。数据同步与访问改进数据同步稳定性针对同步过程中的异常场景进行了稳定性优化涉及提交、冲突处理等环节对应同步模块如 kernel/model/sync.go支持通过 URL 链接直接访问data/public/*工作空间data/public/目录下的内容现在可以直接通过 URL 访问为公开分享类场景提供了更便捷的通道。桌面端体验桌面端启动界面更平滑优化了应用启动阶段的过渡动画与渲染流程减少启动时的突兀感桌面端默认工作空间路径设置为~/SiYuan/新用户默认工作空间从原先的路径统一调整为~/SiYuan/更符合桌面应用的使用直觉便于定位数据目录。编辑器、主题与搜索导入 Markdown 时支持转换[[wikilink]]和#Tag导入外部 Markdown 文件时[[wikilink]]双链语法与#Tag标签语法会被转换为思源原生格式而不是作为纯文本保留显著提升了从其他笔记工具迁移的体验改进分隔线光标位置插入分隔线Thematic break后光标定位更符合编辑直觉改进默认主题配色对默认主题的配色方案进行了整体调优提升视觉一致性改进默认搜索排序默认搜索结果排序更符合相关性预期与搜索模块见 kernel/search/find.go配合提升检索效率点击通知消息后关闭该条通知通知中心支持点击即关闭单条消息减少手动清理成本更新宣传标语为重构你的思维产品宣传语更新为 重构你的思维对应英文Refactor your thinking。移动端改进改进移动端输入 Emoji 交互移动端 Emoji 输入与选择流程得到优化操作路径更短移动端禁止在代码块中加粗在移动端代码块内禁用加粗操作避免误触造成格式混乱。移除功能v2.9.3 移除了一项系统支持不再支持10.15之前的 macOS 系统macOS Catalina10.15成为最低支持版本更早的 macOS 版本将无法运行该版本及后续版本。这与该版本升级 Electron 的开发重构密切相关——新版 Electron 对系统版本的最低要求提升导致旧版 macOS 不再被支持。缺陷修复v2.9.3 修复了以下 5 个缺陷缺陷说明面包屑多次转义面包屑路径中的特殊字符被重复转义导致显示异常导出 Markdown 未生成.md文件使用 Markdown 导出时在某些场景下未产出.md文件通过模板创建的块更新时间早于创建时间模板生成块的updated时间戳异常早于created时间戳导入 Markdown 时包含kbd导致无响应导入含kbd标签的 Markdown 文件时界面卡死当存在停靠栏插件时隐藏停靠栏失败已安装停靠栏dock插件的场景下隐藏停靠栏操作不生效开发重构升级 Electron桌面端基础框架 Electron 完成版本升级。这是 v2.9.3 唯一的开发重构项其影响波及桌面端启动界面、窗口行为等方方面面同时也解释了 macOS 最低版本要求的提升。开发者 API 升级源码级解读v2.9.3 面向插件开发者新增/改进了 6 项能力以下结合仓库源码逐一解读。插件 APIProtyle 对象该版本为插件增加了 Protyle API并为其新增了reload和insert两个方法定义于 app/src/protyle/index.tspublic reload(focus: boolean, updateReadonly?: boolean) { reloadProtyle(this.protyle, focus, updateReadonly); } public insert(html: string, isBlock false, useProtyleRange false) { insertHTML(html, this.protyle, isBlock, useProtyleRange); }reload(focus, updateReadonly)重新加载当前编辑器实例focus控制重载后是否聚焦updateReadonly用于同步只读状态insert(html, isBlock, useProtyleRange)向编辑器插入 HTML 内容isBlock指定是否按块级插入useProtyleRange决定是否使用当前 Protyle 的选区范围。这两个方法分别委托给reloadProtyle与insertHTML两个内部实现函数插件开发者可直接通过 Protyle 实例调用用于在插件交互后刷新编辑器或注入内容。插件注册快捷键支持自定义文本ICommand.langText快捷键命令接口ICommand新增了langText可选字段定义于 app/src/types/index.d.tsinterface ICommand { langKey: string, // 用于区分不同快捷键的 key, 同时作为 i18n 的字段名 langText?: string, // 显示的文本, 指定后不再使用 langKey 对应的 i18n 文本 hotkey?: string, // 快捷键默认为空字符串 customHotkey?: string, callback?: () void // 其余回调存在时将不会触发 globalCallback?: () void // 焦点不在应用内时执行的回调 fileTreeCallback?: (file: import(../layout/dock/Files).Files) void editorCallback?: (protyle: IProtyle) void dockCallback?: (element: HTMLElement) void }其中langKey同时充当 i18n 字段名用于从语言包中查找命令显示文本langText则是新引入的直给文本通道——一旦指定就不再读取langKey对应的 i18n 文本。这在插件需要动态展示命令名、或不便维护多语言键值对时非常实用。插件开发支持斜杆菜单protyleSlash插件类新增了protyleSlash属性定义于 app/src/plugin/index.tspublic protyleSlash: { filter: string[], html: string, id: string, callback: (protyle: import(../protyle).Protyle, nodeElement: HTMLElement) void }[] [];每个条目包含四个字段filter触发关键词列表用于在斜杆菜单中输入匹配html菜单项展示的 HTML 内容id菜单项唯一标识callback选中后执行的回调接收 Protyle 实例与当前节点元素。其触发逻辑位于 app/src/protyle/hint/index.ts当斜杆菜单的候选值以plugin前缀开头时前端会遍历当前应用的插件列表匹配插件名后在其protyleSlash数组中按id查找对应条目并执行回调} else if (value.startsWith(plugin)) { protyle.app.plugins.find((plugin) { const ids value.split(Constants.ZWSP); if (ids[1] plugin.name) { plugin.protyleSlash.find((slash) { if (slash.id ids[2]) { slash.callback(protyle.getInstance(), nodeElement); return true; } }); return true; } }); return; }由此插件可以在编辑器斜杆菜单中注册自己的命令入口实现输入关键词 → 选中菜单项 → 执行插件逻辑的完整交互链路。调用内核 APIsetBlockAttrs后自动刷新动态锚文本该版本优化了块属性写入后的引用展示插件调用内核 APIsetBlockAttrs修改块属性后相关块引用的动态锚文本会自动刷新无需手动重载文档。其内核实现位于 kernel/api/attr.go核心逻辑包括校验id格式util.InvalidIDPattern读取attrs映射并逐项写入块属性特殊处理当属性值设置为null时移除该属性对应历史 issue #5577 的行为约定例如用户指南中的滚动位置属性会被特殊忽略。从源码可见setBlockAttrs支持通过null值删除属性、通过非空值写入属性这与前端动态锚文本自动刷新的改进共同构成一个闭环属性一变引用处即时可见。改进内核 API/api/convert/pandoc/api/convert/pandoc接口在该版本中得到改进用于文档格式转换场景如通过 Pandoc 导出/导入。内核侧对应实现可参考 kernel/api/pandoc.go该接口的增强主要服务于 Markdown、Docx 等多种格式的转换可靠性。总结思源笔记 v2.9.3 是一个承上启下的版本对普通用户最大的变化是流云北美数据中心订阅体系上线非中国大陆地区用户从此可以按注册 → 登录选数据中心 → 7 天试用 → 付费/终身订阅的路径使用云端同步同时收获了更平滑的桌面启动、改进的默认主题与搜索排序、Markdown 双链/Tag 导入转换等体验升级。对插件开发者该版本新增了Protyle.reload/insert、ICommand.langText、protyleSlash等 API配合setBlockAttrs锚文本自动刷新与/api/convert/pandoc改进让插件的编辑器交互、命令注册与属性联动能力更加完整。对维护者Electron 升级与 macOS 10.15 最低版本要求的提升为后续版本的桌面端能力演进打下了基础。如需查阅该版本的完整变更条目可继续阅读仓库内的 v2.9.3 发布说明或浏览 changelogs 目录 下其他版本的变更记录进行横向对比。【免费下载链接】siyuanAn open-source, privacy-first, self-hosted knowledge workspace where humans and AI agents work together 开源、隐私优先、自托管的知识工作空间让人与智能体在此协作项目地址: https://gitcode.com/GitHub_Trending/si/siyuan创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门