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(提示框)?
callout 是标准 Markdown 吗?
有哪些 callout 类型?
怎么做可折叠的 callout?
能设自定义标题吗?
我的 Obsidian callout 在 Obsidian 之外能渲染吗?
在浏览器里看你的 callout 渲染
用 Chrome / Edge / Arc 打开 NoteLoom,打开一个带 callout 的 .md 文件,看 note、tip、warning 盒子 Obsidian-兼容地渲染出来、直接存回文件。不用装、不用账号。