diff options
Diffstat (limited to 'doc/user-guide/help.xsl')
-rw-r--r-- | doc/user-guide/help.xsl | 156 |
1 files changed, 156 insertions, 0 deletions
diff --git a/doc/user-guide/help.xsl b/doc/user-guide/help.xsl new file mode 100644 index 00000000..0eb1a88b --- /dev/null +++ b/doc/user-guide/help.xsl @@ -0,0 +1,156 @@ +<?xml version='1.0'?> +<!-- + Convert DocBook documentation to help.txt file used by bitlbee + (C) 2004 Jelmer Vernooij +--> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + version="1.1"> + + <xsl:output method="text" encoding="iso-8859-1" standalone="yes"/> + <xsl:strip-space elements="*"/> + + <xsl:template match="text()"> + <xsl:if test="starts-with(.,' ') and preceding-sibling::* and + not(preceding-sibling::*[1]/node()[1][self::text() and contains(concat(.,'^$%'),' ^$%')])"> + <xsl:text> </xsl:text> + </xsl:if> + + <xsl:value-of select="normalize-space(.)"/> + <xsl:if test="contains(concat(.,'^$%'),' ^$%') and following-sibling::* and + not(following-sibling::*[1]/node()[1][self::text() and starts-with(.,' ')])"> + <xsl:text> </xsl:text> + </xsl:if> + </xsl:template> + + <xsl:template match="para"> + <xsl:apply-templates/><xsl:text> </xsl:text> + <xsl:if test="$extraparanewline = '1'"> + <xsl:text> </xsl:text> + </xsl:if> + </xsl:template> + + <xsl:template name="subject"> + <xsl:message><xsl:text>Processing: </xsl:text><xsl:value-of select="$id"/></xsl:message> + <xsl:text>?</xsl:text><xsl:value-of select="$id"/><xsl:text> </xsl:text> + + <xsl:for-each select="para|variablelist|simplelist|command-list|ircexample"> + <xsl:if test="title != ''"> + <xsl:value-of select="title"/><xsl:text> </xsl:text> + </xsl:if> + <xsl:apply-templates select="."/> + </xsl:for-each> + <xsl:text>% </xsl:text> + + <xsl:for-each select="sect1|sect2"> + <xsl:call-template name="subject"> + <xsl:with-param name="id" select="@id"/> + </xsl:call-template> + </xsl:for-each> + + <xsl:for-each select="bitlbee-command"> + <xsl:call-template name="cmd"> + <xsl:with-param name="prefix" select="''"/> + </xsl:call-template> + </xsl:for-each> + + <xsl:for-each select="bitlbee-setting"> + <xsl:message><xsl:text>Processing setting '</xsl:text><xsl:value-of select="@name"/><xsl:text>'</xsl:text></xsl:message> + <xsl:text>?set </xsl:text><xsl:value-of select="@name"/><xsl:text> </xsl:text> + <xsl:text>_b_Type:_b_ </xsl:text><xsl:value-of select="@type"/><xsl:text> </xsl:text> + <xsl:text>_b_Default:_b_ </xsl:text><xsl:value-of select="default"/><xsl:text> </xsl:text> + <xsl:if test="possible-values"> + <xsl:text>_b_Possible Values:_b_ </xsl:text><xsl:value-of select="possible-values"/><xsl:text> </xsl:text> + </xsl:if> + <xsl:text> </xsl:text> + <xsl:apply-templates select="description"/> + <xsl:text>% </xsl:text> + </xsl:for-each> + </xsl:template> + + <xsl:template match="command-list"> + <xsl:for-each select="../bitlbee-command"> + <xsl:text> * _b_</xsl:text><xsl:value-of select="@name"/><xsl:text>_b_ - </xsl:text><xsl:value-of select="short-description"/><xsl:text> </xsl:text> + </xsl:for-each> + <xsl:text> </xsl:text> + </xsl:template> + + <xsl:template match="preface|chapter|sect1|sect2"> + <xsl:call-template name="subject"> + <xsl:with-param name="id" select="@id"/> + </xsl:call-template> + </xsl:template> + + <xsl:template match="emphasis"> + <xsl:text>_b_</xsl:text> + <xsl:apply-templates/> + <xsl:text>_b_</xsl:text> + </xsl:template> + + <xsl:template match="book"> + <xsl:apply-templates/> + </xsl:template> + + <xsl:template match="variablelist"> + <xsl:for-each select="varlistentry"> + <xsl:text> _b_</xsl:text><xsl:value-of select="term"/><xsl:text>_b_ - </xsl:text><xsl:value-of select="listitem/para"/><xsl:text> </xsl:text> + </xsl:for-each> + <xsl:text> </xsl:text> + </xsl:template> + + <xsl:template match="simplelist"> + <xsl:for-each select="member"> + <xsl:text> - </xsl:text><xsl:apply-templates/><xsl:text> </xsl:text> + </xsl:for-each> + <xsl:text> </xsl:text> + </xsl:template> + + <xsl:template match="ircline"> + <xsl:text>_b_<</xsl:text><xsl:value-of select="@nick"/><xsl:text>>_b_ </xsl:text><xsl:value-of select="."/><xsl:text> </xsl:text> + </xsl:template> + + <xsl:template match="ircaction"> + <xsl:text>_b_* </xsl:text><xsl:value-of select="@nick"/><xsl:text>_b_ </xsl:text><xsl:value-of select="."/><xsl:text> </xsl:text> + </xsl:template> + + <xsl:template match="ircexample"> + <xsl:apply-templates/> + <xsl:text> </xsl:text> + </xsl:template> + + <xsl:template name="cmd"> + <xsl:variable name="thiscmd"><xsl:value-of select="$prefix"/><xsl:value-of select="@name"/></xsl:variable> + <xsl:message><xsl:text>Processing command '</xsl:text><xsl:value-of select="$thiscmd"/><xsl:text>'</xsl:text></xsl:message> + <xsl:text>?</xsl:text><xsl:value-of select="$thiscmd"/><xsl:text> </xsl:text> + <xsl:for-each select="syntax"> + <xsl:text>_b_Syntax:_b_ </xsl:text><xsl:value-of select="."/><xsl:text> </xsl:text> + </xsl:for-each> + <xsl:text> </xsl:text> + + <xsl:apply-templates select="description"/> + + <xsl:for-each select="ircexample"> + <xsl:text>_b_Example:_b_ </xsl:text> + <xsl:apply-templates select="."/> + </xsl:for-each> + + <!-- + <xsl:if test="bitlbee-command != ''"> + <xsl:text>Subcommands: </xsl:text> + <xsl:for-each select="bitlbee-command"> + <xsl:value-of select="@name"/><xsl:text>, </xsl:text> + </xsl:for-each> + <xsl:text> </xsl:text> + </xsl:if> + --> + + <xsl:text>% </xsl:text> + + <xsl:for-each select="bitlbee-command"> + <xsl:call-template name="cmd"> + <xsl:with-param name="prefix"><xsl:value-of select="$thiscmd"/><xsl:text> </xsl:text></xsl:with-param> + </xsl:call-template> + </xsl:for-each> + + </xsl:template> + +</xsl:stylesheet> |