Markdeep

2018-11-25

Much like Remark, Markdeep is a client-side rendering framework for Markdown. It's interesting because supports building a static site with Markdown, but with no generation step: you can simply include the 'markdeep line' at the end of the file and publish it. Like Remark, it requires client-side JavaScript to work, though. Because the rendering is done in JavaScript, it integrates with Highlight.js to perform automatic source code highlighting, and it has ASCII art diagram rendering, which reminds me a bit of ditaa. The output is simple and attractive...it seems like a nice way to publish one-off posts.

There are a couple of cool tweaks that make it work well with Emacs, which has the superb markdown-mode by Jason Blevins.

First, even though the file names for markdeep should be .md.html, Emacs works best if editing is done in markdown-mode. This can be accomplished with simple header:

<!-- -*- mode: markdown; -*-  -->

Second, you don't need to run markdown on the file to view it, but rather simply open it in a browser. It's easy to bring over HTML-mode's C-c C-v binding to markdown-mode:

(define-key markdown-mode-map (kbd "C-c C-v") 'browse-url-of-buffer)

This allows a nice workflow of editing and previewing with no further adjustments, I've found.

Markdeep