什么是“极端情况”?在不同的降价实现中?
作者写了以下关于不同markdown实现之间的差异:
结果是,很多语言都有很多 Markdown 解析器,并且它们在很多极端情况(以及很多不那么极端的情况)中给出的结果都略有不同。我在 Clojure 中能做的最好的事情就是选择一个实现并尽力匹配它。 http://briancarper.net/blog/415/
我的问题是 - 这些“极端情况”是什么'?
The author writes the following about the differences between different markdown implementations:
The result is that there are a lot of Markdown parsers in a lot of languages, and they all give slightly different results in a lot of corner cases (and a lot of not-so-corner cases). The best I could do in Clojure is pick one implementation and try my best to match it.
http://briancarper.net/blog/415/
My question is - what are these 'corner cases'?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
在 Markdown 解析中分析此类极端情况的最好方法是 John MacFarlane 的 Babelmark 2:您输入一些 Markdown 代码,它会显示它所知道的所有 Markdown 渲染器之间的所有输出差异。
The nicest way to analyse such corner cases in Markdown parsing is John MacFarlane's Babelmark 2: You enter some Markdown code and it shows you all the output differences between all the Markdown renderers it knows about.
如果我们说主要的实现是 John Gruber 的原始实现,以及后续的 showdown.js 实现 - 现在 似乎是人们使用的 - 然后是列表极端情况位于此处。
编辑 - 看来 showdown.js 有错误 - 和 你应该看看pagedown.js 就像他们在 stackoverflow 上使用的那样。
If we say the major implementations are John Gruber's original, and the subsequent showdown.js implementation - which now appears to be the one people use - then the list of corner cases is here.
Edit - it appears that showdown.js has bugs - and you should look at pagedown.js as the one they use on stackoverflow.