写作提示

本文本身即是所有语法的 living demo——你看到的每一种语法示例,都可以直接复制到自己的文章中使用。语法说明中出现的代码块均可点击复制。

在数字花园中,文章之间可以像 Wiki 一样相互链接,建立知识网络。

基本语法

用 [[文章标题]] 包裹目标文章标题即可:

[[Obsidian 使用指南:打造你的第二大脑]]
[[本地优先:为什么我重新爱上了本地工具]]

渲染效果:

Obsidian 使用指南:打造你的第二大脑
本地优先:为什么我重新爱上了本地工具

带显示别名

如果想让链接文字与文章标题不同,用 | 分隔:

[[Obsidian 使用指南:打造你的第二大脑|Obsidian]]

渲染效果:

Obsidian

别名链接特别适合长标题的短引用,或在同一篇文章中多次提及某概念时使用。

别用 aliases 字段代替这种写法

目标文章 frontmatter 里的 aliases 数组目前不生效,写了也匹配不到。要引用别名,一律用 [[完整标题|显示别名]] 这种显式写法。

链接找不到会怎样?

如果 [[文章标题]] 中的标题在博客中找不到,链接会以特殊样式呈现(虚线下划线 + 淡化透明度),提示这是一个未解析的链接。

[[一篇不存在的文章]]

渲染效果:

[[一篇不存在的文章]]


2. Callout 容器

用 ::: 包裹内容块,并在 ::: 后指定类型,可创建醒目的信息提示框。

支持的类型

类型用途颜色倾向
note普通备注绿色
tip技巧提示绿色
abstract摘要/总结蓝色
warning警告注意黄色
bugBUG 提醒红色
example示例说明紫色
question问题思考橙色
success / done完成状态绿色
info一般信息蓝色

示例

实用技巧

同时按下 Ctrl + Shift + P(Mac 为 Cmd + Shift + P)打开命令面板,可以快速搜索所有可用命令,无需记住快捷键。

注意事项

Git 提交信息应当简洁明了,第一行不超过 50 个字符,详细说明放在第二行。

已知问题

在某些 Android 设备上,深色模式的切换可能有 1-2 秒的延迟。这是由于系统级 CSS 变量刷新机制导致的,暂无完美解决方案。

核心要点

本地优先的核心思想:将数据的所有权和控制权归还给用户。云端同步是可选的备份手段,而非数据的唯一真实来源。

Callout 的标记语法示例:

:::tip[小技巧]
这是提示框的内容
:::

思考一下

为什么大多数笔记软件默认将数据存储在服务器上,而不是本地?这反映了怎样的产品设计哲学?

嵌套列表

Callout 容器内可以正常使用 Markdown 语法,包括嵌套列表:

多层级示例

  1. 第一步:打开编辑器
    • 确保已安装最新版本
    • 检查插件兼容性
  2. 第二步:配置主题
    • 选择护眼的配色方案
    • 调整字体大小
  3. 第三步:开始写作
    • 先列出大纲
    • 再逐段填充内容

3. 脚注(Footnotes)

脚注用于在正文中添加补充说明或引用来源,而不打断阅读流。

基本语法

在需要添加脚注的位置使用 [^1] 标记,在文末用 [^1]: 定义内容:

鲁迅先生曾说过,时间就像海绵里的水,只要愿意挤,总还是有的 [^1]。

[^1]: 出自鲁迅《且介亭杂文》,原文为:"时间就是性命。无端的空耗别人的时间,其实是无异于谋财害命的。"

渲染效果:

鲁迅先生曾说过,时间就像海绵里的水,只要愿意挤,总还是有的 1。

多次引用同一脚注

同一脚注可以在文中多次引用,使用相同的编号:

研究 [^2] 表明,写作时先列提纲可以显著提升文章逻辑性 [^2]。

[^2]: Kellogg, R. T. (2008). Training writing skills: A cognitive development perspective.

渲染效果:

研究 2 表明,写作时先列提纲可以显著提升文章逻辑性 2。


