From: Petter Reinholdtsen Date: Thu, 16 Jul 2015 16:06:47 +0000 (+0200) Subject: New blog post about dblatex. X-Git-Url: https://pere.pagekite.me/gitweb/homepage.git/commitdiff_plain/007158a6d9ad27358fd4576dd2750382a11d0057 New blog post about dblatex. --- diff --git a/blog/data/2015-07-16-dblatex-endnotes.txt b/blog/data/2015-07-16-dblatex-endnotes.txt new file mode 100644 index 0000000000..69600e21ce --- /dev/null +++ b/blog/data/2015-07-16-dblatex-endnotes.txt @@ -0,0 +1,54 @@ +Title: Typesetting DocBook footnotes as endnotes with dblatex +Tags: english, docbook, freeculture +Date: 2015-07-16 18:10 + +

I'm still working on the Norwegian version of the +Free Culture book by Lawrence +Lessig, and is now working on the final typesetting and layout. +One of the features I want to get the structure similar to the +original book is to typeset the footnotes as endnotes in the notes +chapter. Based on the +feedback from the Debian +maintainer and the dblatex developer, I came up with this recipe I +would like to share with you. The proposal was to create a new LaTeX +class file and add the LaTeX code there, but this is not always +practical, when I want to be able to replace the class using a make +file variable. So my proposal misuses the latex.begindocument XSL +parameter value, to get a small fragment into the correct location in +the generated LaTeX File.

+ +

First, decide where in the DocBook document to place the endnotes, +and add this text there:

+ +
+<?latex \theendnotes ?>
+
+ +

Next, create a xsl stylesheet file dblatex-endnotes.xsl to add the +code needed to add the endnote instructions in the preamble of the +generated LaTeX document, with content like this:

+ +
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version='1.0'>
+  <xsl:param name="latex.begindocument">
+    <xsl:text>
+\usepackage{endnotes}
+\let\footnote=\endnote
+\def\enoteheading{\mbox{}\par\vskip-\baselineskip }
+\begin{document}
+    </xsl:text>
+  </xsl:param>
+</xsl:stylesheet>
+
+ +

Finally, load this xsl file when running dblatex, for example like +this:

+ +
+dblatex --xsl-user=dblatex-endnotes.xsl freeculture.nb.xml
+
+ +

The end result can be seen on github, where +my +book project is located.