svn commit: samba-docs r425 - in trunk/xslt: .

jelmer at samba.org jelmer at samba.org
Wed Mar 16 15:33:49 GMT 2005


Author: jelmer
Date: 2005-03-16 15:33:49 +0000 (Wed, 16 Mar 2005)
New Revision: 425

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba-docs&rev=425

Log:
Add xslt script that can generate dependency makefiles

Added:
   trunk/xslt/generate-dependencies.xsl


Changeset:
Copied: trunk/xslt/generate-dependencies.xsl (from rev 415, trunk/xslt/find-image-dependencies.xsl)
===================================================================
--- trunk/xslt/find-image-dependencies.xsl	2005-03-13 19:20:25 UTC (rev 415)
+++ trunk/xslt/generate-dependencies.xsl	2005-03-16 15:33:49 UTC (rev 425)
@@ -0,0 +1,52 @@
+<?xml version='1.0'?>
+<!--
+	Find the image dependencies of a certain XML file
+	Generates (part of) a Makefile
+
+	- $(FNAME)-images-latex-{png,dvi} for role=latex
+	- $(FNAME)-images-role for all other roles
+	- $(TXTDIR)/$(FNAME)-text 
+
+	(C) Jelmer Vernooij	2004-2005
+-->
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.1">
+	<xsl:output method="text"/>
+
+	<xsl:template match="/">
+		<xsl:for-each select="//mediaobject/imageobject[@role and not(@role=following::imageobject/@role)]">
+			<xsl:call-template name="generate-images">
+				<xsl:with-param name="role"><xsl:value-of select="@role"/></xsl:with-param>
+			</xsl:call-template>
+		</xsl:for-each>
+		<xsl:call-template name="generate-images">
+			<xsl:with-param name="role"/>
+		</xsl:call-template>
+		<xsl:call-template name="generate-txt-chunks"/>
+	</xsl:template>
+
+	<xsl:template name="generate-images">
+		<xsl:value-of select="$target"/><xsl:text>-images-</xsl:text><xsl:value-of select="$role"/><xsl:text> = </xsl:text>
+		<xsl:for-each select="//mediaobject/imageobject[@role=$role]">
+			<xsl:value-of select="imagedata/@fileref"/>
+			<xsl:text> </xsl:text>
+		</xsl:for-each>
+		<xsl:text>&#10;</xsl:text>
+	</xsl:template>
+
+	<xsl:template name="generate-txt-chunks">
+		<xsl:value-of select="$target"/><xsl:text>-txt-chunks: </xsl:text>
+		<xsl:for-each select="(//chapter|//preface|//appendix)[@id]|book">
+			<xsl:value-of select="$txtbasedir"/>
+			<xsl:choose>
+				<xsl:when test="name() = 'book'">
+					<xsl:text>index</xsl:text>
+				</xsl:when>
+				<xsl:when test="@id != ''">
+					<xsl:value-of select="@id"/>
+				</xsl:when>
+			</xsl:choose>
+			<xsl:text>.txt </xsl:text>
+		</xsl:for-each>
+		<xsl:text>&#10;</xsl:text>
+	</xsl:template>
+</xsl:stylesheet>



More information about the samba-cvs mailing list