Есть ли парсер markdown, поддерживаемый на Jekyll, который хорошо играет с mathjax?

Я использую блог на основе Jekyll и нужен парсер markdown, который не будет бить мои выражения Mathjax (например, интерпретация b_t - b_{t-1} as b<em>t - b</em> t - 1). Mathjax и markdown прекрасно ладят math.stackechange.com и mathoverflow.net - ... Некоторые Парсеры также должны дважды избежать символов уравнения начала/конца (, в то время как другие, похоже, нет.

вещи, которые не совсем решений:

Redcarpet2 есть возможность no_intra_emphasis, что позволяет избежать подчеркивания между буквами, которые били, так что b_t это нормально, но он все еще колотит b_{t-1}.

есть плагин Jekyll, который позволяет использовать синтаксис liquid, например {% m}% чтобы начать уравнение, но это означает, что файл больше не записывается в чистом markdown и, следовательно, не переносится в другие контексты.

Итак, есть ли другой интерпретатор markdown, который я могу бросить в Jekyll и испытать блаженство? Если нет, то какие обходные пути нашли другие?

2 ответов


Markdown ничего не будет обрабатывать в HTML-теге блочного уровня, поэтому просто оберните синтаксис Mathjax в <div> </div> защищает синтаксис Mathjax, независимо от переводчика. Это позволяет избежать необходимости избегать команд, которые начинаются и заканчиваются Mathjax, таких как \( (inline) и \[ (дисплей). Спасибо @lsegal на Github за то, что указал мне на это.


Да есть, и это kramdown, Я прошел через процесс его настройки, и это объясняется в мой блог. Я также обнаружил, что вы можете заставить Redcarpet принимать встроенную математику, используя синтаксис \( some math \). Он выведет \( math \)в MathJax. В любом случае, я предпочитаю kramdown, как говорится, для поддержки латекса.