Markdown is a Lightweight markup language, originally created by John Gruber and Aaron Swartz, which aims for maximum readability and “publishability” of both its input and output forms, taking many cues from existing conventions for marking up plain text in email. Markdown converts its marked-up text input to valid, well-formed XHTML and replaces left-pointing angle brackets (
<) and ampersands with their corresponding character entity references. Markdown was originally implemented in Perl by Gruber, but has since been re-implemented by others in a variety of programming languages (see below for list). It is distributed under a BSD-style license and is included with, or available as a plugin for, several content management systems.
This wiki uses the Maruku implementation of Markdown and therefore supports some additional extensions such as footnotes as well as Maruku’s metadata syntax. See Formatting rules for details. The Emacs markdown-mode in combination with the Firefox mozex extension for using an external text editor can help in editing pages. There is also a Vim mode.
This is not an exhaustive listing of Markdown’s syntax, and in many cases multiple styles of syntax are available to accomplish a particular effect. See the full Markdown syntax for more information. Characters which are ordinarily interpreted by Markdown as formatting commands will instead be interpreted literally if preceded by a backslash; for example, the sequence
\* would output an asterisk rather than beginning a span of emphasized text. Markdown also does not transform any text within a “raw” block-level XHTML element; thus it is possible to include sections of XHTML within a Markdown source document by wrapping them in block-level XHTML tags.
A paragraph is one or more consecutive lines of text separated by one or more blank lines. Normal paragraphs should not be indented with spaces or tabs:
This is a paragraph. It has two sentences. This is another paragraph. It also has two sentences.
*emphasis* (e.g., italics) **strong emphasis** (e.g., boldface)
- An item in a bulleted (unordered) list - Another item in a bulleted list 1. An item in an enumerated (ordered) list 2. Another item in an enumerated list
HTML headings are produced by placing a number of hashes before the header text corresponding to the level of heading desired (HTML offers six levels of headings), like so:
# First-level heading #### Fourth-level heading
The first two heading levels also have an alternate syntax:
First-level heading =================== Second-level heading --------------------
> This text will be enclosed in an HTML blockquote element.
[link text here](link.address.here "link title here")
![Alt text here](Image URL here "Image title here")
Horizontal rules are created by placing three or more hyphens, asterisks, or underscores on a line by themselves. You may use spaces between the hyphens or asterisks. Each of the following lines will produce a horizontal rule:
* * * *** ***** - - - ---------------------------------------
BBEdit: has built-in support (syntax highlighting, preview without requiring conversion to HTML) as of version 8.6
Eclipse: Experimental plugin by Daniel Winterstein
Emacs: markdown-mode by Jason Blevins
Scrivener from Literature and Latte for Mac OS X
TextMate: has built-in support
Texts - a WYSIWYM Markdown editor for Mac and Windows
Vim: Markdown Vim Mode
WMD - a lightweight Markdown-to-HTML editor
(:markdown:)“tag” to wrap around Markdown, and inside the tag,
The implementations above by default refer to Markdown to XHTML conversion. Converters to and from other formats are also available.
Markdown to LaTeX, Markdown+LaTeX to MathML, etc.
XHTML to Markdown:
Other formats to Markdown:
MarkdownDragAndDrop by Fletcher Penney
OmniOutlinerMarkdownPlugin by Fletcher Penney
refbase (web-based literature management app that outputs citations in Markdown format)
Text to HTML Converter-Markdown (a Windows GUI to converts Markdown text to HTML)
Markdownr.com (a simple website to preview markdown in real time)
Pastedown (a pastebin service for Markdown documents)
Readown (Markdown viewer application for Mac OS X)
Rippledoc (an easy-to-use documentation processing script for multi-chapter docs)
Marked is a Markdown previewer for OS X.
A large number of links were recently removed from the Markdown Wikipedia page, citing the link farm policy. Furthermore, since infogami is defunct, the previous semi-official Markdown wiki hosted there cannot be edited by those without a previously created account. I merged the content of the Wikipedia and infogami pages and created this page in order to provide a publicly-editable repository of Markdown-related links.—Jason Blevins, April 19, 2009 19:19 EDT