Definition of a good parent

This is an older version of the spec. Markdown is a plain text definition of a good parent for writing structured documents, based on conventions used for indicating formatting in email and usenet posts. It was developed in 2004 by John Gruber, who wrote the first Markdown-to-HTML converter in Perl, and it soon became ubiquitous. In the next decade, dozens of implementations were developed in many languages.

Some extended the original Markdown syntax with conventions for footnotes, tables, and other document elements. What distinguishes Markdown from many other lightweight markup syntaxes, which are often easier to write, is its readability. The overriding design goal for Markdown’s formatting syntax is to make it as readable as possible. The idea is that a Markdown-formatted document should be publishable as-is, as plain text, without looking like it’s been marked up with tags or formatting instructions. List item one continued with a second paragraph followed by an Indented block.

List item continued with a third paragraph. List item two continued with an open block. This paragraph is part of the preceding list item. This list is nested and does not require explicit item continuation.

This paragraph belongs to item two of the outer list. John Gruber’s canonical description of Markdown’s syntax does not specify the syntax unambiguously. How much indentation is needed for a sublist? The spec says that continuation paragraphs need to be indented four spaces, but is not fully explicit about sublists.

It is natural to think that they, too, must be indented four spaces, but Markdown. Is a blank line needed before a block quote or heading? Most implementations do not require the blank line. John Gruber has also spoken in favor of requiring the blank lines. Is a blank line needed before an indented code block?