我最近做了一个新的 Logseq 插件,叫 Logseq-MD。
它解决的是一个很小、但每天都可能让人分心的问题:从 ChatGPT、Claude、网页、GitHub、Notion 等地方复制 Markdown,再粘贴到 Logseq 里时,表格、标题、代码块和空行经常会变形。
如果只是偶尔坏一次,手动修一修也没什么。但当这件事发生在读资料、整理课程、拆文章、复盘 Ai 输出的过程中,它会打断人的注意力。原本应该继续思考的问题,突然变成了“这张表为什么碎成了一堆 block”。
它是个什么
Logseq-MD 是一个本地优先的 Logseq 插件。
它在 Logseq 里提供一个可拖动的小面板,核心动作只有一个:把当前 block 或选中的 blocks 里的 Markdown 一键修复回来。
目前它主要处理这些场景:
- 修复当前 block;
- 修复选中的多个 blocks;
- 规范 Markdown 表格;
- 修复从 Ai 或网页粘贴后形成的竖向碎片表格;
- 修复已经被错误处理过的中间坏表格;
- 修复标题空格,例如把
##标题整理成## 标题; - 保守清理多余空行;
- 保护 fenced code block,避免误伤代码块内容;
- 复制诊断信息,方便反馈问题。
这里的“修复”不是把笔记改写成另一种风格,也不是替你润色内容。它更像一个粘贴后的清洁层:尽量让原本应该是 Markdown 的东西,重新变回 Logseq 里可读、可整理、可继续工作的形态。
为什么是这个边界
我一开始就不想把它做成一个“大而全的 Markdown 工具”。
Logseq 里真正麻烦的,不是 Markdown 语法本身,而是外部来源和 Logseq block 结构之间的错位。尤其是表格:在网页、Ai 对话、Notion、GitHub 之间来回复制时,看起来完整的表格,进到 Logseq 之后可能会被拆成很多不连贯的行。
所以 Logseq-MD 的第一版只盯住这个断点:粘贴之后,马上修复。
它不负责生成内容,不负责改写内容,也不负责替代 Logseq 的编辑体验。它只负责在“外部 Markdown 进入 Logseq”这一步,把最常见的结构损坏尽量补回来。
这个边界对我很重要。因为很多个人工具最容易失败的地方,就是刚开始只想解决一个问题,后来慢慢膨胀成一个平台。Logseq-MD 现在不需要成为平台,它先把这一件烦人的小事做好。
本地优先
这个插件的另一个重点是隐私边界。
Logseq-MD 在 Logseq 本地运行:
- 不联网;
- 不调用 Ai API;
- 不上传笔记内容;
- 不做 telemetry;
- 诊断信息只包含命令、数量、结果、warning 和 error,不包含笔记原文。
这不是一个“顺便强调一下”的卖点,而是它应该有的默认姿态。
Logseq 本来就是很多人放长期笔记、读书摘录、个人项目材料和未公开想法的地方。一个处理笔记内容的插件,如果只是为了修 Markdown,就没有必要把内容发到外部服务。
怎么使用
当前版本适合本地测试。
最直接的方式是从 GitHub Releases 下载最新版 zip,解压后在 Logseq 里开启 Developer mode,再通过 Load unpacked plugin 加载解压后的插件文件夹。
使用时,把 Markdown 粘贴到 Logseq,然后从工具栏打开 Logseq-MD 面板。把光标放在要修复的 block,或选中多个 blocks,点击 一键修复。
如果更习惯命令,也可以用 slash commands:
Logseq-MD: Repair current blockLogseq-MD: Repair selected blocksLogseq-MD: Repair Markdown tableLogseq-MD: Open status panel
项目仓库在这里:
https://github.com/Hugh-Afterlight/logseq-md
现在的状态
Logseq-MD 当前已经整理成后续提交 Logseq Marketplace 的方向:根目录有 manifest.json,README 里说明了功能和使用方法,也有 GitHub Actions 在创建 release 时构建 release zip。
不过在正式提交插件市场前,我还需要继续用真实 Logseq 内容测试,尤其是各种从 Ai、网页和文档工具复制来的坏表格。
这也是我把它先发出来的原因:它不是一个宏大的产品宣言,而是一次很具体的个人工具实践。一个经常打断工作流的小问题,如果能被一个小插件安静地修掉,就已经很值得。
我喜欢这样的工具。它不抢注意力,不制造新的系统,也不要求人改变整个工作方式。它只是站在一个细小但真实的断点上,把事情接回去。