diff options
author | defanor <defanor@uberspace.net> | 2017-12-15 00:05:18 +0300 |
---|---|---|
committer | defanor <defanor@uberspace.net> | 2017-12-15 00:05:18 +0300 |
commit | 157e520082510e78808051d3bc2b46ae5a5bb1cc (patch) | |
tree | 6be4c0f9ced74691c342969515bd9f9defac8c93 /.config/pancake/unclutter | |
parent | 0c430f7d5287db519aaca8d0fd4771c3047a8856 (diff) |
Add XSLTs for Hoogle and Hackage
Diffstat (limited to '.config/pancake/unclutter')
-rw-r--r-- | .config/pancake/unclutter/hackage-haddock.xsl | 25 | ||||
-rw-r--r-- | .config/pancake/unclutter/hoogle.xsl | 22 |
2 files changed, 47 insertions, 0 deletions
diff --git a/.config/pancake/unclutter/hackage-haddock.xsl b/.config/pancake/unclutter/hackage-haddock.xsl new file mode 100644 index 0000000..e10b66c --- /dev/null +++ b/.config/pancake/unclutter/hackage-haddock.xsl @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> + <xsl:output method="html" indent="yes"/> + <xsl:template match="/"> + <html> + <body> + <!-- Mostly copying, just inserting horizontal rules before + function descriptions. --> + <xsl:copy-of select="//div[@id='package-header']" /> + <xsl:copy-of select="//div[@id='module-header']" /> + <xsl:copy-of select="//div[@id='description']" /> + <xsl:copy-of select="//div[@id='table-of-contents']" /> + <xsl:copy-of select="//div[@id='synopsis']" /> + <div id="interface"> + <xsl:for-each select="//div[@id='interface']/node()"> + <xsl:if test="@class = 'top'"> + <hr /> + </xsl:if> + <xsl:copy-of select="." /> + </xsl:for-each> + </div> + </body> + </html> + </xsl:template> +</xsl:stylesheet> diff --git a/.config/pancake/unclutter/hoogle.xsl b/.config/pancake/unclutter/hoogle.xsl new file mode 100644 index 0000000..87a4ea4 --- /dev/null +++ b/.config/pancake/unclutter/hoogle.xsl @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> + <xsl:output method="html" indent="yes"/> + <xsl:template match="/"> + <html> + <body> + Hoogle: <xsl:value-of select="//h1" /> + <ul> + <xsl:for-each select="//div[@class='ans']"> + <li> + <xsl:copy-of select="a[@class='a']" /> + <xsl:value-of select="a[position()=3]" /> + <xsl:copy-of select="following::div[position()=1]" /> + <xsl:copy-of select="following::div[position()=2]" /> + <br/> + </li> + </xsl:for-each> + </ul> + </body> + </html> + </xsl:template> +</xsl:stylesheet> |