John MacFarlane

johnmacfarlane.net · Personal blog · on HN since 2009

John MacFarlane, a philosophy professor at UC Berkeley, writes about pandoc, CommonMark, and Markdown, which he created or helped design.

What HN saysCommenters are impressed that a philosophy professor built pandoc, which many use daily, and link his 'Beyond Markdown' post for background on Markdown's limits.
130HN people shared it
120linked it in comments
13stories submitted
129story points
3 months agolast shared
2009people per year2026

Most-shared posts

  1. 1
    Beyond Markdown (2018)
    9 people · 13 points · first shared 2020 · 1 comments on HN
  2. 2
  3. 3
    Epub
    5 people · first shared 2012
  4. 4
    Pandocs markdown
    3 people · first shared 2013
  5. 5
    Pandoc: universal document converter
    2 people · 103 points · first shared 2011 · 11 comments on HN
  6. 6
    Babelmark2
    2 people · first shared 2018
  7. 7
    Index
    2 people · first shared 2020
  8. 8
    Installing
    2 people · first shared 2014
  9. 9
    Faq
    2 people · first shared 2012
  10. 10
    Try
    2 people · first shared 2012
  11. 11
    Pandoc 1.13 released
    1 people · 3 points · first shared 2014 · discussion on HN
  12. 12
    Babelmark2
    1 people · first shared 2019
  13. 13
    Babelmark2
    1 people · first shared 2017
  14. 14
    Pandoc - a universal document converter
    80 people · 8 points · first shared 2009 · 1 comments on HN
  15. 15
    README
    14 people · first shared 2011

What HN people wrote when they linked it

