source: doc/user-guide/help.xsl @ 3dc9d46

Last change on this file since 3dc9d46 was 89a1809, checked in by Wilmer van der Gaast <wilmer@…>, at 2006-07-14T18:27:02Z

More documentation updates: Added a Scope: line for every setting (for
per-account and global settings) and leaving out the Default: line when
there is no default specified in XML (like with the display_name setting).

  • Property mode set to 100644
File size: 5.4 KB
Line 
1<?xml version='1.0'?>
2<!--
3        Convert DocBook documentation to help.txt file used by bitlbee
4        (C) 2004 Jelmer Vernooij
5-->
6<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
7        version="1.1">
8
9        <xsl:output method="text" encoding="utf-8" standalone="yes"/>
10        <xsl:strip-space elements="*"/>
11
12        <xsl:template match="text()">
13                <xsl:if test="starts-with(.,' ') and preceding-sibling::* and
14                        not(preceding-sibling::*[1]/node()[1][self::text() and contains(concat(.,'^$%'),' ^$%')])">
15                        <xsl:text> </xsl:text>
16                </xsl:if>
17       
18                <xsl:value-of select="normalize-space(.)"/>
19                <xsl:if test="contains(concat(.,'^$%'),' ^$%') and following-sibling::* and
20                        not(following-sibling::*[1]/node()[1][self::text() and starts-with(.,' ')])">
21                        <xsl:text> </xsl:text>
22                </xsl:if>
23        </xsl:template>
24
25        <xsl:template match="para">
26                <xsl:apply-templates/><xsl:text>&#10;</xsl:text>
27                <xsl:if test="$extraparanewline = '1'">
28                        <xsl:text>&#10;</xsl:text>
29                </xsl:if>
30        </xsl:template>
31
32        <xsl:template name="subject">
33                <xsl:message><xsl:text>Processing: </xsl:text><xsl:value-of select="$id"/></xsl:message>
34                <xsl:text>?</xsl:text><xsl:value-of select="$id"/><xsl:text>&#10;</xsl:text>
35
36                <xsl:for-each select="para|variablelist|simplelist|command-list|ircexample">
37                        <xsl:if test="title != ''">
38                                <xsl:value-of select="title"/><xsl:text>&#10;</xsl:text>
39                        </xsl:if>
40                        <xsl:apply-templates select="."/>
41                </xsl:for-each>
42                <xsl:text>%&#10;</xsl:text>
43
44                <xsl:for-each select="sect1|sect2">
45                        <xsl:call-template name="subject">
46                                <xsl:with-param name="id" select="@id"/>
47                        </xsl:call-template>
48                </xsl:for-each>
49
50                <xsl:for-each select="bitlbee-command">
51                        <xsl:call-template name="cmd">
52                                <xsl:with-param name="prefix" select="''"/>
53                        </xsl:call-template>
54                </xsl:for-each>
55
56                <xsl:for-each select="bitlbee-setting">
57                        <xsl:message><xsl:text>Processing setting '</xsl:text><xsl:value-of select="@name"/><xsl:text>'</xsl:text></xsl:message>
58                        <xsl:text>?set </xsl:text><xsl:value-of select="@name"/><xsl:text>&#10;</xsl:text>
59                        <xsl:text>_b_Type:_b_ </xsl:text><xsl:value-of select="@type"/><xsl:text>&#10;</xsl:text>
60                        <xsl:text>_b_Scope:_b_ </xsl:text><xsl:value-of select="@scope"/><xsl:text>&#10;</xsl:text>
61                        <xsl:if test="default">
62                                <xsl:text>_b_Default:_b_ </xsl:text><xsl:value-of select="default"/><xsl:text>&#10;</xsl:text>
63                        </xsl:if>
64                        <xsl:if test="possible-values">
65                                <xsl:text>_b_Possible Values:_b_ </xsl:text><xsl:value-of select="possible-values"/><xsl:text>&#10;</xsl:text>
66                        </xsl:if>
67                        <xsl:text>&#10;</xsl:text>
68                        <xsl:apply-templates select="description"/>
69                        <xsl:text>%&#10;</xsl:text>
70                </xsl:for-each>
71        </xsl:template>
72
73        <xsl:template match="command-list">
74                <xsl:for-each select="../bitlbee-command">
75                        <xsl:text> * _b_</xsl:text><xsl:value-of select="@name"/><xsl:text>_b_ - </xsl:text><xsl:value-of select="short-description"/><xsl:text>&#10;</xsl:text>
76                </xsl:for-each>
77                <xsl:text>&#10;</xsl:text>
78        </xsl:template>
79
80        <xsl:template match="preface|chapter|sect1|sect2">
81                <xsl:call-template name="subject">
82                        <xsl:with-param name="id" select="@id"/>
83                </xsl:call-template>
84        </xsl:template>
85
86        <xsl:template match="emphasis">
87                <xsl:text>_b_</xsl:text>
88                <xsl:apply-templates/>
89                <xsl:text>_b_</xsl:text>
90        </xsl:template>
91
92        <xsl:template match="book">
93                <xsl:apply-templates/>
94        </xsl:template>
95
96        <xsl:template match="variablelist">
97                <xsl:for-each select="varlistentry">
98                        <xsl:text> _b_</xsl:text><xsl:value-of select="term"/><xsl:text>_b_ - </xsl:text><xsl:value-of select="listitem/para"/><xsl:text>&#10;</xsl:text>
99                </xsl:for-each>
100                <xsl:text>&#10;</xsl:text>
101        </xsl:template>
102
103        <xsl:template match="simplelist">
104                <xsl:for-each select="member">
105                        <xsl:text> - </xsl:text><xsl:apply-templates/><xsl:text>&#10;</xsl:text>
106                </xsl:for-each>
107                <xsl:text>&#10;</xsl:text>
108        </xsl:template>
109
110        <xsl:template match="ircline">
111                <xsl:text>_b_&lt;</xsl:text><xsl:value-of select="@nick"/><xsl:text>&gt;_b_ </xsl:text><xsl:value-of select="."/><xsl:text>&#10;</xsl:text>
112        </xsl:template>
113
114        <xsl:template match="ircaction">
115                <xsl:text>_b_* </xsl:text><xsl:value-of select="@nick"/><xsl:text>_b_ </xsl:text><xsl:value-of select="."/><xsl:text>&#10;</xsl:text>
116        </xsl:template>
117
118        <xsl:template match="ircexample">
119                <xsl:apply-templates/>
120                <xsl:text>&#10;</xsl:text>
121        </xsl:template>
122
123        <xsl:template name="cmd">
124                <xsl:variable name="thiscmd"><xsl:value-of select="$prefix"/><xsl:value-of select="@name"/></xsl:variable>
125                <xsl:message><xsl:text>Processing command '</xsl:text><xsl:value-of select="$thiscmd"/><xsl:text>'</xsl:text></xsl:message>
126                <xsl:text>?</xsl:text><xsl:value-of select="$thiscmd"/><xsl:text>&#10;</xsl:text>
127                <xsl:for-each select="syntax">
128                        <xsl:text>_b_Syntax:_b_ </xsl:text><xsl:value-of select="."/><xsl:text>&#10;</xsl:text>
129                </xsl:for-each>
130                <xsl:text>&#10;</xsl:text>
131
132                <xsl:apply-templates select="description"/>
133
134                <xsl:for-each select="ircexample">
135                        <xsl:text>_b_Example:_b_&#10;</xsl:text>
136                        <xsl:apply-templates select="."/>
137                </xsl:for-each>
138
139                <!--
140                <xsl:if test="bitlbee-command != ''">
141                        <xsl:text>Subcommands: </xsl:text>
142                        <xsl:for-each select="bitlbee-command">
143                                <xsl:value-of select="@name"/><xsl:text>, </xsl:text>
144                        </xsl:for-each>
145                        <xsl:text>&#10;</xsl:text>
146                </xsl:if>
147                -->
148
149                <xsl:text>%&#10;</xsl:text>
150
151                <xsl:for-each select="bitlbee-command">
152                        <xsl:call-template name="cmd">
153                                <xsl:with-param name="prefix"><xsl:value-of select="$thiscmd"/><xsl:text> </xsl:text></xsl:with-param>
154                        </xsl:call-template>
155                </xsl:for-each>
156
157        </xsl:template>
158
159</xsl:stylesheet>
Note: See TracBrowser for help on using the repository browser.