4. 文本高亮(Highlight)

用双等号 == 包裹文字,可以标记出重点内容,视觉上以黄色背景高亮:

这是普通文字,这是 ==需要强调的重点==,继续正文。

渲染效果:

这是普通文字,这是 需要强调的重点,继续正文。

使用场景

  • 关键词汇
  • 核心概念
  • 重要结论
  • 待复习内容

写作建议

高亮应克制使用。如果一篇文章中高亮过多,反而失去强调效果。建议每篇 500 字文章不超过 3-5 处高亮。


5. Emoji 快捷语法

输入 :emoji_name: 即可插入对应表情,比直接输入 Emoji 更具可读性:

语法效果语法效果
:smile:😄:rocket:🚀
:book::book::bulb:💡
:warning:⚠️:bug:🐛
:fire:🔥:star:⭐
:chart_with_upwards_trend:📈:key:🔑
:coffee:☕:art:🎨

常见的 Emoji 名称大多可以直接使用。如果不确定某个 Emoji 的名称,可以尝试 :emoji_ + Tab 让编辑器补全。


6. 组合使用

各种语法可以自由组合,创造丰富的表达层次:

一个完整示例

在 本地优先:为什么我重新爱上了本地工具 一文中,我们探讨了 数据主权 的概念3。

核心观点是:用户应当 拥有自己的数据,而非租借服务商的存储空间。

这与 Obsidian 使用指南:打造你的第二大脑 中倡导的 本地优先、工具为辅 理念高度一致。


7. 完整对照表

