]> granicus.if.org Git - docbook-dsssl/commitdiff
Added support for @function attribute in keycap (uses keycap context
authorThomas Schraitle <tom_schr@web.de>
Thu, 5 Jul 2012 14:49:59 +0000 (14:49 +0000)
committerThomas Schraitle <tom_schr@web.de>
Thu, 5 Jul 2012 14:49:59 +0000 (14:49 +0000)
from language files) => fixes RFE#3540451
If @function is set and keycap is empty, then template will use the
content from the keycap context, otherwise it will use just the given
text

xsl/fo/inline.xsl
xsl/html/inline.xsl

index db25ebb1ee4ea96c7281593603e144a2ae764ff1..290226b3b84a203cc038ea2854adf32b5dfbe7a9 100644 (file)
 </xsl:template>
 
 <xsl:template match="keycap">
-  <xsl:call-template name="inline.boldseq"/>
+  <xsl:choose>
+    <xsl:when test="@function and normalize-space(.) = ''">
+      <xsl:call-template name="inline.boldseq">
+        <xsl:with-param name="content">
+          <xsl:call-template name="gentext.template">
+            <xsl:with-param name="context" select="'keycap'"/>
+            <xsl:with-param name="name" select="@function"/>
+          </xsl:call-template>
+        </xsl:with-param>
+      </xsl:call-template>
+    </xsl:when>
+    <xsl:otherwise>
+      <xsl:call-template name="inline.boldseq"/>
+    </xsl:otherwise>
+  </xsl:choose>
 </xsl:template>
 
 <xsl:template match="keycode">
index 7453fa2072f8e43981182392a9a42af42d7c98b9..312dc83e44b700d32fb5e00930af5b604dd7bae8 100644 (file)
 </xsl:template>
 
 <xsl:template match="keycap">
-  <xsl:call-template name="inline.boldseq"/>
+  <xsl:choose>
+    <xsl:when test="@function and normalize-space(.) = ''">
+      <xsl:call-template name="inline.boldseq">
+        <xsl:with-param name="content">
+          <xsl:call-template name="gentext.template">
+            <xsl:with-param name="context" select="'keycap'"/>
+            <xsl:with-param name="name" select="@function"/>
+          </xsl:call-template>
+        </xsl:with-param>
+      </xsl:call-template>
+    </xsl:when>
+    <xsl:otherwise>
+      <xsl:call-template name="inline.boldseq"/>
+    </xsl:otherwise>
+  </xsl:choose>
 </xsl:template>
 
 <xsl:template match="keycode">