ezequiel-garzon · 2023-12-09
On the technically advanced end of the spectrum you'll find John MacFarlane [1], professor of philosophy at Berkeley and creator of pandoc [2]. Some people are just amazing. [1] https://johnmacfarlane.net/ [2] https://pandoc.org/
hypertexthero · 2016-08-12
I love Pandoc! Thank you, [John MacFarlane](http://johnmacfarlane.net/)!
phren0logy · 2013-02-22
Fun fact: John MacFarlane, the developer of Haskell's fantastic PanDoc package is a professor of philosophy at UC Berkeley! http://johnmacfarlane.net/
aanet · 2026-08-04
That a professor of philosophy [1] made tools [2] that are used by millions around the world... that's just mind boggling. In a good (great!) way. Pandoc is my go-to tool. Thank you, Sir! [1] https://johnmacfarlane.net/index.html [2] https://johnmacfarlane.net/tools.html
touchmarine · 2021-11-26
A language like markdown but has fewer and simpler rules, can be configured, and comes with auto-formatting (like go fmt or pretty). It is an attempt of a next step for markdown (https://johnmacfarlane.net/beyond-markdown.html). It has a lightweight core feature set but provides an escape hatch for teams that need more of those extra features through config. Would love to anwser any questions. I also wrote the README just now in one go so for any clarifications please reach out (here/github/scout at touchlabs.io).
bewuethr · 2020-10-25
I love that he calls [1] the incredibly useful tools he built a product of structured procrastination [2]. [1] https://johnmacfarlane.net/tools [2] http://www.structuredprocrastination.com/
GlennS · 2015-04-12
There are a couple of alternatives that I find quite useful. For very small documents (a couple of pages at most), writing in Markdown and running it through Pandoc (http://johnmacfarlane.net/pandoc/) gives good results for very little effort. For most things, I use Org-Mode for Emacs (http://orgmode.org/), which is an absolute joy to use. It outputs via Latex, and if you want a bit of extra customization you can include Latex statements verbatim. Org-Mode also works as a literate programming environment if you want to include and run bits of code, include parts of other files, or if you want to generate charts or diagrams. Edit: I should also mention that org-mode has a great table editor.
_-_-_-_ · 2015-03-14
I'm still skimming the documentation so I apologize if the answer is obvious, but does anyone know offhand why this is implemented as a fork of Pandoc? Pandoc already has extended markdown features and the creator of pandoc is very much an academic (http://johnmacfarlane.net/), so is there are a reason why these contributions aren't part of pandoc proper?
reconbot · 2014-09-03
I think this is great, I'm all for extending markdown for specific situations but I think the base h1, li, and p tags should be clearly defined. It appears that most parsers could adopt most of the spec without breaking backwards compatibility. (I'm probably wrong.) There's an obvious annoyance with markdown like this, where a lack of a blank line after the headlines causes problems but only in a few parsers. I'm glad to see most of them do the right thing. http://johnmacfarlane.net/babelmark2/?normalize=1&text=%23+I+love+…
jpallen · 2014-02-21
There isn't a perfect way that I'm aware of. In LaTeX, the commands end up translating to direct formatting commands that only make sense in a fixed layout document, so HTML conversion will be an approximation at best. I think Pandoc (http://johnmacfarlane.net/pandoc/) does a reasonable job though.
mesec · 2013-11-13
+1 for Sphinx. For me, it's crucial that code and documentation are kept closely together. As in, changes to the code and the related documentation go in the same commit. In my experience, that's the only way to keep them in sync. Sphinx works great in this scenario, can output the docs in many different formats, default HTML output has search built-in etc. It's cross-platform (although I've used it on Windows and Linux only, I'm pretty sure it works on Macs as well). This is good stuff, too: http://johnmacfarlane.net/pandoc/
clintonc · 2013-09-17
http://johnmacfarlane.net/pandoc/ may be your best friend, in this case :) Here you can write in markdown and include TeX, thereafter converting to many different formats (using, for example, mimeTeX, MathJax, etc).
tmhedberg · 2013-07-26
Not sure about web applications, but Pandoc [1], git-annex [2], and xmonad [3] are a few examples of successful, reasonably-sized applications written in Haskell. It's definitely worth browsing through their code if you want some examples of idiomatic Haskell in a practical context. [1] http://johnmacfarlane.net/pandoc/ [2] http://git-annex.branchable.com/ [3] http://xmonad.org/
ilyagr · 2012-12-15
This would be really easy to implement using pandoc (http://johnmacfarlane.net/pandoc/), which converts Markdown with extensions and LaTeX formulas into LaTeX. I think it supports Org-mode too. Markdown would be excellent for sharing short notes and ideas among mathematicians, as opposed to full-blown papers. Also, great job! I like how simple and efficient the interface is.
1331 · 2012-12-10
It seems that the terminology is causing some confusion. The definition of a wiki is "a website which allows its users to add, modify, or delete its content via a web browser" [1], which is pretty much the opposite of "static." I assume that what you want is a static site generator that has organisational features that are common in wiki software... My favourite wiki software is Gitit [2]. It uses Pandoc [3] to convert from an input format (such as Markdown) to HTML. Perhaps you could write a simple script that iterates through all source files and renders the HTML to a destination directory using Pandoc, creating any subdirectories as required. That minimal solution should be very easy to implement; adding organisational markup within the HTML would require some programming. [1] http://en.wikipedia.org/wiki/Wiki [2] http://gitit.net/ [3] http://johnmacfarlane.net/pandoc/
_pdeschen · 2012-10-26
https://raw.github.com/gist/3956665/d549ea53817335c868e750ca6a29ee20b9… How can this be harder than creating table with Word? Word always gets in the way. Word appears to be easier but down the road, it always end up as a painful process. For me just the benefit of being mergable and delegating styling at the end of the tool chain is just plain great. http://johnmacfarlane.net/pandoc/README.html#tables Edit: rendering issues!
dfc · 2012-10-26
I really hope that they borrow a lot if not everything from pandoc[1]. My only real complaint with pandoc is the table formatting, but I think fiddlosopher is adding org-mode like table support. If you have not taken a pandoc for a spin I highly recommend you do so soon. In addition to being a great markdown dialect the pandoc tool set is the swiss army knife of text formatting. It is amazing how many formats pandoc can read and/or write. [1] http://johnmacfarlane.net/pandoc/README.html EDIT: I spoke too soon, Fiddlosopher continues to impress. I just checked the open issues and a little less than a month ago he added "limited org-table support." Based off of the rest of pandoc "limited" probably means something like 85% to 95% :) https://github.com/jgm/pandoc/issues/519
eslaught · 2012-10-26
You should look at Pandoc[1]. It's a Markdown-to-everything converter, and though I'm not super familiar with the code I believe it's well written. One of my favorite tools for writing. [1]: http://johnmacfarlane.net/pandoc/
yungchin · 2012-01-05
There's pandoc, http://johnmacfarlane.net/pandoc/ but it doesn't magically give you great page layouts in any format, if that's what you meant.
dwc · 2012-01-04
If you find this interesting, you might like Pandoc (see http://johnmacfarlane.net/pandoc/try ). That's a "try it online" page, not quite meant for online authoring but could be made to be. Also available as a standalone utility app and a (haskell) library. I've found this works well, and I love the selection of input/output formats.
quadform · 2011-11-16
I've found that [Pandoc](http://johnmacfarlane.net/pandoc/) has picked up the Markdown torch. It's got the most-needed additions using the probably least-controversial markup additions. Works great, is fast, well-documented, and is actively-maintained.
adimitrov · 2011-08-15
I love John MacFarlane's extension of Markdown: [pandoc](http://johnmacfarlane.net/pandoc/) This, and the fact that gitit is really good, and has math support (which I desperately need,) are the reasons I'm considering finding a hosting solution for happstack and moving all my stuff there…
zdw · 2011-05-20
Pandoc is a great swiss army chainsaw for this sort of thing - I use it for Markdown into LaTeX (then PDF) and to ePub http://johnmacfarlane.net/pandoc/
acangiano · 2011-04-07
I use the excellent Pandoc for my conversion needs: http://johnmacfarlane.net/pandoc/
carterschonwald · 2010-09-08
one tool you may find worth playing with is Pandoc see http://johnmacfarlane.net/pandoc/ it might be very helpful because once you get it working for one format that pandoc supports, you pretty much get support for all the others for free!
scw · 2010-05-19
I've used beamer on occasion and think its great, albeit because I use LaTeX elsewhere: http://en.wikipedia.org/wiki/Beamer_(LaTeX) If you want to go the HTML5 route, I'm guessing pulling the relevant code out of the Google presentation highlighting HTML5 features would be a good exercise; source at: http://code.google.com/p/html5-slides/ For pure wiki syntax, I'd go with Pandoc which allows conversion to both S5 and PDF from a variety of markup languages: http://johnmacfarlane.net/pandoc/
armandososa · 2010-04-06
Thank you, I think I found it: http://diveintomark.org/archives/2009/03/27/dive-into-history-2009-edi… So, HTML is really the best way to write a book? I mean, as a web developer I can write HTML, but I feel like thinking in markup will break my inspiration a bit. Also, in the comments someone mentioned Pandoc, which looks sweet http://johnmacfarlane.net/pandoc/
svat · 2019-11-06
> Try pasting in 10 * characters and you'll see that it's almost impossible. Works fine for me: https://i.imgur.com/QssB5YV.gif Note that: • The premise of the app is that you type or paste in Markdown syntax, and see the corresponding rendered output in the editor (except when the cursor is inside that area). As asterisks have a special meaning in Markdown, you should expect to see bold text (rather than the asterisks) when you type or paste something like asterisk-asterisk-foo-asterisk-asterisk. • The intended meaning of ten asterisks in a row is hard to predict from the Markdown syntax definition. Their rendering as two bold asterisks seems to be not what the majority of Markdown converters do, but according to Babelmark it is consistent with a few, including the original Markdown.pl: https://johnmacfarlane.net/babelmark2/?text=Asterisks+on+the+next+line… (Of course, it is best to avoid any such edge cases where Markdown converters differ; CommonMark notwithstanding.)
hugofirth · 2013-10-16
People who don't use TeX for accessibility reasons might want to give it another look. The tooling has risen in quality and accessibility hugely of late. I use TexPad[1] - which I like enormously. Otherwise, as another commenter mentioned, there is always Markdown. Combined with MathJax[2] and custom style sheets you see many of the same benefits with greatly increased simplicity. A great desktop Markdown editor (if people don't like web based ones) is Mou[3]. Lastly - the advantage to using Markdown is that if you have to work with someone who does use TeX - something like pandoc[4] can be used to convert between formats fairly nicely. One thing I think is missing is a "Make" like program to dictate how to combine multiple Markdown or TeX documents into a single document, which folders to scan for references etc. I've seen a couple of home grown solutions - but nothing that really fit the bill. [1]: https://www.texpadapp.com/ [2]: http://www.mathjax.org/ [3]: http://mouapp.com/ [4]: http://johnmacfarlane.net/pandoc/

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close