别再复制粘贴了:腾讯文档/XMind ↔ Logseq 一键互转

用两段 Python 脚本把 XMind(含腾讯文档导出的 XMind)与 Logseq Markdown 双向互转:结构、图片、链接、备注、标签尽量少丢。

别再复制粘贴了:腾讯文档/XMind ↔ Logseq 一键互转

如果你也习惯:

  • 思维导图快速搭框架(腾讯文档思维导图/XMind等)
  • Logseq 做长期沉淀(可搜索、可引用、可串联)

那你大概率经历过这种“崩溃瞬间”:

  • 导图画完想进 Logseq:一层层复制粘贴,图还要重新拖
  • Logseq 写了很多结构化内容,想变回导图更直观:只能手动重画
  • 最难受的是:结构丢、图片丢、链接丢、备注丢、标签丢 —— 明明只是“换个载体”,却像在“重做一遍”

这篇我直接给结论 + 可复制的命令。

建议先收藏:下次你在导图和 Logseq 之间来回倒腾时,能省不少时间。


先给结论

我做了一套 XMind ↔ Logseq 双向互转python小工具

  • XMind → Logseq:把导图变成 Logseq 友好的 Markdown(保留层级、图片、链接等信息)
  • Logseq → XMind:把 Logseq 的结构化 Markdown 还原回导图(并尽量把本地图片打包进 .xmind

它追求的是:信息尽量不丢、过程可控可复现

它不是为了追求“样式 100% 一模一样”,而是为了让你不用反复手工重做。


为什么我没继续用 Logseq 里的思维导图插件?

我实际用过、也最接近“能用”的两款 mindmap 插件是:

  1. logseq-mind-mapping-plus

    • 优点:上手快、集成感强
    • 但问题也很明显:
      • 界面相对简单
      • 不支持展示图片(对很多“图文导图”来说几乎是硬伤)
      • 标称的双向同步偶尔会失灵(结构更新不一定能及时/正确回写)
  2. Logseq Mind Map

    • 优点:界面和功能确实很棒,体验更接近“正经导图工具”
    • 但更致命的是稳定性:在我这边的使用里,双向同步更不可靠,甚至会出现经常连刷新都失效的情况

插件我依然会用(比如快速浏览/临时发散),但如果你更在意长期可靠,我更推荐走“文件互转”的路子。


1 分钟上手:把导图丢进 Logseq(只要三步)

你需要准备什么

  • Python 3.6+
  • 一份 .xmind 文件
    • 可以来自 XMind
    • 也可以来自腾讯文档思维导图的 导出 XMind
  • 两个脚本:xmind2logseq.pylogseq2xmind.py(放在当前目录或加入 PATH)

第一步:XMind → Logseq

1
python3 xmind2logseq.py example.xmind

默认会:

  • 在同级目录生成同名 .md
  • 把图片提取到同级 assets/

说明:为了更贴合 Logseq 习惯,Markdown 里依然会使用 ../assets/ 的引用格式。你只要保证最终图片在图谱的 assets/ 下即可正常显示。

以腾讯文档的思维导图效果为例(可以导出为example.xmind):

第二步:放进你的 Logseq 图谱目录

Logseq 常见目录结构:

1
2
3
your-graph/
  pages/
  assets/

你把:

  • 生成的 xxx.md 放到 pages/
  • 生成的图片放到 assets/

导出的logseq文件:

1
2
3
4
5
- xmind和logseq打通了 [🔗](https://github.com/RTsien/xmind2logseq)
	- xmind2logseq [🔗](https://github.com/RTsien/xmind2logseq/blob/main/xmind2logseq.py) ![xmind2logseq](../assets/xmind和logseq打通了_aa3487b0-5cb4-43ce-793d-c534d1b837f2.png)
		- ![](../assets/xmind和logseq打通了_9addb6c8-ced5-484f-7f0e-d8b03799a379.png)
	- logseq2xmind [🔗](https://github.com/RTsien/xmind2logseq/blob/main/logseq2xmind.py)
		- ![](../assets/xmind和logseq打通了_6450b196-af8f-4ae2-2a51-7c3068ea1ff7.png)

logseq展示效果:

第三步:打开 Logseq,继续扩写/整理

导图负责“骨架”,Logseq 负责“长内容”和“引用串联”。


反过来:把 Logseq 一键变成 XMind(更适合浏览/展示)

你需要:

  • 一个 Logseq 页面对应的 .md(通常在 pages/ 里)
  • 同一个图谱下的 assets/ 目录

运行:

1
python3 logseq2xmind.py example.md assets/

会生成:example.xmind(并尽量把用到的本地图片打包进去)。


你可能用得上的小参数(真正的一键)

1)指定输出文件名

1
python3 xmind2logseq.py example.xmind custom_name.md
1
python3 logseq2xmind.py example.md assets/ output.xmind

2)指定图片导出目录

可以把md文件和assets文件直接生成到logseq中,省去复制粘贴的麻烦,实现真正的“一键

1
python3 xmind2logseq.py example.xmind /path/to/my/logseq/pages/custom_name.md /path/to/my/logseq/assets

(可跳过)格式转换规则

这部分“规则说明”,只在你发现“还原不够准”时再回来对照。

链接:统一放在同一行

  • 标题 + 链接:
1
- 标题文本 [🔗](http://example.com)
  • 纯链接子节点:
1
2
- 父节点
	- [🔗](http://example.com)

备注 / 引用:用引用块承载

1
2
3
- 一个节点
	- > reference
	- > 这里是一段备注内容

标签:用可识别的文本格式

1
2
- 一个节点
	- **标签:** tag

常见问题(最常踩的坑)

Q1:能做到 100% 还原吗?

很难。

  • XMind 和 Logseq 的能力模型不同:一个偏“导图展示”,一个偏“块/知识库”
  • 这套工具追求的是:信息尽量不丢,而不是样式像素级复刻

Q2:为什么我更推荐“文件互转”,而不是依赖插件同步?

一句话:可控 + 可复现

  • 插件同步一旦失灵,你很难判断是“刷新问题”还是“数据写回问题”。我已经不止一次被mindmap插件的数据丢失问题折磨😭。
  • 文件互转至少能做到:每次导入导出的结果一致,出问题也更容易定位

Q3:图片不显示怎么办?

优先检查两点:

  1. 图片是否在 Logseq 图谱的 assets/ 目录下
  2. Markdown 里图片引用是否是 ../assets/... 这样的相对路径
updatedupdated2026-01-222026-01-22