Markdown



  1. Thus, “Markdown” is two things: (1) a plain text formatting syntax; and (2) a software tool, written in Perl, that converts the plain text formatting.
  2. Multitran.com: Free online dictionary in English, German, French, Spanish.

Download

Markdown Code Block

Skip navigation. Toggle navigation 日本語Markdownユーザー会.

Markdown 1.0.1 (18 KB) — 17 Dec 2004

Introduction

Markdown is a text-to-HTML conversion tool for web writers. Markdownallows you to write using an easy-to-read, easy-to-write plain textformat, then convert it to structurally valid XHTML (or HTML).

Markdown

Thus, “Markdown” is two things: (1) a plain text formatting syntax;and (2) a software tool, written in Perl, that converts the plain textformatting to HTML. See the Syntax page for details pertaining toMarkdown’s formatting syntax. You can try it out, right now, using theonline Dingus.

The overriding design goal for Markdown’s formatting syntax is to makeit as readable as possible. The idea is that a Markdown-formatteddocument should be publishable as-is, as plain text, without lookinglike it’s been marked up with tags or formatting instructions. WhileMarkdown’s syntax has been influenced by several existing text-to-HTMLfilters, the single biggest source of inspiration for Markdown’ssyntax is the format of plain text email.

Markdown

The best way to get a feel for Markdown’s formatting syntax is simplyto look at a Markdown-formatted document. For example, you can viewthe Markdown source for the article text on this page here:http://daringfireball.net/projects/markdown/index.text

(You can use this ‘.text’ suffix trick to view the Markdown source forthe content of each of the pages in this section, e.g. theSyntax and License pages.)

Markdown is free software, available under a BSD-style open sourcelicense. See the License page for more information.

Discussion List

I’ve set up a public mailing list for discussion about Markdown.Any topic related to Markdown — both its formatting syntax andits software — is fair game for discussion. Anyone who is interestedis welcome to join.

It’s my hope that the mailing list will lead to good ideas for futureimprovements to Markdown.

Markdown

Installation and Requirements

Markdown requires Perl 5.6.0 or later. Welcome to the 21st Century.Markdown also requires the standard Perl library module Digest::MD5, which is probably already installed on your server.

Movable Type

Markdown works with Movable Type version 2.6 or later (includingMovable Type 3.0).

  1. Copy the “Markdown.pl” file into your Movable Type “plugins”directory. The “plugins” directory should be in the same directoryas “mt.cgi”; if the “plugins” directory doesn’t already exist, useyour FTP program to create it. Your installation should look likethis:

  2. Once installed, Markdown will appear as an option in Movable Type’sText Formatting pop-up menu. This is selectable on a per-post basis:

    Markdown translates your posts to HTML when you publish; the poststhemselves are stored in your MT database in Markdown format.

  3. If you also install SmartyPants 1.5 (or later), Markdown willoffer a second text formatting option: “Markdown WithSmartyPants”. This option is the same as the regular “Markdown”formatter, except that it automatically uses SmartyPants to createtypographically correct curly quotes, em-dashes, and ellipses. Seethe SmartyPants web page for more information.

  4. To make Markdown (or “Markdown With SmartyPants”) your defaulttext formatting option for new posts, go to Weblog Config:Preferences.

Markdown Images

Note that by default, Markdown produces XHTML output. To configureMarkdown to produce HTML 4 output, see “Configuration”, below.

Blosxom

Markdown

Markdown works with Blosxom version 2.0 or later.

  1. Rename the “Markdown.pl” plug-in to “Markdown” (case isimportant). Movable Type requires plug-ins to have a “.pl”extension; Blosxom forbids it.

  2. Copy the “Markdown” plug-in file to your Blosxom plug-ins folder.If you’re not sure where your Blosxom plug-ins folder is, see theBlosxom documentation for information.

  3. That’s it. The entries in your weblog will now automatically beprocessed by Markdown.

  4. If you’d like to apply Markdown formatting only to certainposts, rather than all of them, Markdown can optionally be used inconjunction with Blosxom’s Meta plug-in. First, install theMeta plug-in. Next, open the Markdown plug-in file in a texteditor, and set the configuration variable $g_blosxom_use_metato 1. Then, simply include a “meta-markup: Markdown” header lineat the top of each post you compose using Markdown.

BBEdit

Markdown works with BBEdit 6.1 or later on Mac OS X. It also workswith BBEdit 5.1 or later and MacPerl 5.6.1 on Mac OS 8.6 or later. Ifyou’re running Mac OS X 10.2 (Jaguar), you may need to install thePerl module Digest::MD5 from CPAN; Digest::MD5 comespre-installed on Mac OS X 10.3 (Panther).

  1. Copy the “Markdown.pl” file to appropriate filters folder in your“BBEdit Support” folder. On Mac OS X, this should be:

    See the BBEdit documentation for more details on the location ofthese folders.

    You can rename “Markdown.pl” to whatever you wish.

  2. That’s it. To use Markdown, select some text in a BBEdit document,then choose Markdown from the Filters sub-menu in the “#!” menu, orthe Filters floating palette

Configuration

By default, Markdown produces XHTML output for tags with empty elements.E.g.:

Markdown can be configured to produce HTML-style tags; e.g.:

Movable Type

You need to use a special MTMarkdownOptions container tag in eachMovable Type template where you want HTML 4-style output:

The easiest way to use MTMarkdownOptions is probably to put theopening tag right after your <body> tag, and the closing tag rightbefore </body>.

To suppress Markdown processing in a particular template, i.e. topublish the raw Markdown-formatted text without translation into(X)HTML, set the output attribute to ‘raw’:

Markdown

Command-Line

Use the --html4tags command-line switch to produce HTML output from aUnix-style command line. E.g.:

Type perldoc Markdown.pl, or read the POD documentation within theMarkdown.pl source code for more information.

Acknowledgements

Aaron Swartz deserves a tremendous amount of credit for his feedback on thedesign of Markdown’s formatting syntax. Markdown is much better thanksto Aaron’s ideas, feedback, and testing. Also, Aaron’s html2textis a very handy (and free) utility for turning HTML intoMarkdown-formatted plain text.

Nathaniel Irons, Dan Benjamin, Daniel Bogan, and Jason Perkinsalso deserve thanks for their feedback.

Michel Fortin has ported Markdown to PHP; it’s a splendid port, and highly recommended for anyone looking for a PHP implementation of Markdown.