- From: Michael Smith via cvs-syncmail <cvsmail@w3.org>
- Date: Sun, 03 May 2009 09:26:43 +0000
- To: public-html-commits@w3.org
Update of /sources/public/html5/markup/tools In directory hutz:/tmp/cvs-serv20361/tools Modified Files: specgen.xsl toc.xsl Log Message: h:tml; added unexpanded TOC Index: specgen.xsl =================================================================== RCS file: /sources/public/html5/markup/tools/specgen.xsl,v retrieving revision 1.30 retrieving revision 1.31 diff -u -d -r1.30 -r1.31 --- specgen.xsl 3 May 2009 04:20:35 -0000 1.30 +++ specgen.xsl 3 May 2009 09:26:41 -0000 1.31 @@ -446,12 +446,7 @@ </xsl:when> </xsl:choose> </xsl:template> - <xsl:template match='h:h2[ - not(../@id = "abstract") - and not(../@id="status") - and not(../@id="toc") - ]' - > + <xsl:template match='h:h2'> <xsl:variable name="myid"> <xsl:value-of select="../@id"/> </xsl:variable> @@ -484,7 +479,11 @@ </xsl:if> <xsl:text> </xsl:text> <a class="hash" href="#{$myid}">#</a> - <xsl:if test='not(parent::h:*[contains(@class,"no-toc")])'> + <xsl:if test='not(../@id = "abstract") + and not(../@id="status") + and not(../@id="unexpanded-toc") + and not(../@id="toc") + and not(parent::h:*[contains(@class,"no-toc")])'> <xsl:text> </xsl:text> <xsl:choose> <xsl:when test="not($chunk=0)"> @@ -598,10 +597,24 @@ </xsl:template> <xsl:template match="*[@class='toc']"> <div class="toc"> + <xsl:copy-of select='@*[namespace-uri()="" or namespace-uri="http://www.w3.org/XML/1998/namespace"]'/> <xsl:text> </xsl:text> - <xsl:for-each select=".."> - <xsl:call-template name="toc1"/> - </xsl:for-each> + <xsl:apply-templates select='node()'/> + <xsl:choose> + <xsl:when test="@id='unexpanded-toc'"> + <xsl:call-template name="toc"> + <xsl:with-param name="unexpanded" select="1"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="@id='toc'"> + <xsl:call-template name="toc"/> + </xsl:when> + <xsl:otherwise> + <xsl:for-each select=".."> + <xsl:call-template name="toc1"/> + </xsl:for-each> + </xsl:otherwise> + </xsl:choose> </div> </xsl:template> </xsl:stylesheet> Index: toc.xsl =================================================================== RCS file: /sources/public/html5/markup/tools/toc.xsl,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- toc.xsl 3 May 2009 04:20:35 -0000 1.2 +++ toc.xsl 3 May 2009 09:26:41 -0000 1.3 @@ -2,20 +2,16 @@ xmlns:h='http://www.w3.org/1999/xhtml' xmlns='http://www.w3.org/1999/xhtml' version='1.0' id='xslt'> - <xsl:template match="h:*[@id = 'toc']"> - <xsl:text> </xsl:text> - <div id='toc' class='toc'> - <xsl:copy-of select='@*[namespace-uri()="" or namespace-uri="http://www.w3.org/XML/1998/namespace"]'/> - <xsl:apply-templates select='node()'/> - <xsl:call-template name="toc"/> - </div> - </xsl:template> <xsl:template name='toc'> + <xsl:param name="unexpanded" select="0"/> <xsl:for-each select='//*[@id=$sectionsID]'> - <xsl:call-template name='toc1'/> + <xsl:call-template name='toc1'> + <xsl:with-param name="unexpanded" select="$unexpanded"/> + </xsl:call-template> </xsl:for-each> <xsl:for-each select='//*[@id=$appendicesID]'> <xsl:call-template name='toc1'> + <xsl:with-param name="unexpanded" select="$unexpanded"/> <xsl:with-param name='alpha' select='true()'/> </xsl:call-template> </xsl:for-each> @@ -23,6 +19,7 @@ <xsl:template name='toc1'> <xsl:param name='prefix'/> <xsl:param name='alpha'/> + <xsl:param name="unexpanded" select="0"/> <xsl:variable name='subsections' select='h:section[not(contains(@class,"no-toc"))]'/> <xsl:if test='$subsections'> <ul> @@ -61,7 +58,12 @@ </xsl:otherwise> </xsl:choose> </xsl:variable> - <li id='{$frag}-toc'> + <li> + <xsl:if test="$unexpanded=0"> + <xsl:attribute name="id"> + <xsl:value-of select="concat($frag,'-toc')"/> + </xsl:attribute> + </xsl:if> <a href='{$filename}#{$frag}'> <xsl:if test="not(contains(@class,'no-number'))"> <xsl:value-of select='$number'/> @@ -75,9 +77,12 @@ <span class="obsolete">(obsolete)</span> </xsl:if> <xsl:text> </xsl:text> - <xsl:call-template name='toc1'> - <xsl:with-param name='prefix' select='$number'/> - </xsl:call-template> + <xsl:if test="$unexpanded=0"> + <xsl:call-template name='toc1'> + <xsl:with-param name='prefix' select='$number'/> + <xsl:with-param name='unexpanded' select='$unexpanded'/> + </xsl:call-template> + </xsl:if> </li> <xsl:text> </xsl:text> </xsl:for-each>
Received on Sunday, 3 May 2009 09:26:52 UTC