We’ve seen that plain-text editing is distinguished by the absence of formatting features such as bold and italic text, headings, and bulleted lists.
But we’ve also seen that plain-text files can contain instructions for formatting in the form of HTML. HTML is an abbreviation for “HyperText Markup Language.”
HTML provides both structural and formatting features to plain-text documents through “tags” such as
- h1 – Level-one heading
- p – paragraph text
- strong – make text stand out
- em – indicate emphasis
- ul – unordered list
- li – list item
In HTML, what you’ve just read would look like this.
<h1>Why Markdown?</h1>
<p>We've seen that plain-text editing is distinguished by the absence of formatting features such as <strong>bold</strong> and <em>italic</em> text, headings, and bulleted lists.</p>
<p>But we've also seen that plain-text files can contain instructions for formatting in the form of HTML. HTML is an abbreviation for "HyperText Markup Language."</p>
<p>HTML provides both structural and formatting features to plain-text documents through "tags" such as</p>
<ul>
<li>h1 - Level-one heading</li>
<li>p - paragraph text</li>
<li>strong - make text stand out</li>
<li>em - indicate emphasis</li>
<li>ul - unordered list</li>
<li>li - list item</li>
</ul>What if there were a simpler way to provide these structural and presentational instructions? We might want to call this simplified substitute for the hypertext markup language … You get the idea.
First introduced in 2004 by Daring Fireball blogger John Gruber, together with Aaron Swartz, Markdown was originally designed to accomplish two goals, in fact. One was simply to make the contents of a plain text document easy for a human to read by using many of the same symbols regularly employed for decades in plain text files (such as _, *, and -) but doing so in a standardized way. The second, accomplished through this standardization, was to make plain-text documents easy for a computer program to parse. Such a program could instantly transform Markdown into HTML for display on a web page. For simple web pages, at least, writing in Markdown would be faster and less error-prone that writing in HTML.
Markdown documents are useful in and of themselves — as highly readable, highly interoperable text (interoperable because it looks exactly the same across different editors and operating systems) — and also useful as a tool for quickly producing web-ready content without the hassle of typing all those opening and closing HTML tags.
This latter use is admittedly best suited to documents with a relatively simple structure, though one of the great features of Markdown is that it accepts HTML tags wherever these are needed for functionality not provided by the standard’s core set of symbols.
In Markdown, our content above might look like this.
# Why Markdown?
We've seen that plain-text editing is distinguished by the absence of formatting features such as **bold** and *italic* text, headings, and bulleted lists.
But we've also seen that plain-text files can contain instructions for formatting in the form of HTML. HTML is an abbreviation for "HyperText Markup Language."
HTML provides both structural and formatting features to plain-text documents through "tags" such as
- h1 - Level-one heading
- p - paragraph text
- strong - make text stand out
- em - indicate emphasis
- ul - unordered list
- li - list item