<?xml version="1.0" encoding="utf-8"?> <!-- Basic text formatting, like emphasis, bold, etc. --> <stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <!-- "Logical" styles. --> <!-- Emphasis (normally italic). --> <template name="emph" match="emph|em"> <common formats="/latex/xelatex/"> <xsl:text>\emph{</xsl:text> <xsl:apply-templates /> <xsl:text>}</xsl:text> </common> <common formats="/html/xhtml/"> <em><xsl:apply-templates /></em> </common> </template> <!-- Emphasis inside answers needs to be handled specially in HTML, as it doesn't just flip-flop automatically like it does in LaTeX. --> <template name="emph-in-answer" match="answer//emph|answer//em"> <common formats="/latex/xelatex/"> <xsl:text>\emph{</xsl:text> <xsl:apply-templates /> <xsl:text>}</xsl:text> </common> <common formats="/html/xhtml/"> <strong><xsl:apply-templates /></strong> </common> </template> <!-- Strong emphasis (normally bold). --> <template name="strong" match="strong"> <common formats="/latex/xelatex/"> <xsl:text>\textbf{</xsl:text> <xsl:apply-templates /> <xsl:text>}</xsl:text> </common> <common formats="/html/xhtml/"> <strong><xsl:apply-templates /></strong> </common> </template> <!-- A defined term. --> <template name="term" match="term"> <common formats="/latex/xelatex/"> <xsl:text>\term{</xsl:text> <xsl:apply-templates /> <xsl:text>}</xsl:text> </common> <common formats="/html/xhtml/"> <i class="term"><xsl:apply-templates /></i> </common> </template> <!-- A foreign word or phrase. --> <template name="foreign" match="foreign"> <common formats="/latex/xelatex/"> <xsl:text>\foreign{</xsl:text> <xsl:apply-templates /> <xsl:text>}</xsl:text> </common> <common formats="/html/xhtml/"> <i class="foreign"><xsl:apply-templates /></i> </common> </template> <!-- "Physical" styles. --> <!-- Italics. --> <template name="italic" match="italic"> <common formats="/latex/xelatex/"> <xsl:text>\textit{</xsl:text> <xsl:apply-templates /> <xsl:text>}</xsl:text> </common> <common formats="/html/xhtml/"> <i><xsl:apply-templates /></i> </common> </template> <!-- Bold face. --> <template name="bold" match="bold"> <common formats="/latex/xelatex/"> <xsl:text>\textbf{</xsl:text> <xsl:apply-templates /> <xsl:text>}</xsl:text> </common> <common formats="/html/xhtml/"> <b><xsl:apply-templates /></b> </common> </template> <!-- Underlining. --> <template name="underline" match="underline|u"> <common formats="/latex/xelatex/"> <xsl:text>\uline{</xsl:text> <xsl:apply-templates /> <xsl:text>}</xsl:text> </common> <common formats="/html/xhtml/"> <span style="text-decoration: underline;"><xsl:apply-templates /></span> </common> </template> <!-- Strike-through. --> <template name="strike-through" match="strike-through|line-through|strikethrough|linethrough"> <common formats="/latex/xelatex/"> <xsl:text>\sout{</xsl:text> <xsl:apply-templates /> <xsl:text>}</xsl:text> </common> <common formats="/html/xhtml/"> <span style="text-decoration: line-through;"><xsl:apply-templates /></span> </common> </template> <!-- Center stuff on the page. --> <template name="center" match="center|centering|centre|centring"> <common formats="/latex/xelatex/"> <xsl:text>\begin{center}</xsl:text> <xsl:call-template name="newline-internal" /> <xsl:apply-templates /> <xsl:text>\end{center}</xsl:text> <xsl:call-template name="newline-internal" /> </common> <common formats="/html/xhtml/"> <div style="text-align: center;"> <xsl:apply-templates /> </div> </common> </template> </stylesheet>