summaryrefslogtreecommitdiff
path: root/docs-xml/xslt/expand-smbconfdoc.xsl
diff options
context:
space:
mode:
authorGerald W. Carter <jerry@samba.org>2008-04-22 10:09:40 -0500
committerGerald W. Carter <jerry@samba.org>2008-04-23 08:47:48 -0500
commit8f8a9f01909ba29e2b781310baeeaaddc3f15f0d (patch)
tree90c6b720ad3a7bc815245c0ef28820424f89d658 /docs-xml/xslt/expand-smbconfdoc.xsl
parent197238246389c40edc60c6630d18d6913086e630 (diff)
downloadsamba-8f8a9f01909ba29e2b781310baeeaaddc3f15f0d.tar.gz
samba-8f8a9f01909ba29e2b781310baeeaaddc3f15f0d.tar.bz2
samba-8f8a9f01909ba29e2b781310baeeaaddc3f15f0d.zip
Moving docs tree to docs-xml to make room for generated docs in the release tarball.
(This used to be commit 9f672c26d63955f613088489c6efbdc08b5b2d14)
Diffstat (limited to 'docs-xml/xslt/expand-smbconfdoc.xsl')
-rw-r--r--docs-xml/xslt/expand-smbconfdoc.xsl168
1 files changed, 168 insertions, 0 deletions
diff --git a/docs-xml/xslt/expand-smbconfdoc.xsl b/docs-xml/xslt/expand-smbconfdoc.xsl
new file mode 100644
index 0000000000..5472d61a9a
--- /dev/null
+++ b/docs-xml/xslt/expand-smbconfdoc.xsl
@@ -0,0 +1,168 @@
+<?xml version='1.0'?>
+<!--
+ smb.conf-documentation specific stylesheets
+ Published under the GNU GPL
+
+ (C) Jelmer Vernooij 2002-2004
+ (C) Alexander Bokovoy 2002-2004
+-->
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"
+ version="1.1">
+
+ <xsl:template match="description"><xsl:apply-templates/></xsl:template>
+
+ <xsl:template match="value"><xsl:element name="literal"><xsl:apply-templates/></xsl:element></xsl:template>
+
+ <xsl:template match="command"><xsl:element name="literal"><xsl:apply-templates/></xsl:element></xsl:template>
+
+ <xsl:template match="synonym"><xsl:apply-templates/></xsl:template>
+
+ <xsl:template match="related"><xsl:element name="para"><xsl:text>Related command</xsl:text><xsl:apply-templates/></xsl:element></xsl:template>
+
+ <xsl:template match="samba:parameterlist">
+ <xsl:apply-templates>
+ <xsl:sort select="samba:parameter/@name"/>
+ </xsl:apply-templates>
+ </xsl:template>
+
+ <xsl:template match="value/comment">
+ <xsl:text>&#10;# </xsl:text>
+ <xsl:apply-templates/>
+ </xsl:template>
+
+ <xsl:template match="samba:parameter">
+ <xsl:variable name="cname"><xsl:value-of select="translate(translate(string(@name),' ',''),
+ 'abcdefghijklmnopqrstuvwxyz','ABCDEFGHIJKLMNOPQRSTUVWXYZ')"/>
+ </xsl:variable>
+
+ <xsl:variable name="name"><xsl:value-of select="@name"/></xsl:variable>
+
+ <xsl:variable name="anchor">
+ <xsl:element name="anchor">
+ <xsl:attribute name="id">
+ <xsl:value-of select="$cname"/>
+ </xsl:attribute>
+ </xsl:element>
+ </xsl:variable>
+
+ <xsl:variable name="context">
+ <xsl:text> (</xsl:text>
+ <xsl:value-of select="@context"/>
+ <xsl:text>)</xsl:text>
+ </xsl:variable>
+
+ <xsl:variable name="term">
+ <xsl:element name="indexterm">
+ <xsl:copy-of select="$anchor"/>
+ <xsl:value-of select="@name"/>
+ <xsl:value-of select="$context"/>
+ </xsl:element>
+ </xsl:variable>
+
+
+ <!-- Generate list of examples -->
+ <xsl:variable name="examples">
+ <xsl:for-each select="value">
+ <xsl:if test="@type = 'example'">
+ <xsl:element name="para">
+ <xsl:text>Example: </xsl:text>
+ <xsl:element name="emphasis">
+ <xsl:element name="parameter">
+ <xsl:copy-of select="$name"/>
+ </xsl:element>
+ <xsl:text> = </xsl:text>
+ <xsl:apply-templates select="."/>
+ <xsl:text>&#10;</xsl:text>
+ </xsl:element>
+ <xsl:text>&#10;</xsl:text>
+ </xsl:element>
+ </xsl:if>
+ </xsl:for-each>
+ </xsl:variable>
+
+ <xsl:variable name="tdefault">
+ <xsl:for-each select="value">
+ <xsl:if test="@type = 'default'">
+ <xsl:element name="para">
+ <xsl:text>Default: </xsl:text>
+ <xsl:element name="emphasis">
+ <xsl:element name="parameter">
+ <xsl:copy-of select="$name"/>
+ </xsl:element>
+ <xsl:text> = </xsl:text>
+ <xsl:apply-templates select="."/>
+ <xsl:text>&#10;</xsl:text>
+ </xsl:element>
+ <xsl:text>&#10;</xsl:text>
+ </xsl:element>
+ </xsl:if>
+ </xsl:for-each>
+ </xsl:variable>
+
+ <xsl:variable name="default">
+ <xsl:choose>
+ <xsl:when test="$tdefault = ''">
+ <xsl:element name="para">
+ <xsl:element name="emphasis">
+ <xsl:text>No default</xsl:text>
+ </xsl:element>
+ </xsl:element>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:copy-of select="$tdefault"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="content">
+ <xsl:apply-templates select="description"/>
+ </xsl:variable>
+
+ <xsl:for-each select="synonym">
+ <xsl:element name="varlistentry">
+ <xsl:text>&#10;</xsl:text>
+ <xsl:element name="indexterm">
+ <xsl:attribute name="significance">
+ <xsl:text>preferred</xsl:text>
+ </xsl:attribute>
+ <xsl:element name="primary">
+ <xsl:value-of select="."/>
+ </xsl:element>
+ <xsl:element name="see">
+ <xsl:value-of select="$name"/>
+ </xsl:element>
+ </xsl:element>
+ <xsl:element name="term">
+ <xsl:element name="anchor">
+ <xsl:attribute name="id">
+ <xsl:value-of select="translate(translate(string(.),' ',''), 'abcdefghijklmnopqrstuvwxyz','ABCDEFGHIJKLMNOPQRSTUVWXYZ')"/>
+ </xsl:attribute>
+ </xsl:element>
+ <xsl:value-of select="."/>
+ </xsl:element>
+ <xsl:element name="listitem">
+ <xsl:element name="para"><xsl:text>This parameter is a synonym for </xsl:text><xsl:copy-of select="$name"/><xsl:text>.</xsl:text></xsl:element>
+ </xsl:element>
+ </xsl:element>
+ </xsl:for-each>
+
+ <xsl:element name="varlistentry">
+ <xsl:text>&#10;</xsl:text>
+ <xsl:element name="indexterm">
+ <xsl:attribute name="significance">
+ <xsl:text>preferred</xsl:text>
+ </xsl:attribute>
+ <xsl:element name="primary">
+ <xsl:value-of select="@name"/>
+ </xsl:element>
+ </xsl:element>
+ <xsl:copy-of select="$term"/>
+ <xsl:element name="listitem">
+ <xsl:copy-of select="$content"/> <xsl:text>&#10;</xsl:text>
+ <xsl:copy-of select="$default"/> <xsl:text>&#10;</xsl:text>
+ <xsl:copy-of select="$examples"/> <xsl:text>&#10;</xsl:text>
+ </xsl:element>
+ </xsl:element>
+ </xsl:template>
+</xsl:stylesheet>