最近有用戶問(wèn)我困肩,在簡(jiǎn)書(shū)寫 Markdown, 一條有序列表 item 之后接一條無(wú)序列表 item,為什么 parse 的結(jié)果怀挠,第二個(gè) item 依舊是作為有序列表的第二項(xiàng)顯示糙置,帶有有序列表的列表符號(hào)?
用代碼和結(jié)果示例來(lái)表示就是這樣赢乓,如果我們寫如下的 Markdown source:
1. Foo
- Bar
為什么 parse 后結(jié)果是:
1. Foo
2. Bar
而不是:
1. Foo
Bar
老實(shí)說(shuō)因?yàn)檫@種寫法相對(duì)較少,我以前沒(méi)有想到過(guò)這個(gè)問(wèn)題石窑。簡(jiǎn)書(shū)的 Markdown 規(guī)則原則上是 Github Flavored Markdown 的一個(gè)子集牌芋,并沒(méi)有完全實(shí)現(xiàn) GFM 的所有功能,同時(shí)還有很少量自己的調(diào)整松逊。所以我第一時(shí)間就先去求證一下是不是我們實(shí)現(xiàn)錯(cuò)誤了躺屁。
在 Github 上面,parse 結(jié)果是和我們一致的 (我是個(gè)程序員不會(huì)拼圖只能把倆圖放一起截了...):
由于 Markdown 是一門有著眾多方言的語(yǔ)言经宏,我也又去 Markdown 的發(fā)明者的 Markdown Web Digus 上面試驗(yàn)了一下犀暑,結(jié)果也是一樣的:
試驗(yàn)完之后想了一下,Markdown 現(xiàn)在的 parse 結(jié)果是 HTML烁兰。對(duì)于 HTML 來(lái)說(shuō)耐亏,在 <ol></ol>
標(biāo)簽里如果需要包含 <ul></ul>
的 item 的話,也許你想要的是一個(gè)二級(jí)列表沪斟,也就是下面這樣 (注意第二行無(wú)序列表開(kāi)頭要有空格):
1. Foo
- Bar
parse 后結(jié)果:
- Foo
- Bar