可能我没看懂?如果你在 Markdown 中开始一个新的代码块,在它的所有变体中,你确实需要一个双换行符和四个空格缩进——在我必须提供的任何渲染器中,一个换行符都行不通。
abc -- Here comes a code block:
<div style="background-color: red"> This is code</div>
产生:
abc -- 这里有一个代码块:
<div style="background-color: red"> This is code</div>
从您所说的看来,MarkdownSharp 似乎在这条规则上做得很好,所以只有一个换行符(但缩进):
abc -- Here comes a code block:
<div style="background-color: red"> This should be code</div>
我们得到一团糟而不是代码块:
abc -- 这里有一个代码块:这应该是代码
我认为 StackOverflow 正在剥离<div>
标签,因为他们认为评论不应该有分裂之类的东西。(?)(一般来说,他们必须做很多其他的处理,不是吗,例如获得语法高亮等等?)
编辑: 我认为人们期望 Markdown 实现是错误的。例如,正如我在下面所说的,没有 'invalid markdown' 这样的东西。它不是一种编程语言或类似的语言。我已经验证了我从命令行中获得的所有三个 Markdown 实现都可以无差别地“转换”随机 .js 和 .c 文件,或者那些插入到其他合理的 markdown 文件中 - 并且还插入了 zip 文件和其他废话 - 到有效的 html 中浏览器根本不介意显示——尽管它是鸡划痕。如果你想排除某些东西,例如在一个 wiki 程序中,你当然可以做一些进一步的事情,就像大多数使用 markdown 的 wiki 程序所做的那样。