From 00e9aea87fd3693ac7fdee86492334ff34efc19a Mon Sep 17 00:00:00 2001 From: douboer Date: Thu, 16 Oct 2025 16:18:18 +0800 Subject: [PATCH] update at 2025-10-16 16:18:18 --- README.md | 153 ++++++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 120 insertions(+), 33 deletions(-) diff --git a/README.md b/README.md index 89ba286..1ce8e0a 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,30 @@ ## 更新说明 + > [!IMPORTANT] +> ### v1.4.0 重大架构升级 🚀 +> +> Note2Any v1.4.0 进行了全面的架构重构,提供了更稳定、更高效的发布体验: +> +> **🏗️ 核心架构现代化** +> - 全新的模块化核心系统,包含9个专业模块(错误处理、进度反馈、配置管理等) +> - 1400+行新代码,全面TypeScript覆盖,零编译错误 +> - 统一的错误处理和实时进度反馈,提升用户体验 +> +> **⚡ 性能与稳定性提升** +> - 模块化加载,减少启动时间 +> - 异步处理优化,提升响应性能 +> - 智能缓存机制,减少重复计算 +> - 增强的错误恢复能力 +> +> **🔧 开发体验改进** +> - 标准化的平台发布接口,便于扩展新平台 +> - 清晰的模块职责分离和统一的接口约定 +> - 向后兼容设计,平滑升级路径 +> +> **升级建议**: 现有用户可直接升级,所有功能保持兼容。新的架构为后续功能扩展奠定了坚实基础。 + +> [!NOTE] +> ### v1.3.x 主题优化提醒 > Note2Any 1.3.0版本对主题进行了优化,升级后请先清理旧版本主题文件,再重新下载新版主题。 > > 操作步骤:在Note2Any插件设置中,先点击『清空主题-清空』,然后点击『获取更多主题-下载』 @@ -10,7 +35,25 @@ ## 1、简介 -这是一个Obsidian插件,针对微信公众号编缉器进行了优化,通过本插件复制笔记可以把笔记样式同步到公众号编缉器,轻轻松松搞定文章格式,一劳永逸,而且支持代码高亮、代码行数显示、主题背景颜色等。针对微信公众号不能放链接也专门处理了,提供直接展示链接地址和文末脚注展示两种方式。本项目初衷仅是为了能够将Obsidian中笔记的样式完美同步到微信公众号的编辑器中,因此项目重点在于保证文章格式的一致性,而不是成为一个微信公众号编辑器。 +Note2Any 是一个专为 Obsidian 打造的现代化发布插件,支持将笔记一键发布到微信公众号、小红书等多个平台。插件采用全新的模块化架构设计,提供稳定可靠的发布体验。 + +### 🌟 核心特性 + +- **📱 多平台发布**: 支持微信公众号、小红书等平台,统一的发布体验 +- **🎨 丰富主题**: 30+ 精美主题样式,支持代码高亮和自定义CSS +- **🖼️ 智能图片处理**: 自动图片上传、格式转换、EXIF方向处理 +- **📊 数学公式支持**: LaTeX 和 AsciiMath 双重语法支持 +- **🚀 批量发布**: 高效的批量文章发布功能 +- **⚡ 现代架构**: v1.4.0 全新模块化设计,更稳定、更高效 + +### 🏗️ 技术亮点 + +- **模块化核心系统**: 9个专业模块提供统一的错误处理、进度反馈、配置管理 +- **类型安全**: 全面TypeScript覆盖,零编译错误 +- **性能优化**: 异步处理、智能缓存、模块化加载 +- **扩展友好**: 标准化的平台接口,便于新平台接入 + +插件专注于保证文章格式的完美同步,而不是成为一个平台编辑器。通过现代化的架构设计,为用户提供流畅、稳定的发布体验。 ### 图片方向自动处理 @@ -52,20 +95,18 @@ ### 摘要、封面裁剪、原文链接等 ## 2、安装 -首先,**请确认已关闭了Obsidian的安全模式**。如未关闭,请通过**设置——第三方插件——关闭安全模式**关闭。 -### 2.1 插件安装 -#### 从官方**社区插件市场**安装 +> [!TIP] +> **v1.4.0 提升**: 新版本采用模块化架构,安装更稳定,启动更快速! + +首先,**请确认已关闭了Obsidian的安全模式**。如未关闭,请通过**设置——第三方插件——关闭安全模式**关闭。 + +### 2.1 插件安装 通过Obsidian**设置——第三方插件——社区插件市场**,输入**Note2Any**搜索安装。 +🚩 TODO ### 2.2 主题资源安装 -如果采用的是用从插件市场或者Github下载安装的方式,在插件安装完成后还需要再下载主题资源。网盘里的安装包已经集成了主题样式,无需下载。 - -**1)通过设置下载** -为了尽可能保证插件符合官方规范,主题和代码高亮需要打开Obsidian的**设置**界面,在底部的**第三方插件**——**Note 2 Any**——**获取更多主题**手动下载。 - -**2)手动下载** -也可以直接在[Release](https://biboer.cn/gitea/gavin/note2any/releases)页面下载`assets.zip`文件,解压后放到`.obsidian/plugins/note2any/assets`目录下。 +🚩 TODO ### 2.3 常见安装问题 @@ -95,29 +136,36 @@ 检查样式无误后,点击**复制**按钮,然后到公众号粘贴即可。 -**★ 公众号** -插件支持多公众号,在下拉菜单中进行不同公众号的切换。该功能需要订阅才能使用。 +### 🚀 主要功能 -**★ 复制** -检查样式无误后,点击**复制**按钮,然后到公众号编辑器粘贴即可。 +**★ 智能平台切换** +插件支持多平台发布,在下拉菜单中进行不同平台的切换。新架构提供更稳定的平台管理。 -**★ 上传图片** -点击上传图片会将文章中的本地图片上传到微信公众号,同时会替换预览中的图片地址,而您原始文章中的图片地址不会替换。上传图片完成之后,此时点击“复制”,然后到微信公众号编缉器中粘贴就可以把图片带过去了。该功能需要订阅才能使用。 +**★ 一键复制** +检查样式无误后,点击**复制**按钮,然后到平台编辑器粘贴即可。现在具有实时状态反馈。 -**★ 发草稿** -点击发草稿会上传文章中的本地图片,并且将文章发送到公众号的草稿箱,省去粘贴步骤。在文章正式发布之前还有一些选项需要您设置,比如文章摘要等。考虑到安全性,插件暂不提供直接发布功能。该功能需要订阅才能使用。 +**★ 智能图片处理** +- 自动上传本地图片到目标平台 +- 支持WebP转JPG、EXIF方向自动处理 +- 批量图片处理,进度可视化 +- 点击上传图片会将文章中的本地图片上传到平台,同时替换预览中的图片地址 -**★ 刷新** -如果笔记内容更新了,但是预览没有更新,可以点击一下刷新按钮。 +**★ 草稿发布** +点击发草稿会上传文章中的本地图片,并且将文章发送到平台的草稿箱,省去粘贴步骤。新版本提供更可靠的上传机制。 -**★ 封面** -发草稿必须设置文章封面,使用默认封面,是从您的永久素材中选取最近使用的作为封面,您需要在发布文章之前重新设置一下。本地上传则需要你选取一张本地图片作为封面。 +**★ 实时刷新** +如果笔记内容更新了,但是预览没有更新,可以点击刷新按钮。现在响应更加迅速。 -**★ 样式** -可以选取笔记的样式,目前有30多款,还在持续增加中。如果有钟意的样式,可以在插件设置中,设置为默认样式,这样就不用每次都点一下了。 +**★ 智能封面** +- 发草稿必须设置文章封面 +- 支持默认封面、本地上传、自动提取首图 +- 新增封面处理优化,确保显示效果 + +**★ 丰富样式** +可以选取笔记的样式,目前有30多款,还在持续增加中。如果有钟意的样式,可以在插件设置中,设置为默认样式。 **★ 代码高亮** -设置代码高亮的样式。 +设置代码高亮的样式,支持多种主题。 ### 数学公式使用指南 @@ -158,11 +206,32 @@ c=+-sqrt(a^2+b^2) ## 开发与构建 -本仓库的构建脚本分为“未混淆”和“启用混淆”两个版本: -- `npm run build`:生成未混淆的 `main.js`,便于调试。 -- `npm run build:obf`:在生产模式下启用 `javascript-obfuscator`,生成混淆后的 `main.js`。 -- `./build.sh`:执行默认(未混淆)构建并同步到本地 Obsidian 插件目录。 -- `./build.sh obf`:执行混淆构建后再进行同步。 +> [!INFO] +> **v1.4.0 架构升级**: 新版本采用模块化架构,包含9个核心模块,1400+行新代码,提供更好的开发体验! + +### 🛠️ 构建系统 + +本仓库提供多种构建选项: +- `npm run build`:生成未混淆的 `main.js`,便于调试和开发 +- `npm run build:obf`:生产模式启用 `javascript-obfuscator`,生成混淆后的 `main.js` +- `./build.sh`:执行默认构建并同步到本地 Obsidian 插件目录 +- `./build.sh obf`:执行混淆构建后再进行同步 + +### 🏗️ 架构特性 + +**模块化设计**: 新版本将原有单体架构拆分为9个专业模块: +- `ErrorHandler`: 统一错误处理 +- `ProgressIndicator`: 进度反馈系统 +- `ConfigManager`: 配置管理 +- `PublisherInterface & PublisherManager`: 发布平台抽象 +- `ContentProcessor`: 内容处理流水线 +- `GalleryProcessor`: 图库处理 +- `ImageProcessor`: 图像处理 +- `HtmlProcessor`: HTML生成 + +**类型安全**: 全面TypeScript覆盖,零编译错误,提供完整的类型推导。 + +**性能优化**: 异步处理、智能缓存、模块化加载,提升用户体验。 如需自定义混淆行为,可在执行命令时设置环境变量(例如 `OBFUSCATE=1 npm run build:bundle`),详细参数见 `esbuild.config.mjs`。 新建一篇笔记,例如**自定义样式**,直接将如下内容粘贴进笔记: @@ -531,14 +600,14 @@ https://www.bilibili.com/video/BV15XWVeEEJa/ ```yaml --- 标题: -作者: 孙博士 +作者: douboer 封面: "![[封面模板.jpeg]]" 摘要: 封面裁剪: 原文地址: 打开评论: true 仅粉丝可评论: true -公众号: 孙博士研究所 +公众号: douboer 样式: MWeb Panic 代码高亮: docco --- @@ -560,5 +629,23 @@ https://www.bilibili.com/video/BV15XWVeEEJa/ 如果你更愿意手动截屏,我也可以把一个标注模板(SVG 或说明)发给你,方便手动粘贴到 `images/` 目录。 +--- + +## 📚 相关文档 + +- [完整更新日志](./CHANGELOG.md) - 查看所有版本的详细更新记录 +- [版本发布信息](./release.md) - 版本发布说明和技术细节 +- [架构优化报告](./docs/OPTIMIZATION_REPORT_v1.4.0.md) - v1.4.0架构升级详情 +- [问题反馈](https://biboer.cn/gitea/gavin/note2any/issues) - 报告问题或提出建议 +- [发布页面](https://biboer.cn/gitea/gavin/note2any/releases) - 下载最新版本 + +## 🤝 贡献 + +欢迎提交Issue和Pull Request来帮助改进Note2Any! + +## 📜 许可证 + +本项目基于相应许可证开源,详见项目仓库。 +