Markdown 语法
Markdown 复选框怎么写?
以及怎么真的能点勾
你想在 Markdown 里做个复选框、一个能勾掉的任务列表。语法很简单,但多数教程跳过了一个坑:你能不能真的点那个方框,取决于你在哪儿打开文件。这是语法、为什么方框有时点不动、以及怎么得到能点、能存的复选框。
语法:任务列表
一个复选框就是一个以方括号开头的列表项:
- [ ] 买牛奶
- [x] 发那封邮件
- [ ] 订机票 短横、一个空格、再 [ ] 表示空框、或 [x] 表示勾选框。空框方括号里的那个空格是必须的。这是 GitHub 风格 Markdown(GFM),所以 GitHub 和任何支持 GFM 任务列表的工具里都能用。
坑:静态方框 vs 可点方框
写出语法是容易的部分。真正的问题是:你点它的时候方框到底做不做事,这个从工具到工具不一样。
| 你在哪儿打开 | 复选框会怎样 |
|---|---|
| 纯文本编辑器 | 把 "- [ ]" 显示成字面文本,没有方框 |
| GitHub(issue / PR) | 可点的方框,但只在 issue 和 PR 里,纯仓库文件不行 |
| GitHub(看 .md 文件) | 有方框,但只读,在那里点不动 |
| NoteLoom(编辑和阅读视图) | 可点的方框,勾选并写回 .md |
所以如果你要的是一个真正能用的清单、而不只是看起来像清单的文本,你需要一个能让方框可点、并且把改动存回文件的编辑器。如果你的方框显示成原始 [ ] 文本,那是 Markdown 为什么不渲染 讲的同一个渲染问题。
能点、能存回文件的复选框
NoteLoom 在编辑和阅读两个视图里都把 - [ ] 和 - [x] 渲染成真复选框。点一下它就勾上或取消,改动直接写回 .md 文件里的 [ ] 或 [x]。已完成项显示成置灰 + 删除线,所以长清单也好扫。
这意味着你的待办清单同时是两样东西:哪里都能打开的、可移植的纯文本 Markdown,和一个你真能勾掉的清单。没有东西存成特殊格式,勾选状态就活在 .md 里的 [ ] 或 [x] 上。
常见的复选框坑
- 漏了空格:空框是
[ ]、方括号之间有个空格,不是[]。没这空格,很多渲染器就当普通文本。 - 漏了列表标记:这行得像列表项那样开头,方括号前要有
-(或*/+)加一个空格。 - 勾选是小写 x:
- [x]标记完成。未勾留空格,已勾放一个x。 - 嵌套:把一个任务缩进到另一个下面就成子任务,同一列表里也能混复选框和普通列表项。
FAQ
Markdown 里怎么做复选框?
列表项以短横、一个空格、再方括号开头:"- [ ]" 是空框,"- [x]" 是勾选框。空框方括号里的那个空格要有。这是 GitHub 风格 Markdown(GFM),所以 GitHub 和任何支持 GFM 任务列表的工具里都能用。
为什么我的复选框显示成 [ ] 文本、不是方框?
你打开它的工具没在渲染 GFM 任务列表,显示的是原始源码。两个常见语法失误也会导致:方括号里少了空格(要写 "- [ ]" 不是 "- []"),或者方括号前少了短横和空格。用一个渲染任务列表的工具打开,正确的 "- [ ]" 就会变成方框。
能真的点一下 Markdown 复选框来勾选吗?
看工具。纯文本编辑器里,方框只是文本。GitHub 上你能在 issue 或 pull request 里点,但在纯仓库文件里不行。NoteLoom 里,方框在编辑和阅读两个视图里都能点,勾选会写回 .md 文件。
"- [ ]" 和 "- [x]" 有什么区别?
"- [ ]"(方括号之间有空格)是未勾项,"- [x]" 是已勾项。源码里只差这个。渲染器把它们画成空框或勾框;NoteLoom 里,已勾的 "- [x]" 项还会显示成置灰 + 删除线。
Markdown 任务列表是标准吗?
它属于 GitHub 风格 Markdown(GFM),标准 Markdown 的一个常用超集,不是原始的 CommonMark 规范。多数现代 Markdown 工具都支持,但一个严格只认 CommonMark 的渲染器可能把 "- [ ]" 当字面文本。
能嵌套复选框、或和普通列表混用吗?
能。把一个任务项缩进到另一个下面就成了子任务,同一个列表里可以混着放复选框和普通的项目符号或数字项。每行 "- [ ]" 不管怎么嵌套,都是它自己的一个复选框。
拿到真能点勾的复选框
用 Chrome / Edge / Arc 打开 NoteLoom,打开一个带任务列表的 .md 文件,点方框就能勾掉、直接存回文件里的 [ ] 或 [x]。不用装、不用账号。