簡體   English   中英

在 Markdown 中的表的內聯代碼塊中使用 pipe (|) 的正確方法是什么?

[英]What is the correct way to use a pipe (|) in an inline code block in a table in Markdown?

在 Markdown 中的一個表中,一個 pipe 字符( | )用於分隔表中的列。 但是,它也是代碼中非常常見的字符,尤其是作為按位或運算符。 在 Markdown 表中編寫內聯代碼塊時,pipe 應該如何轉義(如果有的話)?

有兩種候選方法可以將 pipe 寫成文字。

這被 Pandoc 和 StackOverflow 接受並正確呈現,但 GitHub 沒有:

| My Table!          |
| ------------------ |
| behold, a pipe: `|`|

這被 GitHub 接受並正確呈現,但 Pandoc 或 StackOverflow 不接受和呈現:

| My Table!           |
| ------------------- |
| behold, a pipe: `\|`|

pipe這個是否需要轉義好像不清楚。 Markdown 規范中是否描述了 pipe 是否必須轉義?

沒有“正確”的方法,因為 Markdown 沒有標准或官方規范,其原始創建者拒絕對其進行標准化或編寫規范的努力( 1、2 它變成了一場丑陋的戰斗。 最終結果是 Markdown 的巴爾干化。

但是全世界都在圍繞 CommonMark 作為標准。 甚至 GitHub Flavored Markdown (GFM) 現在也是 CommonMark 的超集。

順便說一句,Pandoc 支持 Markdown 的多個變體。您應該能夠強制它與 GitHub 一樣工作。

StackOverflow 應該使用 CommonMark(其創始人之一 Jeff Atwood 是 CommonMark 的主要負責人之一)。 但是由於 CommonMark 不包含表語法,所以看起來 SO 的實現偏離了 GitHub 的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM