1 <?xml version="1.0" encoding="utf-8"?>
\r
2 <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
\r
7 doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN"
\r
8 doctype-system="http://www.w3.org/TR/html4/loose.dtd"/>
\r
10 <xsl:param name="topdir" select="''"/>
\r
12 <xsl:template match="*">
\r
14 <xsl:call-template name="copy-attributes"/>
\r
15 <xsl:apply-templates/>
\r
19 <xsl:template name="copy-attributes">
\r
20 <xsl:for-each select="@*">
\r
21 <xsl:attribute name="{name(current())}">
\r
23 <xsl:when test="contains(current(),'@TOPDIR@')">
\r
24 <xsl:value-of select="substring-before(current(),'@TOPDIR@')"/>
\r
25 <xsl:value-of select="$topdir"/>
\r
26 <xsl:value-of select="substring-after(current(),'@TOPDIR@')"/>
\r
29 <xsl:value-of select="current()"/>
\r
36 <xsl:template match="li[form]">
\r
39 <!-- Replace @TOPDIR@ with relative top directory path -->
\r
40 <xsl:template match="@*[contains(current(),'@TOPDIR@')]">
\r
41 <xsl:value-of select="substring-before(current(),'@TOPDIR')"/>
\r
42 <xsl:value-of select="$topdir"/>
\r
43 <xsl:value-of select="substring-after(current(),'@TOPDIR')"/>
\r
46 <!-- Add 'class' attribute to some special paragraphs/lists -->
\r
48 <xsl:template name="add-class">
\r
49 <xsl:param name="class"/>
\r
51 <xsl:call-template name="copy-attributes"/>
\r
52 <xsl:attribute name="class"><xsl:value-of select="$class"/></xsl:attribute>
\r
53 <xsl:apply-templates/>
\r
57 <xsl:template match="dl[dt/b/a/text()='Bug:']">
\r
58 <xsl:call-template name="add-class">
\r
59 <xsl:with-param name="class">xref-bug</xsl:with-param>
\r
60 </xsl:call-template>
\r
63 <xsl:template match="dl[dt/b/a/text()='Fix:']">
\r
64 <xsl:call-template name="add-class">
\r
65 <xsl:with-param name="class">xref-fix</xsl:with-param>
\r
66 </xsl:call-template>
\r
69 <xsl:template match="dl[dt/b/a/text()='Todo:']">
\r
70 <xsl:call-template name="add-class">
\r
71 <xsl:with-param name="class">xref-todo</xsl:with-param>
\r
72 </xsl:call-template>
\r
75 <xsl:template match="dl[dt/b/a/text()='Idea:']">
\r
76 <xsl:call-template name="add-class">
\r
77 <xsl:with-param name="class">xref-idea</xsl:with-param>
\r
78 </xsl:call-template>
\r
81 <xsl:template match="dl[dt/b/text()='Parameters:']">
\r
82 <xsl:call-template name="add-class">
\r
83 <xsl:with-param name="class">parameters</xsl:with-param>
\r
84 </xsl:call-template>
\r
87 <xsl:template match="table[descendant::td[@class='memItemLeft']]">
\r
88 <xsl:call-template name="add-class">
\r
89 <xsl:with-param name="class">members</xsl:with-param>
\r
90 </xsl:call-template>
\r
93 <xsl:template match="a[@href=string(current())]" priority="1">
\r
94 <xsl:call-template name="add-class">
\r
95 <xsl:with-param name="class">literal</xsl:with-param>
\r
96 </xsl:call-template>
\r
99 <xsl:template match="a[contains(@href,'http://')]">
\r
100 <xsl:call-template name="add-class">
\r
101 <xsl:with-param name="class">ext</xsl:with-param>
\r
102 </xsl:call-template>
\r
105 <xsl:template match="a[not(@href)]">
\r
106 <xsl:call-template name="add-class">
\r
107 <xsl:with-param name="class">anchor</xsl:with-param>
\r
108 </xsl:call-template>
\r