From: Felix Meinhold <felix.meinhold@gmx.net>
[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.3//EN"
20     doctype-system="http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"
21     indent="yes"
22     output-encoding="utf-8"
23   />
24   
25   <xsl:strip-space elements="*"/>
26  
27   <!-- as default, copy each node -->
28   <xsl:template match="/ | node() | @* | comment() | processing-instruction()">
29     <xsl:copy>
30       <xsl:apply-templates select="@* | node()"/>
31     </xsl:copy>
32   </xsl:template>
33
34   <xsl:template match="muttng-doc:man">
35     <literal>
36       <xsl:choose>
37         <xsl:when test="@sect">
38           <xsl:value-of select="concat(@name,'(',@sect,')')"/>
39         </xsl:when>
40         <xsl:otherwise>
41           <xsl:value-of select="concat(@name,'(1)')"/>
42         </xsl:otherwise>
43       </xsl:choose>
44     </literal>
45   </xsl:template>
46  
47   <xsl:template match="muttng-doc:envvar">
48      <literal><xsl:value-of select="concat('$', @name)"/></literal>
49      <indexterm>
50        <primary>Environment Variables</primary>
51        <secondary><literal><xsl:value-of select="concat('$', @name)"/></literal></secondary>
52      </indexterm>
53   </xsl:template> 
54
55   <xsl:template match="muttng-doc:hook">
56      <literal><link linkend="{concat(@name, '-hook')}"><xsl:value-of select="concat(@name, '-hook')"/></link></literal>
57      <indexterm>
58        <primary>Hooks</primary>
59        <secondary><literal><xsl:value-of select="concat(@name, '-hook')"/></literal></secondary>
60      </indexterm>
61   </xsl:template>
62
63   <xsl:template match="muttng-doc:command">
64     <literal><link linkend="{concat('command-', @name)}"><xsl:value-of select="translate(@name,'-','_')"/></link></literal>
65      <indexterm>
66        <primary>Configuration Commands</primary>
67        <secondary><literal><xsl:value-of select="translate(@name,'-','_')"/></literal></secondary>
68      </indexterm>
69   </xsl:template>
70
71   <xsl:template match="muttng-doc:pattern">
72     <literal>~<xsl:value-of select="@name"/></literal>
73     <xsl:if test="@full='1'">/<literal>=<xsl:value-of select="@name"/></literal></xsl:if>
74      <indexterm>
75        <primary>Patterns</primary>
76        <secondary><literal>~<xsl:value-of select="@name"/></literal>/
77          <literal>=<xsl:value-of select="@name"/></literal></secondary>
78      </indexterm>
79   </xsl:template>
80
81   <xsl:template match="muttng-doc:funcdef">
82      <literal>&lt;<xsl:value-of select="@name"/>&gt;</literal> (default: <xsl:value-of select="@key"/>)
83      <anchor id="func-{@name}"/>
84      <indexterm>
85        <primary>Functions</primary>
86        <secondary><literal>&lt;<xsl:value-of select="@name"/>&gt;</literal></secondary>
87      </indexterm>
88   </xsl:template>
89
90   <xsl:template match="muttng-doc:funcref">
91     <!-- currently b0rken as not all defined via :funcdef yet ;-((
92     <link linkend="func-{@name}">
93     -->
94       <xsl:value-of select="concat('&lt;',@name,'&gt;')"/>
95     <!--
96     </link>
97     -->
98     <indexterm>
99       <primary>Functions</primary>
100       <secondary><literal>&lt;<xsl:value-of select="@name"/>&gt;</literal></secondary>
101     </indexterm>
102   </xsl:template>
103
104   <xsl:template match="muttng-doc:vardef">
105     <sect1 id="{translate(@name,'_','-')}">
106       <title><xsl:value-of select="concat('$',@name)"/></title>
107       <indexterm>
108         <primary>Configuration Variables</primary>
109         <secondary><literal>$<xsl:value-of select="@name"/></literal></secondary>
110       </indexterm>
111       <xsl:apply-templates/>
112     </sect1>
113   </xsl:template>
114  
115   <xsl:template match="muttng-doc:varref">
116     <link linkend="{@name}"><literal><xsl:value-of select="concat('$',translate(@name,'-','_'))"/></literal></link><indexterm>
117       <primary>Configuration Variables</primary>
118       <secondary><literal>$<xsl:value-of select="translate(@name,'-','_')"/></literal></secondary>
119     </indexterm>
120   </xsl:template>
121
122   <xsl:template match="muttng-doc:web">
123     <ulink url="{@url}"><literal>&lt;<xsl:value-of select="@url"/>&gt;</literal></ulink>
124   </xsl:template>
125
126   <xsl:template match="muttng-doc:rfc">
127     <ulink url="{concat('http://www.faqs.org/rfcs/rfc', @num, '.html')}">RfC <xsl:value-of select="@num"/></ulink>
128   </xsl:template>
129
130 </xsl:stylesheet>