diff options
author | Shaun McCance <shaunm@gnome.org> | 2012-02-29 18:25:14 -0500 |
---|---|---|
committer | Shaun McCance <shaunm@gnome.org> | 2012-02-29 18:25:14 -0500 |
commit | ba764543cd6e44e6a8fa2778814b0993a9a2993b (patch) | |
tree | 7e4dd3307f114e07323e22f26443e21eb0504e6e | |
parent | 0f59420821a618e005eeb292601d48639e4c611b (diff) | |
download | yelp-xsl-ba764543cd6e44e6a8fa2778814b0993a9a2993b.tar.gz |
mal2html-media: Support xml:space on TTML
-rw-r--r-- | xslt/common/html.xsl | 2 | ||||
-rw-r--r-- | xslt/mallard/html/mal2html-media.xsl | 57 |
2 files changed, 55 insertions, 4 deletions
diff --git a/xslt/common/html.xsl b/xslt/common/html.xsl index bca04c93..3f3d8475 100644 --- a/xslt/common/html.xsl +++ b/xslt/common/html.xsl @@ -1228,6 +1228,8 @@ span.media-current { line-height: 20px; } div.media-ttml { margin: 0; padding: 0; } +.media-ttml-pre { white-space: pre; } +.media-ttml-nopre { white-space: normal; } div.media-ttml-div { text-align: </xsl:text><xsl:value-of select="$left"/><xsl:text>; display: none; diff --git a/xslt/mallard/html/mal2html-media.xsl b/xslt/mallard/html/mal2html-media.xsl index fe9ccfe0..ff412d51 100644 --- a/xslt/mallard/html/mal2html-media.xsl +++ b/xslt/mallard/html/mal2html-media.xsl @@ -157,7 +157,28 @@ FIXME </xsl:template> <xsl:template mode="mal2html.ttml.mode" match="tt:body"> - <div class="media-ttml"> + <div> + <xsl:attribute name="class"> + <xsl:text>media-ttml</xsl:text> + <xsl:choose> + <xsl:when test="@xml:space"> + <xsl:if test="@xml:space='preserve'"> + <xsl:text> media-ttml-pre</xsl:text> + </xsl:if> + <xsl:if test="@xml:space='default'"> + <xsl:text> media-ttml-nopre</xsl:text> + </xsl:if> + </xsl:when> + <xsl:otherwise> + <xsl:if test="../@xml:space='preserve'"> + <xsl:text> media-ttml-pre</xsl:text> + </xsl:if> + <xsl:if test="../@xml:space='default'"> + <xsl:text> media-ttml-nopre</xsl:text> + </xsl:if> + </xsl:otherwise> + </xsl:choose> + </xsl:attribute> <xsl:call-template name="html.lang.attrs"> <xsl:with-param name="parent" select="../self::tt:tt"/> </xsl:call-template> @@ -176,8 +197,18 @@ FIXME <xsl:with-param name="range" select="$range"/> </xsl:call-template> </xsl:variable> - <div class="media-ttml-node media-ttml-div"> + <div> + <xsl:attribute name="class"> + <xsl:text>media-ttml-node media-ttml-div</xsl:text> + <xsl:if test="@xml:space='preserve'"> + <xsl:text> media-ttml-pre</xsl:text> + </xsl:if> + <xsl:if test="@xml:space='default'"> + <xsl:text> media-ttml-nopre</xsl:text> + </xsl:if> + </xsl:attribute> <xsl:call-template name="html.lang.attrs"/> + <xsl:copy-of select="@xml:space"/> <xsl:attribute name="data-ttml-begin"> <xsl:value-of select="substring-before($beginend, ',')"/> </xsl:attribute> @@ -213,7 +244,16 @@ FIXME <xsl:with-param name="range" select="$range"/> </xsl:call-template> </xsl:variable> - <div class="media-ttml-node media-ttml-p"> + <div> + <xsl:attribute name="class"> + <xsl:text>media-ttml-node media-ttml-p</xsl:text> + <xsl:if test="@xml:space='preserve'"> + <xsl:text> media-ttml-pre</xsl:text> + </xsl:if> + <xsl:if test="@xml:space='default'"> + <xsl:text> media-ttml-nopre</xsl:text> + </xsl:if> + </xsl:attribute> <xsl:call-template name="html.lang.attrs"/> <xsl:attribute name="data-ttml-begin"> <xsl:value-of select="substring-before($beginend, ',')"/> @@ -237,7 +277,16 @@ FIXME <xsl:with-param name="range" select="$range"/> </xsl:call-template> </xsl:variable> - <span class="media-ttml-node media-ttml-span"> + <span> + <xsl:attribute name="class"> + <xsl:text>media-ttml-node media-ttml-span</xsl:text> + <xsl:if test="@xml:space='preserve'"> + <xsl:text> media-ttml-pre</xsl:text> + </xsl:if> + <xsl:if test="@xml:space='default'"> + <xsl:text> media-ttml-nopre</xsl:text> + </xsl:if> + </xsl:attribute> <xsl:call-template name="html.lang.attrs"/> <xsl:attribute name="data-ttml-begin"> <xsl:value-of select="substring-before($beginend, ',')"/> |