[libvirt] [PATCH] docs: add a permalink to html headers

Dan Kenigsberg danken at redhat.com
Sun Dec 8 14:05:46 UTC 2013


Quite often, I need to cite URLs like
    http://libvirt.org/formatnetwork.html#elementQoS
but it is annoying to copy them from the table of contents or the html
source.

This patch borrows from the Python documentation in order to make it
easier to cite headers on libvirt's oneline documentation.
---
 docs/libvirt.css | 13 +++++++++++++
 docs/page.xsl    |  7 +++++++
 2 files changed, 20 insertions(+)

diff --git a/docs/libvirt.css b/docs/libvirt.css
index b324ac8..1d27873 100644
--- a/docs/libvirt.css
+++ b/docs/libvirt.css
@@ -498,3 +498,16 @@ div.description pre.code {
     padding: 5px 10px 5px 10px;
     margin-left: 2.5em;
 }
+
+a.headerlink {
+    text-decoration: none!important;
+    visibility: hidden;
+}
+
+h2:hover > a.headerlink,
+h3:hover > a.headerlink,
+h4:hover > a.headerlink,
+h5:hover > a.headerlink,
+h6:hover > a.headerlink {
+    visibility: visible;
+}
diff --git a/docs/page.xsl b/docs/page.xsl
index a2da854..107f6e2 100644
--- a/docs/page.xsl
+++ b/docs/page.xsl
@@ -185,4 +185,11 @@
 
     <xsl:apply-templates select="exsl:node-set($inchtml)/html:html/html:body/*" mode="content"/>
   </xsl:template>
+
+  <xsl:template match="html:h2 | html:h3 | html:h4 | html:h5 | html:h6" mode="content">
+    <xsl:copy>
+      <xsl:copy-of select="./*"/>
+      <a class="headerlink" href="#{html:a/@name}" title="Permalink to this headline">¶</a>
+    </xsl:copy>
+  </xsl:template>
 </xsl:stylesheet>
-- 
1.8.3.1




More information about the libvir-list mailing list