[SPIP][PLUGINS] v3.0-->v3.2
[lhc/web/www.git] / www / plugins / odt2spip_32 / inc / xsltml / glayout.xsl
diff --git a/www/plugins/odt2spip_32/inc/xsltml/glayout.xsl b/www/plugins/odt2spip_32/inc/xsltml/glayout.xsl
new file mode 100644 (file)
index 0000000..021a4ef
--- /dev/null
@@ -0,0 +1,220 @@
+<?xml version='1.0' encoding="UTF-8"?>\r
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"\r
+               xmlns:m="http://www.w3.org/1998/Math/MathML"\r
+                version='1.0'>\r
+\r
+<!-- ====================================================================== -->\r
+<!-- $id: glayout.xsl, 2002/17/05 Exp $\r
+     This file is part of the XSLT MathML Library distribution.\r
+     See ./README or http://www.raleigh.ru/MathML/mmltex for\r
+     copyright and other information                                        -->\r
+<!-- ====================================================================== -->\r
+\r
+<xsl:template match="m:mfrac">\r
+       <xsl:choose>\r
+               <xsl:when test="@bevelled='true'">\r
+<!--                   <xsl:text>\raisebox{1ex}{</xsl:text>\r
+                       <xsl:apply-templates select="./*[1]"/>\r
+                       <xsl:text>}\!\left/ \!\raisebox{-1ex}{</xsl:text>\r
+                       <xsl:apply-templates select="./*[2]"/>\r
+                       <xsl:text>}\right.</xsl:text>-->\r
+               </xsl:when>\r
+               <xsl:when test="@linethickness">\r
+                       <xsl:text>\genfrac{}{}{</xsl:text>\r
+                       <xsl:choose>\r
+                               <xsl:when test="number(@linethickness)">\r
+                                       <xsl:value-of select="@linethickness div 10"/>\r
+                                       <xsl:text>ex</xsl:text>\r
+                               </xsl:when>\r
+                               <xsl:when test="@linethickness='thin'">\r
+                                       <xsl:text>.05ex</xsl:text>\r
+                               </xsl:when>\r
+                               <xsl:when test="@linethickness='medium'"/>\r
+                               <xsl:when test="@linethickness='thick'">\r
+                                       <xsl:text>.2ex</xsl:text>\r
+                               </xsl:when>\r
+                               <xsl:otherwise>\r
+                                       <xsl:value-of select="@linethickness"/>\r
+                               </xsl:otherwise>\r
+                       </xsl:choose>\r
+                       <xsl:text>}{}{</xsl:text>\r
+               </xsl:when>\r
+               <xsl:otherwise>\r
+                       <xsl:text>\frac{</xsl:text>\r
+               </xsl:otherwise>\r
+       </xsl:choose>\r
+       <xsl:if test="@numalign='right'">\r
+               <xsl:text>\hfill </xsl:text>\r
+       </xsl:if>\r
+       <xsl:apply-templates select="./*[1]"/>\r
+       <xsl:if test="@numalign='left'">\r
+               <xsl:text>\hfill </xsl:text>\r
+       </xsl:if>\r
+       <xsl:text>}{</xsl:text> \r
+       <xsl:if test="@denomalign='right'">\r
+               <xsl:text>\hfill </xsl:text>\r
+       </xsl:if>\r
+       <xsl:apply-templates select="./*[2]"/>\r
+               <xsl:if test="@denomalign='left'">\r
+               <xsl:text>\hfill </xsl:text>\r
+       </xsl:if>\r
+       <xsl:text>}</xsl:text>\r
+</xsl:template>\r
+\r
+<xsl:template match="m:mroot">\r
+       <xsl:choose>\r
+               <xsl:when test="count(./*)=2">\r
+                       <xsl:text>\sqrt[</xsl:text>\r
+                       <xsl:apply-templates select="./*[2]"/>\r
+                       <xsl:text>]{</xsl:text> \r
+                       <xsl:apply-templates select="./*[1]"/>\r
+                       <xsl:text>}</xsl:text>  \r
+               </xsl:when>\r
+               <xsl:otherwise>\r
+               <!-- number of argumnets is not 2 - code 25 -->\r
+                       <xsl:message>exception 25:</xsl:message>\r
+                       <xsl:text>\text{exception 25:}</xsl:text> \r
+               </xsl:otherwise>\r
+       </xsl:choose>\r
+</xsl:template>\r
+\r
+<xsl:template match="m:msqrt">\r
+       <xsl:text>\sqrt{</xsl:text>\r
+       <xsl:apply-templates/>\r
+       <xsl:text>}</xsl:text>\r
+</xsl:template>\r
+\r
+<xsl:template match="m:mfenced">\r
+       <xsl:choose>\r
+               <xsl:when test="@open">\r
+                       <xsl:if test="translate(@open,'{}[]()|','{{{{{{{')='{'">\r
+                               <xsl:text>\left</xsl:text>\r
+                       </xsl:if>\r
+                       <xsl:if test="@open='{' or @open='}'">\r
+                               <xsl:text>\</xsl:text>\r
+                       </xsl:if>\r
+                       <xsl:value-of select="@open"/>\r
+               </xsl:when>\r
+               <xsl:otherwise><xsl:text>\left(</xsl:text></xsl:otherwise>\r
+       </xsl:choose>\r
+       <xsl:choose>\r
+               <xsl:when test="count(./*)>1">\r
+                       <xsl:variable name="symbol">\r
+                               <xsl:choose>\r
+                                       <xsl:when test="@separators">\r
+                                               <xsl:call-template name="startspace">\r
+                                                       <xsl:with-param name="symbol" select="@separators"/>\r
+                                               </xsl:call-template>\r
+                                       </xsl:when>\r
+                                       <xsl:otherwise>,</xsl:otherwise>\r
+                               </xsl:choose>\r
+                       </xsl:variable>\r
+                       <xsl:for-each select="./*">\r
+                               <xsl:apply-templates select="."/>\r
+                               <xsl:if test="not(position()=last())">\r
+                                       <xsl:choose>\r
+                                               <xsl:when test="position()>string-length($symbol)">\r
+                                                       <xsl:value-of select="substring($symbol,string-length($symbol))"/>\r
+                                               </xsl:when>\r
+                                               <xsl:otherwise>\r
+                                                       <xsl:value-of select="substring($symbol,position(),1)"/>\r
+                                               </xsl:otherwise>\r
+                                       </xsl:choose>\r
+                               </xsl:if>\r
+                       </xsl:for-each>\r
+               </xsl:when>\r
+               <xsl:otherwise>\r
+                       <xsl:apply-templates/>\r
+               </xsl:otherwise>\r
+       </xsl:choose>\r
+       <xsl:choose>\r
+               <xsl:when test="@close">\r
+                       <xsl:if test="translate(@open,'{}[]()|','{{{{{{{')='{'">\r
+                               <xsl:text>\right</xsl:text>\r
+                       </xsl:if>\r
+                       <xsl:if test="@open='{' or @open='}'">\r
+                               <xsl:text>\</xsl:text>\r
+                       </xsl:if>               \r
+                       <xsl:value-of select="@close"/>\r
+               </xsl:when>\r
+               <xsl:otherwise><xsl:text>\right)</xsl:text></xsl:otherwise>\r
+       </xsl:choose>   \r
+</xsl:template>\r
+\r
+<xsl:template match="m:mphantom">\r
+       <xsl:text>\phantom{</xsl:text>\r
+       <xsl:apply-templates/>\r
+       <xsl:text>}</xsl:text>\r
+</xsl:template>\r
+\r
+<xsl:template match="m:menclose">\r
+       <xsl:choose>\r
+               <xsl:when test="@notation = 'actuarial'">\r
+                       <xsl:text>\overline{</xsl:text>\r
+                       <xsl:apply-templates/>\r
+                       <xsl:text>\hspace{.2em}|}</xsl:text>\r
+               </xsl:when>\r
+               <xsl:when test="@notation = 'radical'">\r
+                       <xsl:text>\sqrt{</xsl:text>\r
+                       <xsl:apply-templates/>\r
+                       <xsl:text>}</xsl:text>\r
+               </xsl:when>\r
+               <xsl:otherwise>\r
+                       <xsl:text>\overline{)</xsl:text>\r
+                       <xsl:apply-templates/>\r
+                       <xsl:text>}</xsl:text>\r
+               </xsl:otherwise>\r
+       </xsl:choose>\r
+</xsl:template>\r
+\r
+<xsl:template match="m:mrow">\r
+       <xsl:apply-templates/>\r
+</xsl:template>\r
+\r
+<xsl:template match="m:mstyle">\r
+       <xsl:if test="@background">\r
+               <xsl:text>\colorbox[rgb]{</xsl:text>\r
+               <xsl:call-template name="color">\r
+                       <xsl:with-param name="color" select="@background"/>\r
+               </xsl:call-template>\r
+               <xsl:text>}{$</xsl:text>\r
+       </xsl:if>\r
+       <xsl:if test="@color">\r
+               <xsl:text>\textcolor[rgb]{</xsl:text>\r
+               <xsl:call-template name="color">\r
+                       <xsl:with-param name="color" select="@color"/>\r
+               </xsl:call-template>\r
+               <xsl:text>}{</xsl:text>\r
+       </xsl:if>\r
+       <xsl:apply-templates/>\r
+       <xsl:if test="@color">\r
+               <xsl:text>}</xsl:text>\r
+       </xsl:if>\r
+       <xsl:if test="@background">\r
+               <xsl:text>$}</xsl:text>\r
+       </xsl:if>\r
+</xsl:template>\r
+<!--\r
+\r
+<xsl:template match="m:mstyle">\r
+       <xsl:if test="@displaystyle='true'">\r
+               <xsl:text>{\displaystyle</xsl:text>\r
+       </xsl:if>                       \r
+       <xsl:if test="@scriptlevel=2">\r
+               <xsl:text>{\scriptscriptstyle</xsl:text>        \r
+       </xsl:if>\r
+       <xsl:apply-templates/>\r
+       <xsl:if test="@scriptlevel=2">\r
+               <xsl:text>}</xsl:text>\r
+       </xsl:if>\r
+       <xsl:if test="@displaystyle='true'">\r
+               <xsl:text>}</xsl:text>\r
+       </xsl:if>\r
+</xsl:template>\r
+-->\r
+\r
+<xsl:template match="m:merror">\r
+       <xsl:apply-templates/>\r
+</xsl:template>\r
+\r
+</xsl:stylesheet>
\ No newline at end of file