diff --git a/src/md4c-html.c b/src/md4c-html.c
index 5229de54..16ba514a 100644
--- a/src/md4c-html.c
+++ b/src/md4c-html.c
@@ -460,8 +460,18 @@ enter_span_callback(MD_SPANTYPE type, void* detail, void* userdata)
case MD_SPAN_IMG: render_open_img_span(r, (MD_SPAN_IMG_DETAIL*) detail); break;
case MD_SPAN_CODE: RENDER_VERBATIM(r, ""); break;
case MD_SPAN_DEL: RENDER_VERBATIM(r, ""); break;
- case MD_SPAN_LATEXMATH: RENDER_VERBATIM(r, ""); break;
- case MD_SPAN_LATEXMATH_DISPLAY: RENDER_VERBATIM(r, ""); break;
+ case MD_SPAN_LATEXMATH:
+ if (r->flags & MD_HTML_FLAG_MATHJAX) {
+ if (r->flags & MD_HTML_FLAG_MATHJAX_USE_DOLLAR) RENDER_VERBATIM(r, "$");
+ else RENDER_VERBATIM(r, "\\(");
+ } else RENDER_VERBATIM(r, "");
+ break;
+ case MD_SPAN_LATEXMATH_DISPLAY:
+ if (r->flags & MD_HTML_FLAG_MATHJAX) {
+ if (r->flags & MD_HTML_FLAG_MATHJAX_USE_DOLLAR) RENDER_VERBATIM(r, "$$");
+ else RENDER_VERBATIM(r, "\\[");
+ } else RENDER_VERBATIM(r, "");
+ break;
case MD_SPAN_WIKILINK: render_open_wikilink_span(r, (MD_SPAN_WIKILINK_DETAIL*) detail); break;
}
@@ -486,8 +496,18 @@ leave_span_callback(MD_SPANTYPE type, void* detail, void* userdata)
case MD_SPAN_IMG: render_close_img_span(r, (MD_SPAN_IMG_DETAIL*) detail); break;
case MD_SPAN_CODE: RENDER_VERBATIM(r, ""); break;
case MD_SPAN_DEL: RENDER_VERBATIM(r, ""); break;
- case MD_SPAN_LATEXMATH: /*fall through*/
- case MD_SPAN_LATEXMATH_DISPLAY: RENDER_VERBATIM(r, ""); break;
+ case MD_SPAN_LATEXMATH:
+ if (r->flags & MD_HTML_FLAG_MATHJAX) {
+ if (r->flags & MD_HTML_FLAG_MATHJAX_USE_DOLLAR) RENDER_VERBATIM(r, "$");
+ else RENDER_VERBATIM(r, "\\)");
+ } else RENDER_VERBATIM(r, "");
+ break;
+ case MD_SPAN_LATEXMATH_DISPLAY:
+ if (r->flags & MD_HTML_FLAG_MATHJAX) {
+ if (r->flags & MD_HTML_FLAG_MATHJAX_USE_DOLLAR) RENDER_VERBATIM(r, "$$");
+ else RENDER_VERBATIM(r, "\\]");
+ } else RENDER_VERBATIM(r, "");
+ break;
case MD_SPAN_WIKILINK: RENDER_VERBATIM(r, ""); break;
}
diff --git a/src/md4c-html.h b/src/md4c-html.h
index 324211da..b7818f85 100644
--- a/src/md4c-html.h
+++ b/src/md4c-html.h
@@ -38,6 +38,8 @@
#define MD_HTML_FLAG_VERBATIM_ENTITIES 0x0002
#define MD_HTML_FLAG_SKIP_UTF8_BOM 0x0004
#define MD_HTML_FLAG_XHTML 0x0008
+#define MD_HTML_FLAG_MATHJAX 0x1000
+#define MD_HTML_FLAG_MATHJAX_USE_DOLLAR 0x2000
/* Render Markdown into HTML.