mirror of
https://github.com/gryf/pentadactyl-pm.git
synced 2026-02-06 05:05:45 +01:00
Add fold markers (that I don't use) to style.xsl; minor cleanup.
This commit is contained in:
@@ -1,15 +1,28 @@
|
||||
<!DOCTYPE document SYSTEM "chrome://liberator/content/liberator.dtd">
|
||||
|
||||
<!-- Header {{{1 -->
|
||||
<xsl:stylesheet version="1.0"
|
||||
xmlns="http://vimperator.org/namespaces/liberator"
|
||||
xmlns:liberator="http://vimperator.org/namespaces/liberator"
|
||||
xmlns:html="http://www.w3.org/1999/xhtml"
|
||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:str="http://exslt.org/strings"
|
||||
xmlns:exsl="http://exslt.org/common"
|
||||
extension-element-prefixes="str">
|
||||
|
||||
<xsl:output method="xml" indent="no"/>
|
||||
|
||||
<!-- Variable Definitions {{{1 -->
|
||||
|
||||
<xsl:variable name="tags">
|
||||
<xsl:text> </xsl:text>
|
||||
<xsl:for-each select="//@tag|//liberator:tags/text()|//liberator:tag/text()">
|
||||
<xsl:value-of select="concat(., ' ')"/>
|
||||
</xsl:for-each>
|
||||
</xsl:variable>
|
||||
|
||||
<!-- Root {{{1 -->
|
||||
|
||||
<xsl:template match="liberator:document">
|
||||
<html:html liberator:highlight="Help">
|
||||
<html:head>
|
||||
@@ -28,30 +41,17 @@
|
||||
</html:html>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="liberator:include" mode="pass-2">
|
||||
<xsl:apply-templates select="document(@href)/liberator:document/node()"/>
|
||||
</xsl:template>
|
||||
<!-- Table of Contents {{{1 -->
|
||||
|
||||
<xsl:template match="liberator:h1" mode="pass-2">
|
||||
<xsl:copy>
|
||||
<xsl:apply-templates select="@*|node()"/>
|
||||
</xsl:copy>
|
||||
<html:div liberator:highlight="HelpTOC">
|
||||
<h2>Contents</h2>
|
||||
<xsl:call-template name="toc">
|
||||
<xsl:with-param name="level" select="2"/>
|
||||
</xsl:call-template>
|
||||
</html:div>
|
||||
</xsl:template>
|
||||
<xsl:template name="toc">
|
||||
<xsl:param name="level"/>
|
||||
<xsl:param name="context" select="false()"/>
|
||||
<xsl:param name="context"/>
|
||||
|
||||
<xsl:variable name="tag" select="concat('h', $level)"/>
|
||||
<xsl:variable name="lasttag" select="concat('h', $level - 1)"/>
|
||||
|
||||
<xsl:variable name="nodes" select="//liberator:document/liberator:*[
|
||||
local-name() = $tag and preceding-sibling::*[local-name() = $lasttag][not($context) or (position() = 1 and . = $context)]]"/>
|
||||
local-name() = $tag and preceding-sibling::*[local-name() = $lasttag][position() = 1 and . = $context]]"/>
|
||||
|
||||
<xsl:if test="$nodes">
|
||||
<html:ol liberator:highlight="HelpOrderedList">
|
||||
@@ -72,39 +72,20 @@
|
||||
</html:ol>
|
||||
</xsl:if>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="liberator:dl" mode="pass-2">
|
||||
<xsl:template match="liberator:h1" mode="pass-2">
|
||||
<xsl:copy>
|
||||
<column/>
|
||||
<column/>
|
||||
<xsl:for-each select="liberator:dt">
|
||||
<tr>
|
||||
<xsl:apply-templates select="."/>
|
||||
<xsl:apply-templates select="following-sibling::liberator:dd[position()=1]"/>
|
||||
</tr>
|
||||
</xsl:for-each>
|
||||
<xsl:apply-templates select="@*|node()"/>
|
||||
</xsl:copy>
|
||||
<html:div liberator:highlight="HelpTOC">
|
||||
<h2>Contents</h2>
|
||||
<xsl:call-template name="toc">
|
||||
<xsl:with-param name="level" select="2"/>
|
||||
<xsl:with-param name="context" select="."/>
|
||||
</xsl:call-template>
|
||||
</html:div>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="liberator:tags" mode="pass-2">
|
||||
<html:div style="clear: right"/>
|
||||
<xsl:call-template name="parse-tags">
|
||||
<xsl:with-param name="text" select="."/>
|
||||
</xsl:call-template>
|
||||
</xsl:template>
|
||||
<xsl:template match="liberator:tag|@tag" mode="pass-2">
|
||||
<xsl:call-template name="parse-tags">
|
||||
<xsl:with-param name="text"><xsl:value-of select="."/></xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:template>
|
||||
<xsl:template name="parse-tags">
|
||||
<xsl:param name="text"/>
|
||||
<tags>
|
||||
<xsl:for-each select="str:tokenize($text)">
|
||||
<html:a id="{.}"><tag><xsl:value-of select="."/></tag></html:a>
|
||||
</xsl:for-each>
|
||||
</tags>
|
||||
</xsl:template>
|
||||
<!-- Items {{{1 -->
|
||||
|
||||
<xsl:template match="liberator:item" mode="pass-2">
|
||||
<xsl:copy>
|
||||
@@ -134,17 +115,13 @@
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<span>
|
||||
<xsl:choose>
|
||||
<xsl:when test="$type = 'boolean'">
|
||||
<xsl:attribute name="highlight" namespace="http://vimperator.org/namespaces/liberator">Boolean</xsl:attribute>
|
||||
</xsl:when>
|
||||
<xsl:when test="$type = 'number'">
|
||||
<xsl:attribute name="highlight" namespace="http://vimperator.org/namespaces/liberator">Number</xsl:attribute>
|
||||
</xsl:when>
|
||||
<xsl:when test="$type = 'charlist'">
|
||||
<xsl:attribute name="highlight" namespace="http://vimperator.org/namespaces/liberator">String</xsl:attribute>
|
||||
</xsl:when>
|
||||
</xsl:choose>
|
||||
<xsl:attribute name="highlight" namespace="http://vimperator.org/namespaces/liberator">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$type = 'boolean'">Boolean</xsl:when>
|
||||
<xsl:when test="$type = 'number'">Number</xsl:when>
|
||||
<xsl:when test="$type = 'charlist'">String</xsl:when>
|
||||
</xsl:choose>
|
||||
</xsl:attribute>
|
||||
<xsl:apply-templates/>
|
||||
</span>
|
||||
</xsl:otherwise>
|
||||
@@ -152,19 +129,41 @@
|
||||
</xsl:copy>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Tag Definitions {{{1 -->
|
||||
|
||||
<xsl:template match="liberator:tags" mode="pass-2">
|
||||
<html:div style="clear: right"/>
|
||||
<xsl:call-template name="parse-tags">
|
||||
<xsl:with-param name="text" select="."/>
|
||||
</xsl:call-template>
|
||||
</xsl:template>
|
||||
<xsl:template match="liberator:tag|@tag" mode="pass-2">
|
||||
<xsl:call-template name="parse-tags">
|
||||
<xsl:with-param name="text"><xsl:value-of select="."/></xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:template>
|
||||
<xsl:template name="parse-tags">
|
||||
<xsl:param name="text"/>
|
||||
<tags>
|
||||
<xsl:for-each select="str:tokenize($text)">
|
||||
<html:a id="{.}"><tag><xsl:value-of select="."/></tag></html:a>
|
||||
</xsl:for-each>
|
||||
</tags>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Tag Links {{{1 -->
|
||||
|
||||
<xsl:template name="linkify-tag">
|
||||
<xsl:param name="contents"/>
|
||||
<xsl:variable name="tag" select="str:tokenize($contents, ' [')[1]"/>
|
||||
<html:a href="liberator://help-tag/{$tag}" style="color: inherit;">
|
||||
<xsl:if test="
|
||||
//liberator:tags[contains(concat(' ', ., ' '), concat(' ', $tag, ' '))] |
|
||||
//liberator:tag[contains(concat(' ', ., ' '), concat(' ', $tag, ' '))] |
|
||||
//@tag[contains(concat(' ', ., ' '), concat(' ', $tag, ' '))]">
|
||||
<xsl:if test="contains($tags, concat(' ', $tag, ' '))">
|
||||
<xsl:attribute name="href">#<xsl:value-of select="$tag"/></xsl:attribute>
|
||||
</xsl:if>
|
||||
<xsl:value-of select="$contents"/>
|
||||
</html:a>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="liberator:o" mode="pass-2">
|
||||
<xsl:copy>
|
||||
<xsl:call-template name="linkify-tag">
|
||||
@@ -186,6 +185,9 @@
|
||||
</xsl:call-template>
|
||||
</xsl:copy>
|
||||
</xsl:template>
|
||||
|
||||
<!-- HTML-ish elements {{{1 -->
|
||||
|
||||
<xsl:template match="liberator:ul" mode="pass-2">
|
||||
<html:ul liberator:highlight="HelpList"><xsl:apply-templates select="@*|node()"/></html:ul>
|
||||
</xsl:template>
|
||||
@@ -200,10 +202,25 @@
|
||||
</xsl:copy>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="liberator:dl" mode="pass-2">
|
||||
<xsl:copy>
|
||||
<column/>
|
||||
<column/>
|
||||
<xsl:for-each select="liberator:dt">
|
||||
<tr>
|
||||
<xsl:apply-templates select="."/>
|
||||
<xsl:apply-templates select="following-sibling::liberator:dd[position()=1]"/>
|
||||
</tr>
|
||||
</xsl:for-each>
|
||||
</xsl:copy>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="liberator:link" mode="pass-2">
|
||||
<html:a href="{@topic}"><xsl:apply-templates select="@*|node()"/></html:a>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Special Element Templates {{{1 -->
|
||||
|
||||
<xsl:template match="liberator:pan[liberator:handle]">
|
||||
<form style="text-align:center" xmlns="http://www.w3.org/1999/xhtml"
|
||||
action="https://www.paypal.com/cgi-bin/webscr" method="post">
|
||||
@@ -214,9 +231,14 @@
|
||||
</form>
|
||||
</xsl:template>
|
||||
|
||||
<!-- This does't work. Why?
|
||||
<xsl:include href="chrome://liberator/content/overlay.xsl"/>
|
||||
-->
|
||||
<!-- Process Inclusions {{{1 -->
|
||||
|
||||
<xsl:template match="liberator:include" mode="pass-2">
|
||||
<xsl:apply-templates select="document(@href)/liberator:document/node()"/>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Process Overlays {{{1 -->
|
||||
|
||||
<xsl:variable name="overlay" select="concat('liberator://help-overlay/', /liberator:document/@name)"/>
|
||||
<xsl:variable name="overlaydoc" select="document($overlay)/liberator:overlay"/>
|
||||
|
||||
@@ -262,6 +284,8 @@
|
||||
</xsl:call-template>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Process Tree {{{1 -->
|
||||
|
||||
<xsl:template match="@*|node()" mode="pass-2">
|
||||
<xsl:copy>
|
||||
<xsl:apply-templates select="@*|node()"/>
|
||||
@@ -272,4 +296,4 @@
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
||||
|
||||
<!-- vim:se ft=xslt sts=4 sw=4 et: -->
|
||||
<!-- vim:se ft=xslt sts=4 sw=4 et fdm=marker: -->
|
||||
|
||||
Reference in New Issue
Block a user