Writing with Markdown

Not that it shows in the posts in this space, but I write for a living. The software that I use varies based on the type of writing that I’m doing. Much of my work in done using a word processor, a text editor, or with an online tool like Google Docs or Writeboard. Over the last few weeks, though, I’ve started using Markdown again to write and format documents, and this time around I’m actually liking it.

A little background

Markdown is a Perl script written by John Gruber which converts a plain text file (that is formatted with a very simple syntax) to HTML. The syntax is very similar to that used when adding content to a wiki. For example, a single # marks a level 1 heading, an * is a bulleted list item, and surrounding text with _ will change it to italics.

I first tried Markdown a year or two ago. And to be honest, I wasn’t overly impressed with it. At the time, I couldn’t see the point to it. But after trying it again, Markdown has grown on me. For me, it’s a great addition to my writer’s toolkit on Linux. And it fits in with my philosophy about the utilities that I run on Linux: they should be small, flexible, and useful

Throughout the rest of this post, I’ll be using the word Markdown to refer to both the syntax and the script.

How I’ve been using Markdown

I’ve been using Markdown to write articles and blog posts. With an article, I’ll write the first couple of drafts in a text editor, then convert the article to a word processor document (more about this later). Then, I do the final polishing in OpenOffice.org Writer and send the finished product off to my editors.

With blog post, well … I’m not always connected to the Internet. Using Markdown, I can quickly write multiple posts and convert them to HTML. When I’m back online, I just copy and paste the posts into WordPress and publish them. It’s quick and it’s simple. In case you’re wondering, I mainly use Markdown in this way when I’m using my Eee PC.

All of this sounds like a lot of extra work, but it isn’t. I found that Markdown’s syntax was easy to learn, and I can write quickly using it. The conversion to other formats only takes a few seconds — open a terminal window, change to the directory where the file lives, quickly type a command, and the conversion is done.

The tools I use

emacs_markdown.pngSince Markdown-formatted files are plain text, I use a text editor. My editor of choice is Emacs. Please, no comments about how (enter the name of another editor here) is better than Emacs. I like Emacs. I use it. It helps me get the job done. And Emacs has a nice Markdown mode. The mode is easy to use and I can do a conversion to HTML from within Emacs.

Another tool that I’ve started to use is Writr, which is a dedicated Markdown editor. Writrwritr.png is alpha software, and lacks features like syntax highlighting, automatic insertion of formatting characters, and spell checking. But it does have a nifty preview feature and is easy to use. Unfortunately, the software hasn’t been updated in over two years.

I’m also looking into using a WordPress Markdown plugin for this blog, which will eliminate the need to do the HTML conversion.

Remember when I said that I could convert a file to a word processor document? I cheat a little doing that. Markdown only outputs HTML. But using Pandoc, I can convert a Markdown file to RTF which OpenOffice.org Writer can open. I also wrote a little script that uses Pandoc to convert a Markdown file to reStructuredText, and then uses a utility called rst2odt.py to convert the file to OpenOffice.org Writer’s native format. OK, that was a tad geeky but it was fun. And useful.


Markdown isn’t for everyone, and it isn’t for every writing task. I’ve found, though, that for some of my writing tasks Markdown makes the process a lot quicker and easier. I can concentrate on writing text. I’m definitely not going to stop using tools like OpenOffice.org or LyX, but for I’m finding that Markdown is great for writing articles and blog posts.

This work is licensed under a Creative Commons Attribution 4.0 International License.

Flattr this!

  • Pingback:   Can lightweight markup languages be used for documentation? by Communications from DMN()

  • http://antrix.net/ deepak

    I never thought someone would actually use Writr! I myself stopped using it long ago (hence the lack of updates) after discovering [vim’s markdown mode][1].

    Feel free to fork Writr and add new features!

    [1]: http://www.flickr.com/photos/antrix/75829704/

  • http://code.google.com/p/txtx LegoBas

    I also like the use of Markdown and other lightweight markup languages for writing, but I am using Windows, not Ubuntu.
    Pandoc is available for Windows, but not with PDF support.

    Someone might want to know I wrote a program called TxTx: http://code.google.com/p/txtx
    It is a Markdown processor for Windows, which creates a PDF from a markdown text file.
    It uses wkhtmltopdf, a HTML to PDF converter (like HTMLDOC but based on Webkit) , which is also available for Linux, so it should be easy to do the same under Linux/Ubuntu.

  • http://developmentality.net Nick Dunn

    I too use Markdown on a daily basis. I find it a great tool, and much simpler a cleaner syntax than HTML. TextMate has great Markdown support, allowing you to preview the document, as well convert to HTML in one step.

    I especially like the syntax for embedding links within the text; I can never remember the real HTML syntax to do so, but in Markdown it’s

    [text to display](link)

    Very easy to use.

  • http://www.thekirbaview.com/ David Kirba

    Hi, I’m looking into using Emacs with markdown to write blog posts as well. Can you elaborate on how you convert to html from within emacs?

  • Jeff Petersen

    Check out the documentation on this page:


  • http://www.facebook.com/profile.php?id=692633374 Maxim Kovalenko

    There is a tool called “WriteMonkey”, a very cool low-key editor, that understands Markdown (and a couple of other formats), and can export them to MS Word or HTML. I found it mostly useful because it has no distracting features, no buttons or anything – it’s just you and your text. Very zen.

  • Scott Nesbitt

    I’m currently working with an editor call UberWriter. Very similar in concept to WriteMonkey. And do far I’ve been impressed with its export feature (among other things). Look for a post about UberWriter in this space in early 2013.