Markdown 语法 · Obsidian

Markdown 提示框(Callout)怎么写?
Note / Tip / Warning 卡片,Obsidian 风

你想在 Markdown 里做个 callout,一个带图标的彩色 note / tip / warning 盒子。语法是一个 引用块 加一个特殊首行:> [!NOTE]。这里讲怎么写、有哪些类型、以及怎么渲染。

先说一句诚实的:callout 是 Obsidian 风的扩展、不属于标准 Markdown,所以它在哪儿变成好看的盒子,取决于工具。

callout 语法

一个 callout 就是一个首行为 > [!类型] 的引用块:

> [!NOTE]
> 这是一条 note 提示框。
> 它可以写好几行。

类型名不区分大小写,所以 [!note][!NOTE][!Note] 是一样的。因为它建在引用块上,不认 callout 的工具就把它显示成普通引用、首行是 [!NOTE]。GitHub 支持一个更小的版本叫 alerts;Obsidian 有更全的一套,NoteLoom 跟的是它。

callout 的类型

NoteLoom 渲染 13 种规范类型,每种有自己的图标和配色,有几种还认映射到同一样式的别名:

类型 别名
note (默认)
abstract summary、tldr
info (无)
todo (无)
tip hint、important
success check、done
question help、faq
warning caution、attention
failure fail、missing
danger error
bug (无)
example (无)
quote cite

用别名写,显示的是它所映射到的类型的标题。例如 [!important]tip 的样式和标题渲染,不是单独一个"Important"。

可折叠的 callout

在类型后紧跟一个符号,控制盒子能不能折叠:

  • [!note]+ 可折叠、默认展开
  • [!note]- 可折叠、默认收起,只留标题条。
  • [!note] 无符号=静态卡片,不折叠。

手动展开或收起一个 callout 只是查看状态,不写回 .md 文件,和 Obsidian 一样。重新打开笔记,它回到 + / - 定的默认态。

自定义标题

在类型(及可选的 + / -)后面跟一段文字,替换默认标题:

> [!tip] 随手记的小技巧
> 正文写在这里。

> [!warning]- 点开看注意事项
> 这个默认收起、且标题自定义。

一个诚实的限制:自定义标题目前按纯文字显示,所以标题里的 Markdown(粗体、链接)暂不渲染。

它们怎么渲染,以及诚实的限制

NoteLoom 渲染 callout 是 Obsidian-兼容的,所以你在 Obsidian 写的笔记在浏览器里打开是同样的盒子,反过来也一样。几个值得知道的边界:

  • 未知类型不会出错:一个不认识的类型如 [!madeup] 仍渲染成卡片,用 note 的样式、把类型名当标题。这和 Obsidian 一致;在 GitHub 上同样的东西会退化成普通引用。
  • [!类型] 必须独占引用块的首行。
  • 只识别顶层引用块;嵌套在别的引用里的 callout(>> [!note])不识别。

因为 callout 底下就是个引用块,它们保持 可移植的纯 Markdown。如果你的 callout 显示成了原始的 [!NOTE] 行,那是工具没在渲染 callout,和 Markdown 不渲染 是同一类问题。

FAQ

Markdown 里怎么做 callout(提示框)?
让一个引用块的首行单独是 "> [!类型]",内容写在下面几行:"> [!NOTE]" 然后 "> 你的文字"。类型(比如 NOTE、TIP、WARNING)决定这个盒子的图标和配色。
callout 是标准 Markdown 吗?
不是。"> [!类型]" 语法是 Obsidian 风的扩展;GitHub 有个更小的同类叫 alerts。它建在引用块之上,所以不支持 callout 的工具会把它显示成普通引用、首行是 "[!类型]" 文本。
有哪些 callout 类型?
NoteLoom 支持 13 种:note、abstract、info、todo、tip、success、question、warning、failure、danger、bug、example、quote。有几种还认别名,比如 abstract 认 summary / tldr、tip 认 hint / important、warning 认 caution / attention。
怎么做可折叠的 callout?
在类型后紧跟一个符号:"[!note]+" 可折叠、默认展开;"[!note]-" 可折叠、默认收起、只留标题条;"[!note]" 无符号是静态卡片、不折叠。手动展开或收起只是查看状态,不写回 .md 文件,和 Obsidian 一致。
能设自定义标题吗?
能。在类型(及可选的 + 或 -)后面跟一段文字:"> [!tip] 我的标题"。NoteLoom 里自定义标题按纯文字显示,标题里的 Markdown 暂不渲染。
我的 Obsidian callout 在 Obsidian 之外能渲染吗?
在 NoteLoom 里能,而且是 Obsidian-兼容的,所以在 Obsidian 写的笔记打开效果一样。在一个纯 Markdown 工具里,它退化成普通引用块、"[!类型]" 那行显示成文本。两种情况都不丢东西,都还是 .md 里的纯文本。

在浏览器里看你的 callout 渲染

用 Chrome / Edge / Arc 打开 NoteLoom,打开一个带 callout 的 .md 文件,看 note、tip、warning 盒子 Obsidian-兼容地渲染出来、直接存回文件。不用装、不用账号。

打开 NoteLoom 试试