2004-06-21 23:53:41 +04:00
<?xml version='1.0'?>
<!--
DocBook to yodl converter
2004-06-22 00:26:59 +04:00
Lacks support for a few docbook tags, but pretty much all
yodl macros are used
2004-06-21 23:53:41 +04:00
(C) Jelmer Vernooij 2004
2009-05-01 22:36:56 +04:00
Published under the GNU GPLv3 or later
2004-06-21 23:53:41 +04:00
-->
<xsl:stylesheet xmlns:xsl= "http://www.w3.org/1999/XSL/Transform"
xmlns:exsl="http://exslt.org/common"
version="1.1">
2004-06-26 19:43:54 +04:00
<xsl:output method= "text" encoding= "iso-8859-1" standalone= "yes" indent= "no" />
2004-06-21 23:53:41 +04:00
<xsl:strip-space elements= "*" />
<xsl:template match= "refentry" >
<xsl:text > manpage(</xsl:text>
<xsl:value-of select= "refmeta/refentrytitle" />
<xsl:text > )()(</xsl:text>
<xsl:value-of select= "refmeta/manvolnum" />
<xsl:text > )(package)() </xsl:text>
<xsl:apply-templates />
</xsl:template>
2004-06-22 00:26:59 +04:00
<xsl:template match= "article" >
<xsl:text > article(</xsl:text>
<xsl:value-of select= "title" />
<xsl:text > )(</xsl:text>
<xsl:text > FIXME</xsl:text>
<xsl:text > )(</xsl:text>
<xsl:value-of select= "articleinfo/pubdate" />
<xsl:text > )</xsl:text>
<xsl:apply-templates />
</xsl:template>
<xsl:template match= "report" >
<xsl:text > report(</xsl:text>
<xsl:value-of select= "title" />
<xsl:text > )(</xsl:text>
<xsl:text > FIXME</xsl:text>
<xsl:text > )(</xsl:text>
<xsl:value-of select= "articleinfo/pubdate" />
<xsl:text > )</xsl:text>
<xsl:apply-templates />
</xsl:template>
<xsl:template match= "book" >
<xsl:text > book(</xsl:text>
<xsl:value-of select= "title" />
<xsl:text > )(</xsl:text>
<xsl:text > FIXME</xsl:text>
<xsl:text > )(</xsl:text>
<xsl:value-of select= "articleinfo/pubdate" />
<xsl:text > )</xsl:text>
<xsl:apply-templates />
</xsl:template>
<xsl:template match= "chapter" >
<xsl:choose >
<xsl:when test= "@id = ''" >
<xsl:text > chapter(</xsl:text>
<xsl:value-of select= "title" />
<xsl:text > ) </xsl:text>
</xsl:when>
<xsl:otherwise >
<xsl:text > lchapter(</xsl:text>
<xsl:value-of select= "@id" />
<xsl:text > )(</xsl:text>
<xsl:value-of select= "title" />
<xsl:text > ) </xsl:text>
</xsl:otherwise>
</xsl:choose>
<xsl:apply-templates />
</xsl:template>
<xsl:template match= "citerefentry" >
<xsl:value-of select= "refentrytitle" />
<xsl:text > (</xsl:text>
<xsl:value-of select= "manvolnum" />
<xsl:text > )</xsl:text>
</xsl:template>
<xsl:template match= "para" >
<xsl:apply-templates />
<xsl:text > </xsl:text>
</xsl:template>
<xsl:template match= "formalpara" >
<xsl:text > paragraph(</xsl:text>
<xsl:value-of select= "title" />
<xsl:text > ) </xsl:text>
2004-06-26 19:43:54 +04:00
<xsl:apply-templates />
2004-06-22 00:26:59 +04:00
</xsl:template>
<xsl:template match= "part" >
<xsl:text > part(</xsl:text>
<xsl:value-of select= "title" />
<xsl:text > ) </xsl:text>
<xsl:apply-templates />
</xsl:template>
<xsl:template match= "preface" >
<xsl:text > nchapter(</xsl:text>
<xsl:value-of select= "title" />
<xsl:text > ) </xsl:text>
<xsl:apply-templates />
</xsl:template>
2004-06-26 19:43:54 +04:00
<xsl:template match= "quote" >
<xsl:text > "</xsl:text>
<xsl:apply-templates />
<xsl:text > "</xsl:text>
</xsl:template>
<xsl:template match= "parameter|filename" >
2004-06-22 00:26:59 +04:00
<xsl:text > code(</xsl:text>
<xsl:apply-templates />
<xsl:text > )</xsl:text>
</xsl:template>
2004-06-21 23:53:41 +04:00
<xsl:template match= "emphasis" >
<xsl:text > em(</xsl:text>
<xsl:apply-templates />
<xsl:text > )</xsl:text>
</xsl:template>
<xsl:template match= "command" >
<xsl:text > bf(</xsl:text>
<xsl:apply-templates />
<xsl:text > )</xsl:text>
</xsl:template>
<xsl:template match= "refnamediv" >
<xsl:text > manpagename(</xsl:text>
<xsl:value-of select= "refname" />
<xsl:text > )(</xsl:text>
<xsl:value-of select= "refpurpose" />
<xsl:text > ) </xsl:text>
</xsl:template>
<xsl:template match= "refsynopsisdiv" >
2004-06-26 19:43:54 +04:00
<xsl:text > manpagesynopsis()</xsl:text>
2004-06-21 23:53:41 +04:00
</xsl:template>
2004-06-26 19:43:54 +04:00
<xsl:template match= "refsect1|refsect2" >
2004-06-21 23:53:41 +04:00
<xsl:choose >
<xsl:when test= "title='DESCRIPTION'" >
<xsl:text > manpagedescription() </xsl:text>
</xsl:when>
<xsl:when test= "title='OPTIONS'" >
<xsl:text > manpageoptions() </xsl:text>
</xsl:when>
<xsl:when test= "title='FILES'" >
<xsl:text > manpagefiles() </xsl:text>
</xsl:when>
<xsl:when test= "title='SEE ALSO'" >
<xsl:text > manpageseealso() </xsl:text>
</xsl:when>
<xsl:when test= "title='DIAGNOSTICS'" >
<xsl:text > manpagediagnostics() </xsl:text>
</xsl:when>
<xsl:when test= "title='BUGS'" >
<xsl:text > manpagebugs() </xsl:text>
</xsl:when>
<xsl:when test= "title='AUTHOR'" >
<xsl:text > manpageauthor() </xsl:text>
</xsl:when>
<xsl:otherwise >
<xsl:text > manpagesection(</xsl:text>
<xsl:value-of select= "title" />
<xsl:text > ) </xsl:text>
</xsl:otherwise>
</xsl:choose>
2004-06-26 19:43:54 +04:00
<xsl:apply-templates />
2004-06-21 23:53:41 +04:00
</xsl:template>
2004-06-22 00:26:59 +04:00
<xsl:template match= "orderedlist" >
2004-06-21 23:53:41 +04:00
<xsl:text > startdit() </xsl:text>
<xsl:for-each select= "listitem" >
<xsl:text > dit() </xsl:text>
2004-06-22 00:26:59 +04:00
<xsl:copy >
<xsl:apply-templates />
</xsl:copy>
2004-06-21 23:53:41 +04:00
<xsl:text > </xsl:text>
</xsl:for-each>
<xsl:text > enddit() </xsl:text>
</xsl:template>
2004-06-22 00:26:59 +04:00
<xsl:template match= "itemizedlist" >
<xsl:text > startit() </xsl:text>
<xsl:for-each select= "listitem" >
<xsl:text > it() </xsl:text>
<xsl:copy >
<xsl:apply-templates />
</xsl:copy>
<xsl:text > </xsl:text>
</xsl:for-each>
<xsl:text > endit() </xsl:text>
</xsl:template>
2004-06-21 23:53:41 +04:00
<xsl:template match= "variablelist" >
<xsl:text > startdit() </xsl:text>
<xsl:for-each select= "varlistentry" >
<xsl:text > dit(</xsl:text>
2004-06-26 19:43:54 +04:00
<xsl:copy-of select= "term" >
<xsl:apply-templates />
</xsl:copy-of>
2004-06-21 23:53:41 +04:00
<xsl:text > ) </xsl:text>
2004-06-26 19:43:54 +04:00
<xsl:apply-templates select= "listitem/para" />
2004-06-21 23:53:41 +04:00
<xsl:text > </xsl:text>
</xsl:for-each>
<xsl:text > enddit() </xsl:text>
</xsl:template>
2004-06-26 19:43:54 +04:00
<xsl:template match= "anchor" >
<xsl:text > label(</xsl:text>
<xsl:value-of select= "@id" />
<xsl:text > ) </xsl:text>
</xsl:template>
2004-06-22 00:26:59 +04:00
<xsl:template match= "footnote" >
<xsl:text > footnote(</xsl:text>
<xsl:apply-templates />
<xsl:text > )</xsl:text>
</xsl:template>
<xsl:template match= "toc" >
<xsl:text > gettocstring() </xsl:text>
</xsl:template>
<xsl:template match= "ulink" >
<xsl:text > </xsl:text>
<xsl:text > url(</xsl:text>
<xsl:value-of select= "url" />
<xsl:text > )(</xsl:text>
<xsl:apply-templates />
<xsl:text > )</xsl:text>
</xsl:template>
<xsl:template match= "link" >
<xsl:text > lref(</xsl:text>
<xsl:apply-templates />
<xsl:text > )(</xsl:text>
<xsl:value-of select= "@linkend" />
<xsl:text > )</xsl:text>
</xsl:template>
<xsl:template match= "index" >
<xsl:text > printindex() </xsl:text>
</xsl:template>
<xsl:template match= "sect1" >
<xsl:choose >
<xsl:when test= "@id = ''" >
<xsl:text > sect(</xsl:text>
</xsl:when>
<xsl:otherwise >
<xsl:text > lsect(</xsl:text>
<xsl:value-of select= "@id" />
<xsl:text > )(</xsl:text>
</xsl:otherwise>
</xsl:choose>
<xsl:value-of select= "title" />
<xsl:text > ) </xsl:text>
<xsl:apply-templates />
</xsl:template>
<xsl:template match= "sect2" >
<xsl:choose >
<xsl:when test= "@id = ''" >
<xsl:text > subsect(</xsl:text>
</xsl:when>
<xsl:otherwise >
<xsl:text > lsubsect(</xsl:text>
<xsl:value-of select= "@id" />
<xsl:text > )(</xsl:text>
</xsl:otherwise>
</xsl:choose>
<xsl:value-of select= "title" />
<xsl:text > ) </xsl:text>
<xsl:apply-templates />
</xsl:template>
<xsl:template match= "sect3" >
<xsl:choose >
<xsl:when test= "@id = ''" >
<xsl:text > subsubsect(</xsl:text>
</xsl:when>
<xsl:otherwise >
<xsl:text > lsubsubsect(</xsl:text>
<xsl:value-of select= "@id" />
<xsl:text > )(</xsl:text>
</xsl:otherwise>
</xsl:choose>
<xsl:value-of select= "title" />
<xsl:text > ) </xsl:text>
<xsl:apply-templates />
</xsl:template>
<xsl:template match= "sect4" >
<xsl:choose >
<xsl:when test= "@id = ''" >
<xsl:text > subsubsubsect(</xsl:text>
</xsl:when>
<xsl:otherwise >
<xsl:text > lsubsubsubsect(</xsl:text>
<xsl:value-of select= "@id" />
<xsl:text > )(</xsl:text>
</xsl:otherwise>
</xsl:choose>
<xsl:value-of select= "title" />
<xsl:text > ) </xsl:text>
<xsl:apply-templates />
</xsl:template>
2004-06-21 23:53:41 +04:00
<xsl:template match= "*" />
</xsl:stylesheet>