cvs: php-gtk /docs chunk-filename.xsl html.xsl.in

From: Date: Tue, 13 Mar 2001 14:27:41 +0000
Subject: cvs: php-gtk /docs chunk-filename.xsl html.xsl.in
Groups: php.gtk 
Request: Send a blank email to php-gtk+get-772@lists.php.net to get a copy of this message
jmoore Tue Mar 13 06:27:41 2001 EDT Added files: /php-gtk/docs chunk-filename.xsl Modified files: /php-gtk/docs html.xsl.in Log: Nice naming of chunked output files now. (borrowed and slightly modified from phpdoc)

Index: php-gtk/docs/html.xsl.in diff -u php-gtk/docs/html.xsl.in:1.2 php-gtk/docs/html.xsl.in:1.3 --- php-gtk/docs/html.xsl.in:1.2 Tue Mar 13 04:44:53 2001 +++ php-gtk/docs/html.xsl.in Tue Mar 13 06:27:41 2001 @@ -2,7 +2,7 @@ HTML specific stylesheet - $Id: html.xsl.in,v 1.2 2001/03/13 12:44:53 jmoore Exp $ + $Id: html.xsl.in,v 1.3 2001/03/13 14:27:41 jmoore Exp $ --> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" @@ -10,10 +10,12 @@ <xsl:import href="@DOCBOOKXSL_HTML@"/> <xsl:include href="html-common.xsl"/> +<xsl:include href="chunk-filename.xsl" /> <xsl:output method="html" encoding="@ENCODING@"/> <xsl:param name="base.dir" select="'html/'"/> -<xsl:param name="use.id.as.filename" select="1"/> +<xsl:param name="root.filename" select="'index'" /> +<xsl:param name="use.id.as.filename" select="1" /> </xsl:stylesheet> Index: php-gtk/docs/chunk-filename.xsl +++ php-gtk/docs/chunk-filename.xsl <!-- This templates takes filename from id attribute if present. In the future, something like this will be standard part of stylesheets. $Id: chunk-filename.xsl,v 1.1 2001/03/13 14:27:41 jmoore Exp $ --> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <!-- <xsl:param name="use.id.as.filename" select="1"/> --> <xsl:template match="*" mode="chunk-filename"> <xsl:param name="recursive" select="false()"/> <!-- returns the filename of a chunk --> <xsl:variable name="ischunk"><xsl:call-template name="chunk"/></xsl:variable> <xsl:variable name="filename"> <xsl:call-template name="dbhtml-filename"/> </xsl:variable> <xsl:variable name="dir"> <xsl:call-template name="dbhtml-dir"/> </xsl:variable> <xsl:choose> <xsl:when test="$ischunk='0'"> <!-- if called on something that isn't a chunk, walk up... --> <xsl:choose> <xsl:when test="count(parent::*)>0"> <xsl:apply-templates mode="chunk-filename" select="parent::*"> <xsl:with-param name="recursive" select="$recursive"/> </xsl:apply-templates> </xsl:when> <!-- unless there is no up, in which case return "" --> <xsl:otherwise></xsl:otherwise> </xsl:choose> </xsl:when> <xsl:when test="not($recursive) and $filename != ''"> <!-- if this chunk has an explicit name, use it --> <xsl:if test="$dir != ''"> <xsl:value-of select="$dir"/> <xsl:text>/</xsl:text> </xsl:if> <xsl:value-of select="$filename"/> </xsl:when> <xsl:when test="not($recursive) and @id != '' and $use.id.as.filename=1 and name(.) != 'book'"> <!-- if this chunk has an explicit name in id attribute, use it --> <xsl:if test="$dir != ''"> <xsl:value-of select="$dir"/> <xsl:text>/</xsl:text> </xsl:if> <xsl:value-of select="@id"/> <xsl:value-of select="$html.ext"/> </xsl:when> <xsl:when test="name(.)='set'"> <xsl:value-of select="$root.filename"/> <xsl:if test="not($recursive)"> <xsl:value-of select="$html.ext"/> </xsl:if> </xsl:when> <xsl:when test="name(.)='book'"> <xsl:choose> <xsl:when test="count(parent::*)>0"> <xsl:text>bk</xsl:text> <xsl:number level="any" format="01"/> </xsl:when> <xsl:otherwise> <xsl:value-of select="$root.filename"/> </xsl:otherwise> </xsl:choose> <xsl:if test="not($recursive)"> <xsl:value-of select="$html.ext"/> </xsl:if> </xsl:when> <xsl:when test="name(.)='article'"> <xsl:choose> <xsl:when test="/set"> <!-- in a set, make sure we inherit the right book info... --> <xsl:apply-templates mode="chunk-filename" select="parent::*"> <xsl:with-param name="recursive" select="true()"/> </xsl:apply-templates> </xsl:when> <xsl:when test="count(parent::*)>0"> <!-- if we aren't the root, name them numerically ... --> <xsl:text>ar</xsl:text> <xsl:number level="any" format="01" from="book"/> </xsl:when> <xsl:otherwise> <xsl:value-of select="$root.filename"/> </xsl:otherwise> </xsl:choose> <xsl:if test="not($recursive)"> <xsl:value-of select="$html.ext"/> </xsl:if> </xsl:when> <xsl:when test="name(.)='preface'"> <xsl:if test="/set"> <xsl:apply-templates mode="chunk-filename" select="parent::*"> <xsl:with-param name="recursive" select="true()"/> </xsl:apply-templates> </xsl:if> <xsl:text>pr</xsl:text> <xsl:number level="any" format="01" from="book"/> <xsl:if test="not($recursive)"> <xsl:value-of select="$html.ext"/> </xsl:if> </xsl:when> <xsl:when test="name(.)='chapter'"> <xsl:if test="/set"> <xsl:apply-templates mode="chunk-filename" select="parent::*"> <xsl:with-param name="recursive" select="true()"/> </xsl:apply-templates> </xsl:if> <xsl:text>ch</xsl:text> <xsl:number level="any" format="01" from="book"/> <xsl:if test="not($recursive)"> <xsl:value-of select="$html.ext"/> </xsl:if> </xsl:when> <xsl:when test="name(.)='appendix'"> <xsl:if test="/set"> <xsl:apply-templates mode="chunk-filename" select="parent::*"> <xsl:with-param name="recursive" select="true()"/> </xsl:apply-templates> </xsl:if> <xsl:text>ap</xsl:text> <xsl:number level="any" format="a" from="book"/> <xsl:if test="not($recursive)"> <xsl:value-of select="$html.ext"/> </xsl:if> </xsl:when> <xsl:when test="name(.)='part'"> <xsl:if test="/set"> <xsl:apply-templates mode="chunk-filename" select="parent::*"> <xsl:with-param name="recursive" select="true()"/> </xsl:apply-templates> </xsl:if> <xsl:text>pt</xsl:text> <xsl:number level="any" format="01" from="book"/> <xsl:if test="not($recursive)"> <xsl:value-of select="$html.ext"/> </xsl:if> </xsl:when> <xsl:when test="name(.)='reference'"> <xsl:if test="/set"> <xsl:apply-templates mode="chunk-filename" select="parent::*"> <xsl:with-param name="recursive" select="true()"/> </xsl:apply-templates> </xsl:if> <xsl:text>rn</xsl:text> <xsl:number level="any" format="01" from="book"/> <xsl:if test="not($recursive)"> <xsl:value-of select="$html.ext"/> </xsl:if> </xsl:when> <xsl:when test="name(.)='refentry'"> <xsl:if test="parent::reference"> <xsl:apply-templates mode="chunk-filename" select="parent::*"> <xsl:with-param name="recursive" select="true()"/> </xsl:apply-templates> </xsl:if> <xsl:text>re</xsl:text> <xsl:number level="any" format="01" from="book"/> <xsl:if test="not($recursive)"> <xsl:value-of select="$html.ext"/> </xsl:if> </xsl:when> <xsl:when test="name(.)='colophon'"> <xsl:if test="/set"> <xsl:apply-templates mode="chunk-filename" select="parent::*"> <xsl:with-param name="recursive" select="true()"/> </xsl:apply-templates> </xsl:if> <xsl:text>co</xsl:text> <xsl:number level="any" format="01" from="book"/> <xsl:if test="not($recursive)"> <xsl:value-of select="$html.ext"/> </xsl:if> </xsl:when> <xsl:when test="name(.)='sect1' or name(.)='section'"> <xsl:apply-templates mode="chunk-filename" select="parent::*"> <xsl:with-param name="recursive" select="true()"/> </xsl:apply-templates> <xsl:text>s</xsl:text> <xsl:number level="any" format="01" from="preface|chapter|appendix"/> <xsl:if test="not($recursive)"> <xsl:value-of select="$html.ext"/> </xsl:if> </xsl:when> <xsl:when test="name(.)='bibliography'"> <xsl:if test="/set"> <xsl:apply-templates mode="chunk-filename" select="parent::*"> <xsl:with-param name="recursive" select="true()"/> </xsl:apply-templates> </xsl:if> <xsl:text>bi</xsl:text> <xsl:number level="any" format="01" from="book"/> <xsl:if test="not($recursive)"> <xsl:value-of select="$html.ext"/> </xsl:if> </xsl:when> <xsl:when test="name(.)='glossary'"> <xsl:if test="/set"> <xsl:apply-templates mode="chunk-filename" select="parent::*"> <xsl:with-param name="recursive" select="true()"/> </xsl:apply-templates> </xsl:if> <xsl:text>go</xsl:text> <xsl:number level="any" format="01" from="book"/> <xsl:if test="not($recursive)"> <xsl:value-of select="$html.ext"/> </xsl:if> </xsl:when> <xsl:when test="name(.)='index'"> <xsl:if test="/set"> <xsl:apply-templates mode="chunk-filename" select="parent::*"> <xsl:with-param name="recursive" select="true()"/> </xsl:apply-templates> </xsl:if> <xsl:text>ix</xsl:text> <xsl:number level="any" format="01" from="book"/> <xsl:if test="not($recursive)"> <xsl:value-of select="$html.ext"/> </xsl:if> </xsl:when> <xsl:when test="name(.)='setindex'"> <xsl:text>si</xsl:text> <xsl:number level="any" format="01" from="set"/> <xsl:if test="not($recursive)"> <xsl:value-of select="$html.ext"/> </xsl:if> </xsl:when> <xsl:otherwise> <xsl:text>chunk-filename-error-</xsl:text> <xsl:value-of select="name(.)"/> <xsl:number level="any" format="01" from="set"/> <xsl:if test="not($recursive)"> <xsl:value-of select="$html.ext"/> </xsl:if> </xsl:otherwise> </xsl:choose> </xsl:template> </xsl:stylesheet>
« previous php.gtk (#772) next »