Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is there a markdown parser supported on Jekyll that plays nicely with mathjax?

I use a Jekyll based blog and need a markdown parser that won't clobber my Mathjax expressions (for instance, interpreting b_t - b_{t-1} as b<em>t - b</em> t - 1). Mathjax and markdown get along nicely over on math.stackechange.com and mathoverflow.net. Some parsers also need to double escape the begin/end equation symbols \\(, while it seems others do not.

Things that aren't quite solutions:

Redcarpet2 has an option for no_intra_emphasis, which avoids underscores between letters being clobbered, so b_t is okay, but it still clobbers b_{t-1}.

There's a Jekyll plugin that lets you use liquid syntax, like {% m}% to begin an equation, but this means the file is no longer written in pure markdown and thus not portable to other contexts.

So is there a different markdown interpreter I can drop into Jekyll and experience bliss? If not, what workarounds have others found?

like image 565
cboettig Avatar asked May 03 '12 20:05

cboettig


2 Answers

Markdown won't process anything in block-level HTML tag, so simply wrapping Mathjax syntax in <div> </div> protects the Mathjax syntax, regardless of the interpreter. This nicely avoids having to escape the commands that begin and end the Mathjax, such as \( (inline) and \[ (display). Thanks to @lsegal on Github for pointing this out to me.

like image 159
cboettig Avatar answered Nov 12 '22 05:11

cboettig


Yes there's and it's kramdown, I've gone through the process of configuring it and it's explained at my blog. I've also found you can get Redcarpet to accept inline math using the syntax \\( some math \\). It'll output \( math \)to MathJax. Anyway, I prefer kramdown as it states to support LaTeX.

like image 40
pepper_chico Avatar answered Nov 12 '22 06:11

pepper_chico