added search engine
[senf.git] / doclib / html-munge.xsl
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
3 \r
4   <xsl:output method="html" encoding="html"/>\r
5   \r
6   <xsl:template match="*">\r
7     <xsl:copy>\r
8       <xsl:for-each select="@*"><xsl:copy/></xsl:for-each>\r
9       <xsl:apply-templates/>\r
10     </xsl:copy>\r
11   </xsl:template>\r
12   \r
13   <xsl:template match="li[form]"> \r
14   </xsl:template>\r
15   \r
16   <!-- Add 'class' attribute to some special paragraphs/lists -->\r
17   \r
18   <xsl:template name="add-class">\r
19     <xsl:param name="class"/>\r
20     <xsl:copy>\r
21       <xsl:for-each select="@*"><xsl:copy/></xsl:for-each>\r
22       <xsl:attribute name="class"><xsl:value-of select="$class"/></xsl:attribute>\r
23       <xsl:apply-templates/>\r
24     </xsl:copy>\r
25   </xsl:template>\r
26 \r
27   <xsl:template match="dl[dt/b/a/text()='Bug:']">\r
28     <xsl:call-template name="add-class">\r
29       <xsl:with-param name="class">xref-bug</xsl:with-param>\r
30     </xsl:call-template>\r
31   </xsl:template>\r
32 \r
33   <xsl:template match="dl[dt/b/a/text()='Fix:']">\r
34     <xsl:call-template name="add-class">\r
35       <xsl:with-param name="class">xref-fix</xsl:with-param>\r
36     </xsl:call-template>\r
37   </xsl:template>\r
38 \r
39   <xsl:template match="dl[dt/b/a/text()='Todo:']">\r
40     <xsl:call-template name="add-class">\r
41       <xsl:with-param name="class">xref-todo</xsl:with-param>\r
42     </xsl:call-template>\r
43   </xsl:template>\r
44 \r
45   <xsl:template match="dl[dt/b/a/text()='Idea:']">\r
46     <xsl:call-template name="add-class">\r
47       <xsl:with-param name="class">xref-idea</xsl:with-param>\r
48     </xsl:call-template>\r
49   </xsl:template>\r
50 \r
51   <xsl:template match="dl[dt/b/text()='Parameters:']">\r
52     <xsl:call-template name="add-class">\r
53       <xsl:with-param name="class">parameters</xsl:with-param>\r
54     </xsl:call-template>\r
55   </xsl:template>\r
56 \r
57   <xsl:template match="table[descendant::td[@class='memItemLeft']]">\r
58     <xsl:call-template name="add-class">\r
59       <xsl:with-param name="class">members</xsl:with-param>\r
60     </xsl:call-template>\r
61   </xsl:template>\r
62 \r
63   <xsl:template match="a[@href=string(current())]" priority="1">\r
64     <xsl:call-template name="add-class">\r
65       <xsl:with-param name="class">literal</xsl:with-param>\r
66     </xsl:call-template>\r
67   </xsl:template>\r
68 \r
69   <xsl:template match="a[contains(@href,'http://')]">\r
70     <xsl:call-template name="add-class">\r
71       <xsl:with-param name="class">ext</xsl:with-param>\r
72     </xsl:call-template>\r
73   </xsl:template>\r
74 \r
75   <xsl:template match="a[not(@href)]">\r
76     <xsl:call-template name="add-class">\r
77       <xsl:with-param name="class">anchor</xsl:with-param>\r
78     </xsl:call-template>\r
79   </xsl:template>\r
80   \r
81 </xsl:stylesheet>\r