]> granicus.if.org Git - multimarkdown/commitdiff
FIXED: Fix issue with dollar math delimiters inside code (fixes #134)
authorFletcher T. Penney <fletcher@fletcherpenney.net>
Tue, 17 Jul 2018 14:55:41 +0000 (10:55 -0400)
committerFletcher T. Penney <fletcher@fletcherpenney.net>
Tue, 17 Jul 2018 14:55:41 +0000 (10:55 -0400)
Sources/libMultiMarkdown/html.c
tests/MMD6Tests/Math.fodt
tests/MMD6Tests/Math.html
tests/MMD6Tests/Math.htmlc
tests/MMD6Tests/Math.tex
tests/MMD6Tests/Math.text

index c1e6a289960bb4aa37abc12697d74384b07fbb3d..e639d39cad27309868b6df6e58b10fbe928d1ac1 100644 (file)
@@ -2144,21 +2144,11 @@ void mmd_export_token_html_raw(DString * out, const char * source, token * t, sc
                        break;
 
                case MATH_DOLLAR_SINGLE:
-                       if (t->mate) {
-                               (t->start < t->mate->start) ? ( print_const("\\(") ) : ( print_const("\\)") );
-                       } else {
-                               print_const("$");
-                       }
-
+                       print_const("$");
                        break;
 
                case MATH_DOLLAR_DOUBLE:
-                       if (t->mate) {
-                               (t->start < t->mate->start) ? ( print_const("\\[") ) : ( print_const("\\]") );
-                       } else {
-                               print_const("$$");
-                       }
-
+                       print_const("$$");
                        break;
 
                case MATH_PAREN_OPEN:
@@ -2227,6 +2217,24 @@ void mmd_export_token_html_math(DString * out, const char * source, token * t, s
                        print_const("\\]");
                        break;
 
+               case MATH_DOLLAR_SINGLE:
+                       if (t->mate) {
+                               (t->start < t->mate->start) ? ( print_const("\\(") ) : ( print_const("\\)") );
+                       } else {
+                               print_const("$");
+                       }
+
+                       break;
+
+               case MATH_DOLLAR_DOUBLE:
+                       if (t->mate) {
+                               (t->start < t->mate->start) ? ( print_const("\\[") ) : ( print_const("\\]") );
+                       } else {
+                               print_const("$$");
+                       }
+
+                       break;
+
                case MATH_PAREN_OPEN:
                        print_const("\\(");
                        break;
index 43dd04de35c0b1989ceecdd62198e6ad05cefce5..6b3f74573e6ce54e7096053938623e93355b5796 100644 (file)
@@ -339,6 +339,14 @@ office:mimetype="application/vnd.oasis.opendocument.text">
 <text:p text:style-name="Standard">25</text:p>
 
 <text:p text:style-name="Standard"><text:span text:style-name="math">\[\pi~2\]</text:span></text:p>
+
+<text:p text:style-name="Standard"><text:span text:style-name="Source_20_Text">$a*x*y$</text:span></text:p>
+
+<text:p text:style-name="Standard"><text:span text:style-name="Source_20_Text">$$a*x*y$$</text:span></text:p>
+
+<text:p text:style-name="Standard"><text:span text:style-name="Source_20_Text">\\(a*x*y\\)</text:span></text:p>
+
+<text:p text:style-name="Standard"><text:span text:style-name="Source_20_Text">\\[a*x*y\\]</text:span></text:p>
 </office:text>
 </office:body>
 </office:document>
index 2405da2034d7d729c8e6e04c97b89b2c40aa135e..a80ad6b0e05b14948462a2c374908f290805f1af 100644 (file)
 
 <p><span class="math">\[\pi~2\]</span></p>
 
+<p><code>$a*x*y$</code></p>
+
+<p><code>$$a*x*y$$</code></p>
+
+<p><code>\\(a*x*y\\)</code></p>
+
+<p><code>\\[a*x*y\\]</code></p>
+
 </body>
 </html>
 
index d54b7d57ab7ea5f3f5c6953a650f07d628e0aa86..349f1631bea07541d22e17ab0b4ce20b027c851e 100644 (file)
@@ -62,3 +62,11 @@ latex config:        article</p>
 <p>25</p>
 
 <p>\[\pi~2\]</p>
+
+<p><code>$a*x*y$</code></p>
+
+<p><code>$$a*x*y$$</code></p>
+
+<p><code>\\(a*x*y\\)</code></p>
+
+<p><code>\\[a*x*y\\]</code></p>
index 12c830c3445654d0d32acae9b36a0ec765fed9cc..99d4d0bfb192e94a1c0984e00739835cb5749901 100644 (file)
@@ -64,5 +64,13 @@ $a *foo* b$
 
 \[\pi~2\]
 
+\texttt{\$a*x*y\$}
+
+\texttt{\$\$a*x*y\$\$}
+
+\texttt{\textbackslash{}\textbackslash{}(a*x*y\textbackslash{}\textbackslash{})}
+
+\texttt{\textbackslash{}\textbackslash{}[a*x*y\textbackslash{}\textbackslash{}]}
+
 \input{mmd6-article-footer}
 \end{document}
index 8327524b20391fecaa4a6f700864c0812773c5ad..d96162bac4be3ff830e9835985ccd58f815e7d24 100644 (file)
@@ -62,3 +62,11 @@ $a *foo* b$
 25
 
 \\[\pi~2\\]
+
+`$a*x*y$`
+
+`$$a*x*y$$`
+
+`\\(a*x*y\\)`
+
+`\\[a*x*y\\]`