JATS writer: use both tex and mml alternatives for math when possible.
This commit is contained in:
parent
bf651b966b
commit
e5e2a6e0a5
2 changed files with 28 additions and 13 deletions
|
@ -381,14 +381,16 @@ inlineToJATS _ (Math t str) = do
|
|||
let tagtype = case t of
|
||||
DisplayMath -> "disp-formula"
|
||||
InlineMath -> "inline-formula"
|
||||
return $ inTagsSimple tagtype $
|
||||
case res of
|
||||
Right r -> text $ Xml.ppcElement conf
|
||||
$ fixNS r
|
||||
Left _ -> inTagsSimple "tex-math"
|
||||
let rawtex = inTagsSimple "tex-math"
|
||||
$ text "<![CDATA[" <>
|
||||
text str <>
|
||||
text "]]>"
|
||||
return $ inTagsSimple tagtype $
|
||||
case res of
|
||||
Right r -> inTagsSimple "alternatives" $
|
||||
cr <> rawtex $$
|
||||
(text $ Xml.ppcElement conf $ fixNS r)
|
||||
Left _ -> rawtex
|
||||
inlineToJATS _ (Link _attr [Str t] ('m':'a':'i':'l':'t':'o':':':email, _))
|
||||
| escapeURI t == email =
|
||||
return $ inTagsSimple "email" $ text (escapeStringForXML email)
|
||||
|
|
|
@ -1048,39 +1048,52 @@ These should not be escaped: \$ \\ \> \[ \{</preformat>
|
|||
</list-item>
|
||||
<list-item>
|
||||
<p>
|
||||
<inline-formula><mml:math display="inline" xmlns:mml="http://www.w3.org/1998/Math/MathML"><mml:mrow><mml:mn>2</mml:mn><mml:mo>+</mml:mo><mml:mn>2</mml:mn><mml:mo>=</mml:mo><mml:mn>4</mml:mn></mml:mrow></mml:math></inline-formula>
|
||||
<inline-formula><alternatives>
|
||||
<tex-math><![CDATA[2+2=4]]></tex-math>
|
||||
<mml:math display="inline" xmlns:mml="http://www.w3.org/1998/Math/MathML"><mml:mrow><mml:mn>2</mml:mn><mml:mo>+</mml:mo><mml:mn>2</mml:mn><mml:mo>=</mml:mo><mml:mn>4</mml:mn></mml:mrow></mml:math></alternatives></inline-formula>
|
||||
</p>
|
||||
</list-item>
|
||||
<list-item>
|
||||
<p>
|
||||
<inline-formula><mml:math display="inline" xmlns:mml="http://www.w3.org/1998/Math/MathML"><mml:mrow><mml:mi>x</mml:mi><mml:mo>∈</mml:mo><mml:mi>y</mml:mi></mml:mrow></mml:math></inline-formula>
|
||||
<inline-formula><alternatives>
|
||||
<tex-math><![CDATA[x \in y]]></tex-math>
|
||||
<mml:math display="inline" xmlns:mml="http://www.w3.org/1998/Math/MathML"><mml:mrow><mml:mi>x</mml:mi><mml:mo>∈</mml:mo><mml:mi>y</mml:mi></mml:mrow></mml:math></alternatives></inline-formula>
|
||||
</p>
|
||||
</list-item>
|
||||
<list-item>
|
||||
<p>
|
||||
<inline-formula><mml:math display="inline" xmlns:mml="http://www.w3.org/1998/Math/MathML"><mml:mrow><mml:mi>α</mml:mi><mml:mo>∧</mml:mo><mml:mi>ω</mml:mi></mml:mrow></mml:math></inline-formula>
|
||||
<inline-formula><alternatives>
|
||||
<tex-math><![CDATA[\alpha \wedge \omega]]></tex-math>
|
||||
<mml:math display="inline" xmlns:mml="http://www.w3.org/1998/Math/MathML"><mml:mrow><mml:mi>α</mml:mi><mml:mo>∧</mml:mo><mml:mi>ω</mml:mi></mml:mrow></mml:math></alternatives></inline-formula>
|
||||
</p>
|
||||
</list-item>
|
||||
<list-item>
|
||||
<p>
|
||||
<inline-formula><mml:math display="inline" xmlns:mml="http://www.w3.org/1998/Math/MathML"><mml:mn>223</mml:mn></mml:math></inline-formula>
|
||||
<inline-formula><alternatives>
|
||||
<tex-math><![CDATA[223]]></tex-math>
|
||||
<mml:math display="inline" xmlns:mml="http://www.w3.org/1998/Math/MathML"><mml:mn>223</mml:mn></mml:math></alternatives></inline-formula>
|
||||
</p>
|
||||
</list-item>
|
||||
<list-item>
|
||||
<p>
|
||||
<inline-formula><mml:math display="inline" xmlns:mml="http://www.w3.org/1998/Math/MathML"><mml:mi>p</mml:mi></mml:math></inline-formula>-Tree
|
||||
<inline-formula><alternatives>
|
||||
<tex-math><![CDATA[p]]></tex-math>
|
||||
<mml:math display="inline" xmlns:mml="http://www.w3.org/1998/Math/MathML"><mml:mi>p</mml:mi></mml:math></alternatives></inline-formula>-Tree
|
||||
</p>
|
||||
</list-item>
|
||||
<list-item>
|
||||
<p>
|
||||
Here’s some display math:
|
||||
<disp-formula><mml:math display="block" xmlns:mml="http://www.w3.org/1998/Math/MathML"><mml:mrow><mml:mfrac><mml:mi>d</mml:mi><mml:mrow><mml:mi>d</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:mfrac><mml:mi>f</mml:mi><mml:mo stretchy="false" form="prefix">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false" form="postfix">)</mml:mo><mml:mo>=</mml:mo><mml:munder><mml:mo>lim</mml:mo><mml:mrow><mml:mi>h</mml:mi><mml:mo accent="false">→</mml:mo><mml:mn>0</mml:mn></mml:mrow></mml:munder><mml:mfrac><mml:mrow><mml:mi>f</mml:mi><mml:mo stretchy="false" form="prefix">(</mml:mo><mml:mi>x</mml:mi><mml:mo>+</mml:mo><mml:mi>h</mml:mi><mml:mo stretchy="false" form="postfix">)</mml:mo><mml:mo>−</mml:mo><mml:mi>f</mml:mi><mml:mo stretchy="false" form="prefix">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false" form="postfix">)</mml:mo></mml:mrow><mml:mi>h</mml:mi></mml:mfrac></mml:mrow></mml:math></disp-formula>
|
||||
Here’s some display math: <disp-formula><alternatives>
|
||||
<tex-math><![CDATA[\frac{d}{dx}f(x)=\lim_{h\to 0}\frac{f(x+h)-f(x)}{h}]]></tex-math>
|
||||
<mml:math display="block" xmlns:mml="http://www.w3.org/1998/Math/MathML"><mml:mrow><mml:mfrac><mml:mi>d</mml:mi><mml:mrow><mml:mi>d</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:mfrac><mml:mi>f</mml:mi><mml:mo stretchy="false" form="prefix">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false" form="postfix">)</mml:mo><mml:mo>=</mml:mo><mml:munder><mml:mo>lim</mml:mo><mml:mrow><mml:mi>h</mml:mi><mml:mo accent="false">→</mml:mo><mml:mn>0</mml:mn></mml:mrow></mml:munder><mml:mfrac><mml:mrow><mml:mi>f</mml:mi><mml:mo stretchy="false" form="prefix">(</mml:mo><mml:mi>x</mml:mi><mml:mo>+</mml:mo><mml:mi>h</mml:mi><mml:mo stretchy="false" form="postfix">)</mml:mo><mml:mo>−</mml:mo><mml:mi>f</mml:mi><mml:mo stretchy="false" form="prefix">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false" form="postfix">)</mml:mo></mml:mrow><mml:mi>h</mml:mi></mml:mfrac></mml:mrow></mml:math></alternatives></disp-formula>
|
||||
</p>
|
||||
</list-item>
|
||||
<list-item>
|
||||
<p>
|
||||
Here’s one that has a line break in it:
|
||||
<inline-formula><mml:math display="inline" xmlns:mml="http://www.w3.org/1998/Math/MathML"><mml:mrow><mml:mi>α</mml:mi><mml:mo>+</mml:mo><mml:mi>ω</mml:mi><mml:mo>×</mml:mo><mml:msup><mml:mi>x</mml:mi><mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:math></inline-formula>.
|
||||
<inline-formula><alternatives>
|
||||
<tex-math><![CDATA[\alpha + \omega \times x^2]]></tex-math>
|
||||
<mml:math display="inline" xmlns:mml="http://www.w3.org/1998/Math/MathML"><mml:mrow><mml:mi>α</mml:mi><mml:mo>+</mml:mo><mml:mi>ω</mml:mi><mml:mo>×</mml:mo><mml:msup><mml:mi>x</mml:mi><mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:math></alternatives></inline-formula>.
|
||||
</p>
|
||||
</list-item>
|
||||
</list>
|
||||
|
|
Loading…
Reference in a new issue