Hacker News new | ask | show | jobs
by ciroduran 4108 days ago
It seems that Markdown is starting to get a lot of disgregated reference implementations. Some months ago some important Markdown users were behind CommonMark (http://commonmark.org/). I'd think that it would be best to join this conversation rather than splintering Markdown even more.
2 comments

I'm in fundamental disagreement with the principle behind CommonMark. They prioritize standardization over practical usability, and for that reason people will keep splintering markdown.

For example, they do not plan to add syntax highlighting blocks (the ```some code``` on GitHub) to their implementation, because they believe that it is outside the scope of markdown. Then, because a lot of people actually need this feature, they still have to patch or extend or plug-in the functionality into any implementation of CommonMark, leading to fragmentation again. And frankly, the reason that I start writing more markdown is precisely because of the syntax highlighting ability. Oh, and to write scientific articles, math formulas are a deal-breaker.

They want to have a standard, unambiguous syntax specification, a suite of comprehensive tests and a cleanly implemented parser. They want to unify the community of markdown users and developers. All of those are commendable goals. But at the end of the day, it doesn't satisfy my needs, so I'd rather use a messy, poorly specified markdown flavor or even just render the markdown with GitHub's service.

"For example, they do not plan to add syntax highlighting blocks (the ```some code``` on GitHub) to their implementation, because they believe that it is outside the scope of markdown."

To correct the record, fenced code blocks have been there from the beginning: http://spec.commonmark.org/0.18/#fenced-code-blocks.

I guess many has changed since I last looked at CommonMark and perhaps the developers are pragmatic after all. I stand corrected and will try out their implementations now.
They should concentrate on a wide variety of features and make it modular. That way, I could download a build with bold, italic, and spoiler syntax. Or, someone else could download one with only lists, strikeouts, headings, and math formulas. When you're missing even one feature, people go elsewhere.

Lastly, why is everyone hellbent on following the original syntax like it's the word of God? Anytime I hear someone complain about an issue in Markdown, people point to the 2004 syntax and how it's true to spec. Users don't care, they want something usable. I'd be happy if someone creates a completely new spec, and I never hear the word Markdown again. I'm tired of the same issues being passed down.

An alternative would be like what `LaTex` does, a `\usepackage` or similar directive that declares in the source what extension this document requires. Maybe a central repository like CTAN as well.
Wow, I've never seen CommonMark -- hope that comes into common use over everything else!