用纯文本写思维导图:Mind Elixir 文本格式介绍
Mind Elixir 支持一种基于缩进的纯文本格式,可以直接用文本编辑器写思维导图,方便 AI 生成、文件存储和跨工具协作。本文介绍它的语法和用法。
思维导图工具大多依赖图形界面。要画一张导图,得打开应用,用鼠标逐个添加节点、连线、调整样式。这在很多场景下并不方便:想用 AI 快速生成一张导图大纲,想把导图存成纯文本放进笔记库,或者只是想快速记录一个想法的树状结构,图形界面反而成了阻碍。
Mind Elixir 提供了一种纯文本格式来解决这个问题。用几行缩进的文字就能描述一整张思维导图,需要可视化时再导入 Mind Elixir 渲染即可。
基本结构
先看一个最简单的例子:
- Root Node
- Child Node 1
- Child Node 1-1
- Child Node 1-2
- Child Node 2
- Child Node 2-1
写法和 Markdown 列表一致。根节点以 - 开头,每往下一层缩进两个空格。会写 Markdown 的人几乎无需学习。
这种格式的好处在于通用性。任何文本编辑器都能编写,任何能输出文本的工具都能生成。相比之下,.xmind、.mm 这类专有格式本质上是二进制文件,脱离对应软件就无法查看内容。
节点 ID:给节点一个标识
仅有树状结构有时不够用。当需要在两个非父子关系的节点之间连线时,需要一种方式引用特定节点。Mind Elixir 用 [^id] 语法为节点添加标识:
- Root
- Node A [^id1]
- Node B [^id2]
ID 写在节点文字之后,用方括号包裹。命名随意,只需保证整个文档内不重复。
连线:节点之间的任意连接
有了 ID,就可以在任意两个节点之间建立连线。Mind Elixir 支持双向连线和单向连线两种。
双向连线:
- Root
- Node A [^id1]
- Node B [^id2]
- > [^id1] <-Link Label-> [^id2]
以 > 开头,后跟源节点 ID,中间是连线标签,最后是目标节点 ID。标签两侧的 <- 和 -> 表示双向关系。
单向连线将 <- 替换为 >-:
- Root
- Node A [^id1]
- Node B [^id2]
- > [^id1] >-Forward Link-> [^id2]
完整格式中还支持坐标参数,用于控制连线的弯曲弧度,写作 > [^id1] (10,20) <-Label-> (-10,-20) [^id2]。手动编写时可以省略坐标,Mind Elixir 会自动计算合理位置。从导图导出回文本时,坐标会一并写出,以保留在界面中手动调整过的连线形状。
样式:颜色和字号
节点可以携带样式信息,用一段类 JSON 语法附加在文字之后:
- Root
- Styled Node {"color": "#e87a90"}
- Another Node {"color": "#3298db", "background": "#ecf0f1"}
支持的属性包括 color(文字颜色)、background(背景色)、fontSize(字号),均接受十六进制颜色码或数字字符串。用于标记重点节点时足够实用。
概要节点
当一组同级节点需要一句话概括时,可以使用 } 开头的概要节点:
- Root
- Node 1
- Node 2
- Node 3
- } Summary of all above nodes
} 会概括它前面的所有兄弟节点。如果只需概括最后几个,加上数字限定:
- Root
- Node 1
- Node 2
- Node 3
- }:2 Summary of Node 2 and Node 3
:2 表示只概括最后两个节点。整理学习笔记时,这个语法能让结构层次更清晰,无需额外创建节点手动标注。
完整示例
将上述功能组合起来,看一个实际例子:
- Project Planning
- Phase 1: Research [^phase1]
- Market Analysis {"color": "#3298db"}
- Competitor Study {"color": "#3298db"}
- }:2 Research Summary
- Phase 2: Development [^phase2]
- Frontend {"color": "#2ecc71"}
- Backend {"color": "#2ecc71"}
- Testing {"color": "#f39c12"}
- } Development Summary
- Phase 3: Launch [^phase3]
- Marketing
- Deployment
- > [^phase1] >-Leads to-> [^phase2]
- > [^phase2] >-Leads to-> [^phase3]
这张导图包含三个阶段,每个阶段有带颜色的子任务,研究阶段和开发阶段各有概要,三个阶段之间用单向连线表示先后顺序。全部信息用纯文本表达,不依赖任何图形界面操作。
适合什么场景
AI 生成导图大纲。 大语言模型输出文本非常自然,但要它直接生成符合特定 JSON 结构的数据则容易出错。纯文本格式足够简单,模型几乎不会写错。在提示词中给出一个格式示例,就能让 AI 生成结构完整的导图内容,再导入 Mind Elixir 查看和编辑。
文件存储与笔记归档。 导图存成 .txt 或 .md 文件,不依赖任何特定软件。即使将来不再使用 Mind Elixir,笔记内容仍然可读。相比将数据锁定在某个云端服务的私有格式中,纯文本存储更让人放心,也更容易纳入已有的笔记管理体系。
跨工具协作。 纯文本天生适合比对和合并。两人共同编辑一张导图时,用版本控制工具处理冲突,看到的是几行文字的差异,而不是整个二进制文件无法合并。对于团队协作维护知识结构而言,这一点相当实用。
编写注意事项
- 缩进必须使用两个空格,不能用 Tab,也不能用四个空格。格式解析按空格数计算层级,缩进错误会导致层级混乱。
- 使用 ID 时,整个文档内不能重复,否则连线会指向错误的节点。
- 连线语句可以放在任意位置,但建议放在相关节点附近,便于阅读和维护。
小结
Mind Elixir 的纯文本格式是一个务实的设计。它没有试图用文本复刻图形界面的全部功能,而是聚焦于导图的核心结构:节点、层级、连线、样式、概要。这些要素用几行文字就能表达清楚。
文本格式的价值正在于它的简单和通用。如果日常使用思维导图记录和整理信息,但又觉得每次打开应用画图略显繁琐,不妨尝试先用纯文本快速记录,需要可视化时再导入 Mind Elixir 渲染。
完整的语法对照表供参考:
| 功能 | 语法 | 示例 |
|---|---|---|
| 普通节点 | - Topic |
- My Node |
| 带 ID 的节点 | - Topic [^id] |
- Node A [^id1] |
| 带样式的节点 | - Topic {"prop": "value"} |
- Node {"color": "#ff0000"} |
| 双向连线 | > [^id1] <-Label-> [^id2] |
> [^a] <-connects-> [^b] |
| 单向连线 | > [^id1] >-Label-> [^id2] |
> [^a] >-leads to-> [^b] |
| 概要(全部) | } Summary text |
} Overview |
| 概要(N 个) | }:N Summary text |
}:3 Last three items |
在 Obsidian 中使用
如果你用 Obsidian 做笔记,可以通过 Mind Elixir 的 Obsidian 插件直接在笔记中编写和预览思维导图。在 Markdown 文件里按上述格式写下纯文本,插件会自动渲染成可视化的导图,编辑文本和调整导图同步进行。