Rocco Rutte:
[apps/madmutt.git] / doc / muttng-manual.xsl
1 <?xml version="1.0" encoding="utf-8"?>
2
3 <!-- written for mutt-ng by: -->
4 <!-- Felix Meinhold <felix.meinhold@gmx.net> -->
5
6 <!-- some more things were added/ajusted by: -->
7 <!-- Rocco Rutte <pdmef@cs.tu-berlin.de> -->
8
9 <!-- see "Hacking Documentation" chapter of the Fine Manual for -->
10 <!-- usage details -->
11   
12 <xsl:stylesheet version="1.0"
13   xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
14   xmlns:muttng-doc="http://mutt-ng.berlios.de/doc/#NS"
15   >
16   
17   <xsl:output 
18     method="xml" 
19     doctype-public="-//OASIS//DTD DocBook XML V4.2//EN"
20     doctype-system="http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
21     indent="yes"
22     output-encoding="utf-8"
23   />
24   
25   <xsl:strip-space elements="*"/>
26
27  
28   <!-- as default, copy each node -->
29   <xsl:template match="/ | node() | @* | comment() | processing-instruction()">
30     <xsl:copy>
31       <xsl:apply-templates select="@* | node()"/>
32     </xsl:copy>
33   </xsl:template>
34
35   <xsl:template match="muttng-doc:man">
36     <literal>
37       <xsl:choose>
38         <xsl:when test="@sect">
39           <xsl:value-of select="concat(@name,'(',@sect,')')"/>
40         </xsl:when>
41         <xsl:otherwise>
42           <xsl:value-of select="concat(@name,'(1)')"/>
43         </xsl:otherwise>
44       </xsl:choose>
45     </literal>
46   </xsl:template>
47  
48   <xsl:template match="muttng-doc:envvar">
49      <literal><xsl:value-of select="concat('$', @name)"/></literal>
50      <indexterm>
51        <primary>Environment Variables</primary>
52        <secondary><literal><xsl:value-of select="concat('$', @name)"/></literal></secondary>
53      </indexterm>
54   </xsl:template> 
55
56   <xsl:template match="muttng-doc:hook">
57      <literal><link linkend="{concat(@name, '-hook')}"><xsl:value-of select="concat(@name, '-hook')"/></link></literal>
58      <indexterm>
59        <primary>Hooks</primary>
60        <secondary><literal><xsl:value-of select="concat(@name, '-hook')"/></literal></secondary>
61      </indexterm>
62   </xsl:template>
63
64   <xsl:template match="muttng-doc:command">
65      <literal><link linkend="{concat('command-', @name)}"><xsl:value-of select="@name"/></link></literal>
66      <indexterm>
67        <primary>Configuration Commands</primary>
68        <secondary><literal><xsl:value-of select="@name"/></literal></secondary>
69      </indexterm>
70   </xsl:template>
71
72   <xsl:template match="muttng-doc:pattern">
73     <literal>~<xsl:value-of select="@name"/></literal>
74     <xsl:if test="@full='1'">/<literal>=<xsl:value-of select="@name"/></literal></xsl:if>
75      <indexterm>
76        <primary>Patterns</primary>
77        <secondary><literal>~<xsl:value-of select="@name"/></literal>/
78          <literal>=<xsl:value-of select="@name"/></literal></secondary>
79      </indexterm>
80   </xsl:template>
81
82   <xsl:template match="muttng-doc:funcdef">
83      <literal>&lt;<xsl:value-of select="@name"/>&gt;</literal> (default: <xsl:value-of select="@key"/>)
84      <anchor id="func-{@name}"/>
85      <indexterm>
86        <primary>Functions</primary>
87        <secondary><literal>&lt;<xsl:value-of select="@name"/>&gt;</literal></secondary>
88      </indexterm>
89   </xsl:template>
90
91   <xsl:template match="muttng-doc:funcref">
92     <!-- currently b0rken as not all defined via :funcdef yet ;-((
93     <link linkend="func-{@name}">
94     -->
95       <xsl:value-of select="concat('&lt;',@name,'&gt;')"/>
96     <!--
97     </link>
98     -->
99     <indexterm>
100       <primary>Functions</primary>
101       <secondary><literal>&lt;<xsl:value-of select="@name"/>&gt;</literal></secondary>
102     </indexterm>
103   </xsl:template>
104
105   <xsl:template match="muttng-doc:vardef">
106     <sect1 id="{@id}">
107       <title><xsl:value-of select="concat('$',@name)"/></title>
108       <indexterm>
109         <primary>Configuration Variables</primary>
110         <secondary><literal>$<xsl:value-of select="@name"/></literal></secondary>
111       </indexterm>
112       <xsl:apply-templates/>
113     </sect1>
114   </xsl:template>
115  
116   <xsl:template match="muttng-doc:varref">
117     <xsl:choose>
118       <xsl:when test="@link">
119         <link linkend="{@link}"><literal><xsl:value-of select="concat('$',@name)"/></literal></link>
120       </xsl:when>
121       <xsl:otherwise>
122         <link linkend="{@name}"><literal><xsl:value-of select="concat('$',@name)"/></literal></link>
123       </xsl:otherwise>
124     </xsl:choose>
125     <indexterm>
126       <primary>Configuration Variables</primary>
127       <secondary><literal>$<xsl:value-of select="@name"/></literal></secondary>
128     </indexterm>
129   </xsl:template>
130
131   <xsl:template match="muttng-doc:web">
132     <ulink url="{@url}"><literal>&lt;<xsl:value-of select="@url"/>&gt;</literal></ulink>
133   </xsl:template>
134
135   <xsl:template match="muttng-doc:rfc">
136     <ulink url="{concat('http://www.faqs.org/rfcs/rfc', @num, '.html')}">RfC <xsl:value-of select="@num"/></ulink>
137   </xsl:template>
138
139   <xsl:template match="/">
140     <xsl:apply-templates select="*"/>
141   </xsl:template>
142
143 </xsl:stylesheet>