功能语法示例
Wiki 链接[[标题]][[Obsidian 使用指南:打造你的第二大脑]]
Wiki 别名[[标题|别名]][[Obsidian 使用指南:打造你的第二大脑|Obsidian]]
Callout:::类型[标题]\n内容\n::::::tip[提示]\n内容\n:::
脚注引用[^n][^1]
脚注定义[^n]: 说明[^1]: 这是脚注
高亮==文字====重点==
Emoji:name::rocket:
粗体**文字****粗体**
斜体*文字**斜体*
代码`code``code`
链接[文字](url)[Google](https://google.com)

8. 定义列表(Definition List)

术语和其定义可以用自然的方式写成列表,适合技术文档和概念解释。

语法

一行写术语,下一行以 : 开头写定义:

系统一
: 自动运行的快思考,不需要刻意努力
: 擅长模式识别和直觉判断

系统二
: 需要集中注意力的慢思考
: 负责复杂计算和逻辑推理

渲染效果

系统一
自动运行的快思考,不需要刻意努力
擅长模式识别和直觉判断
系统二
需要集中注意力的慢思考
负责复杂计算和逻辑推理

多术语

每个术语自动生成独立的 <dl> 块,术语之间保持分隔:

番茄工作法
: 一种时间管理方法,以 25 分钟为一个专注时段
: 由弗朗西斯科·西里洛于 1992 年发明

深度工作
: 在无干扰状态下专注进行的职业活动
: 使个人的认知能力达到极限

渲染效果:

番茄工作法
一种时间管理方法,以 25 分钟为一个专注时段
由弗朗西斯科·西里洛于 1992 年发明
深度工作
在无干扰状态下专注进行的职业活动
使个人的认知能力达到极限

定义列表支持多行定义——连续多个 : 开头的段落会自动合并到同一个术语下。


9. 版本日志与文章关联

更新日志页(生长年轮)不只是版本记录——每个版本还可以关联一篇「详解文章」,把一次更新的来龙去脉讲清楚。这依赖 post 字段。

基本用法

编辑 src/data/changelog.json,在版本对象里加一个 post 字段,指向对应文章的路径:

{
  "version": "1.9.0",
  "date": "2026-08-15",
  "tag": "功能",
  "title": "划词高亮读书笔记 + 搜索升级 Pagefind",
  "post": "/blog/reading-notes-and-pagefind-search/",
  "changes": [ ]
}
  • post 的值是文章路径,以 / 开头并以 / 结尾,指向 src/content/blog/ 下的某篇文章
  • 添加后,更新日志页会在该版本卡片底部显示 「阅读这篇更新的详解 →」 链接
  • 适合在大版本更新后写一篇介绍文章,然后在 changelog 里指过去;纯修 bug 的小版本可以不加

版本号规则

博客版本号遵循语义化约定,与更新日志页的「里程碑」标记一一对应:

  • 发布(主题正式发布、重大上线)变更第一位:1.9.x → 2.0.0
  • 里程碑(新功能、大改版)变更第二位:1.8.x → 1.9.0
  • 其他更新(修 bug、小优化)只变更最后一位:1.9.0 → 1.9.1
  • 次版本为 0(如 1.9.0、2.0.0)会在更新日志页自动标记为 「里程碑」

写作建议

给每个里程碑版本(X.Y.0)写一篇详解文章,并用 post 字段关联起来——读者在看更新日志时能一键读到设计思路,而不是面对一条条干巴巴的变更列表。


10. 阅读路径字段(TL;DR / 前置后续 / 继续阅读)

前面九节讲的都是正文里的写法。还有一组字段写在 frontmatter 里,控制的是文章开头和结尾长什么样——也就是读者要不要读下去、读完之后往哪走。

---
type: 'case-study'
tldr: |
  第一句给结论,不铺垫。
  第二句说清这篇解决什么问题。
  第三句写最终判断。
prerequisite: 'slug-of-previous'
followUp: 'slug-of-next'
readNext: ['slug-a', 'slug-b']
postscript: |
  发布之后又遇到了什么,补在这里。
---
字段出现在哪不填会怎样
type编号行徽标不显示徽标
tldr正文之前,左色条块不显示该块
prerequisite正文之前「阅读路径 · 前置」自动取同系列上一篇
followUp正文之前「阅读路径 · 后续」自动取同系列下一篇
readNext结尾「继续阅读」退而显示同系列下一篇;再没有才用时间序前后篇
postscript正文之后,虚线卡片不显示该块

几个要点:

  • tldr 和 postscript 是多行文本,用 | 开头,内容必须缩进对齐
  • prerequisite / followUp 表达的是文章之间的关系(前置 → 当前 → 后续),不是本文的章节;正文内部的导航只由右侧目录负责
  • prerequisite / followUp / readNext 填的都是 slug(文件名去掉 .md),不是标题;写错不报错,会被静默忽略
  • type 七类的选择和完整示例见 云图札记博文写作规范

值得手动填的两个

prerequisite / followUp 有同系列兜底,postscript 本来就不是每篇都有。真正值得花时间的是 tldr 和 readNext——前者决定读者读不读,后者决定他会不会读第二篇。这两处是系统里唯一优先采信人工判断的地方。


常见问题

Wiki 链接支持中文标题吗?

支持。直接用中文标题即可,如 [[本地优先:为什么我重新爱上了本地工具]]。系统会自动在前台匹配对应的 slug。

Callout 容器能嵌套使用吗?

不支持在同一个 Callout 内直接嵌套另一个 Callout。如需分层,建议用列表或分段落实现。

脚注会显示在页面哪个位置?

脚注会自动渲染在文章末尾,按照编号顺序排列。移动端会确保脚注区域可滚动可见。

高亮的颜色可以自定义吗?

当前高亮使用浏览器默认的 <mark> 样式(黄色背景)。在后续版本中会支持通过 CSS 变量自定义颜色。

Footnotes

  1. 出自鲁迅《且介亭杂文》,原文为:“时间就是性命。无端的空耗别人的时间,其实是无异于谋财害命的。“ ↩

  2. Kellogg, R. T. (2008). Training writing skills: A cognitive development perspective. ↩ ↩2

  3. 关于数据主权的更深入讨论,可以参考 Schneier, B. (2015) Data and Goliath。 ↩

继续阅读Continue Reading

关于本文About

评论Comments

留下你的想法

欢迎在下方评论区留下你的看法,一起把话题聊得更深。

COMMENTS