1*00b67f09SDavid van Moolenbroek<!-- 2*00b67f09SDavid van Moolenbroek - Copyright (C) 2005, 2007, 2010, 2014 Internet Systems Consortium, Inc. ("ISC") 3*00b67f09SDavid van Moolenbroek - 4*00b67f09SDavid van Moolenbroek - Permission to use, copy, modify, and/or distribute this software for any 5*00b67f09SDavid van Moolenbroek - purpose with or without fee is hereby granted, provided that the above 6*00b67f09SDavid van Moolenbroek - copyright notice and this permission notice appear in all copies. 7*00b67f09SDavid van Moolenbroek - 8*00b67f09SDavid van Moolenbroek - THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH 9*00b67f09SDavid van Moolenbroek - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY 10*00b67f09SDavid van Moolenbroek - AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, 11*00b67f09SDavid van Moolenbroek - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM 12*00b67f09SDavid van Moolenbroek - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE 13*00b67f09SDavid van Moolenbroek - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 14*00b67f09SDavid van Moolenbroek - PERFORMANCE OF THIS SOFTWARE. 15*00b67f09SDavid van Moolenbroek--> 16*00b67f09SDavid van Moolenbroek 17*00b67f09SDavid van Moolenbroek<!-- Id --> 18*00b67f09SDavid van Moolenbroek 19*00b67f09SDavid van Moolenbroek<!-- ISC customizations for db2latex generator --> 20*00b67f09SDavid van Moolenbroek 21*00b67f09SDavid van Moolenbroek<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> 22*00b67f09SDavid van Moolenbroek 23*00b67f09SDavid van Moolenbroek <!-- Import the db2latex stuff --> 24*00b67f09SDavid van Moolenbroek <xsl:import href="@XSLT_DB2LATEX_STYLE@"/> 25*00b67f09SDavid van Moolenbroek 26*00b67f09SDavid van Moolenbroek <!-- Blank lines between paragraphs, please --> 27*00b67f09SDavid van Moolenbroek <xsl:param name="latex.use.parskip" select="1"/> 28*00b67f09SDavid van Moolenbroek 29*00b67f09SDavid van Moolenbroek <!-- Least bad current option for constructing tables --> 30*00b67f09SDavid van Moolenbroek <xsl:param name="latex.use.ltxtable" select="1"/> 31*00b67f09SDavid van Moolenbroek <xsl:param name="latex.use.longtable" select="1"/> 32*00b67f09SDavid van Moolenbroek 33*00b67f09SDavid van Moolenbroek <!-- LaTeX2e documentclass options. --> 34*00b67f09SDavid van Moolenbroek <xsl:param name="latex.documentclass.common"/> 35*00b67f09SDavid van Moolenbroek <xsl:param name="latex.documentclass.book">10pt,twoside,openright</xsl:param> 36*00b67f09SDavid van Moolenbroek 37*00b67f09SDavid van Moolenbroek <!-- This documentation is in English (or maybe Bad English) --> 38*00b67f09SDavid van Moolenbroek <xsl:param name="latex.babel.language" select="'english'"/> 39*00b67f09SDavid van Moolenbroek <xsl:param name="l10n.gentext.default.language" select="'en'"/> 40*00b67f09SDavid van Moolenbroek 41*00b67f09SDavid van Moolenbroek <!-- Where to find "admonition" graphics --> 42*00b67f09SDavid van Moolenbroek <xsl:param name="admon.graphics.path" select="'@XSLT_DB2LATEX_ADMONITIONS@'"/> 43*00b67f09SDavid van Moolenbroek 44*00b67f09SDavid van Moolenbroek <!-- ANSI C function prototypes, please --> 45*00b67f09SDavid van Moolenbroek <xsl:param name="funcsynopsis.style">ansi</xsl:param> 46*00b67f09SDavid van Moolenbroek 47*00b67f09SDavid van Moolenbroek <!-- Local modifications to db2latex's mapping rules --> 48*00b67f09SDavid van Moolenbroek <xsl:param name="latex.mapping.xml" select="document('isc-docbook-latex-mappings.xml')"/> 49*00b67f09SDavid van Moolenbroek 50*00b67f09SDavid van Moolenbroek <!-- Patch around db2latex (0.8pre1) bug --> 51*00b67f09SDavid van Moolenbroek <xsl:template match="copyright/year"> 52*00b67f09SDavid van Moolenbroek <xsl:apply-templates /> 53*00b67f09SDavid van Moolenbroek <xsl:if test="position() != last()"> 54*00b67f09SDavid van Moolenbroek <xsl:text>, </xsl:text> 55*00b67f09SDavid van Moolenbroek </xsl:if> 56*00b67f09SDavid van Moolenbroek </xsl:template> 57*00b67f09SDavid van Moolenbroek 58*00b67f09SDavid van Moolenbroek <!-- Include our copyright generator --> 59*00b67f09SDavid van Moolenbroek <xsl:include href="copyright.xsl"/> 60*00b67f09SDavid van Moolenbroek 61*00b67f09SDavid van Moolenbroek <!-- Set comment convention for this output format --> 62*00b67f09SDavid van Moolenbroek <xsl:param name="isc.copyright.leader">% </xsl:param> 63*00b67f09SDavid van Moolenbroek 64*00b67f09SDavid van Moolenbroek <!-- Intercept top level to prepend copyright --> 65*00b67f09SDavid van Moolenbroek <xsl:template match="/"> 66*00b67f09SDavid van Moolenbroek <xsl:value-of select="$isc.copyright"/> 67*00b67f09SDavid van Moolenbroek <xsl:apply-imports/> 68*00b67f09SDavid van Moolenbroek </xsl:template> 69*00b67f09SDavid van Moolenbroek 70*00b67f09SDavid van Moolenbroek <!-- 71*00b67f09SDavid van Moolenbroek - Add support for multiple <para/> elements in a table entry. 72*00b67f09SDavid van Moolenbroek - db2latex is already typesetting the table entry as a parbox, 73*00b67f09SDavid van Moolenbroek - so we just have to insert the paragraph breaks. 74*00b67f09SDavid van Moolenbroek --> 75*00b67f09SDavid van Moolenbroek <xsl:template match="tbody/row/entry/para[position() != last()]"> 76*00b67f09SDavid van Moolenbroek <xsl:apply-imports/> 77*00b67f09SDavid van Moolenbroek <xsl:text> \par </xsl:text> 78*00b67f09SDavid van Moolenbroek </xsl:template> 79*00b67f09SDavid van Moolenbroek 80*00b67f09SDavid van Moolenbroek <!-- 81*00b67f09SDavid van Moolenbroek - Add support for <optional/> in <programlisting/>. 82*00b67f09SDavid van Moolenbroek --> 83*00b67f09SDavid van Moolenbroek <xsl:template match="optional" mode="latex.verbatim"> 84*00b67f09SDavid van Moolenbroek <xsl:text>[</xsl:text> 85*00b67f09SDavid van Moolenbroek <xsl:apply-templates mode="latex.verbatim"/> 86*00b67f09SDavid van Moolenbroek <xsl:text>]</xsl:text> 87*00b67f09SDavid van Moolenbroek </xsl:template> 88*00b67f09SDavid van Moolenbroek 89*00b67f09SDavid van Moolenbroek <!-- 90*00b67f09SDavid van Moolenbroek - Customize the title page. Are we having fun yet? 91*00b67f09SDavid van Moolenbroek - 92*00b67f09SDavid van Moolenbroek - NB: filename of graphic specified without extension. 93*00b67f09SDavid van Moolenbroek - LaTeX includes file.eps, PDFLaTeX includes file.pdf. 94*00b67f09SDavid van Moolenbroek - 95*00b67f09SDavid van Moolenbroek - Spacing and font sizes could probably use some work. 96*00b67f09SDavid van Moolenbroek --> 97*00b67f09SDavid van Moolenbroek <xsl:param name="latex.maketitle"> 98*00b67f09SDavid van Moolenbroek <xsl:text> 99*00b67f09SDavid van Moolenbroek \begin{titlepage} 100*00b67f09SDavid van Moolenbroek \null\vfil 101*00b67f09SDavid van Moolenbroek \vskip 60pt 102*00b67f09SDavid van Moolenbroek \begin{center}% 103*00b67f09SDavid van Moolenbroek { %\LARGE 104*00b67f09SDavid van Moolenbroek \Huge 105*00b67f09SDavid van Moolenbroek \bfseries 106*00b67f09SDavid van Moolenbroek </xsl:text> 107*00b67f09SDavid van Moolenbroek <xsl:for-each select="/book/title"> 108*00b67f09SDavid van Moolenbroek <xsl:call-template name="text"/> 109*00b67f09SDavid van Moolenbroek </xsl:for-each> 110*00b67f09SDavid van Moolenbroek <xsl:text> 111*00b67f09SDavid van Moolenbroek \par}% 112*00b67f09SDavid van Moolenbroek \vskip 3em% 113*00b67f09SDavid van Moolenbroek { %\large 114*00b67f09SDavid van Moolenbroek \Large 115*00b67f09SDavid van Moolenbroek \lineskip .75em% 116*00b67f09SDavid van Moolenbroek </xsl:text> 117*00b67f09SDavid van Moolenbroek <xsl:for-each select="/book/bookinfo/releaseinfo[1]"> 118*00b67f09SDavid van Moolenbroek <xsl:call-template name="text"/> 119*00b67f09SDavid van Moolenbroek </xsl:for-each> 120*00b67f09SDavid van Moolenbroek <xsl:text> 121*00b67f09SDavid van Moolenbroek \par} 122*00b67f09SDavid van Moolenbroek %\vskip 1.5em% 123*00b67f09SDavid van Moolenbroek \vfil 124*00b67f09SDavid van Moolenbroek % Not sure exactly how much to trim logo, but given that 125*00b67f09SDavid van Moolenbroek % this is a centered environment, we need not be too precise 126*00b67f09SDavid van Moolenbroek % so long as the image is centered in the input PDF, we 127*00b67f09SDavid van Moolenbroek % trim enough for it to fit on page, and we do not trim 128*00b67f09SDavid van Moolenbroek % so much that we clip out part of the graphic itself. 129*00b67f09SDavid van Moolenbroek % This seems to work, anyway. 130*00b67f09SDavid van Moolenbroek \includegraphics[trim=400 400 400 400,scale=2.5]{isc-logo} 131*00b67f09SDavid van Moolenbroek \end{center}\par 132*00b67f09SDavid van Moolenbroek \vfil\null 133*00b67f09SDavid van Moolenbroek \end{titlepage} 134*00b67f09SDavid van Moolenbroek </xsl:text> 135*00b67f09SDavid van Moolenbroek <xsl:text> </xsl:text> 136*00b67f09SDavid van Moolenbroek </xsl:param> 137*00b67f09SDavid van Moolenbroek 138*00b67f09SDavid van Moolenbroek <!-- Add version in footer. --> 139*00b67f09SDavid van Moolenbroek <xsl:param name="latex.book.preamble.post"> 140*00b67f09SDavid van Moolenbroek <xsl:text> 141*00b67f09SDavid van Moolenbroek \pagestyle{fancy} 142*00b67f09SDavid van Moolenbroek \fancyfoot[ce,co]{\thepage} 143*00b67f09SDavid van Moolenbroek \fancyfoot[le,ro]{@BIND9_VERSIONSTRING@} 144*00b67f09SDavid van Moolenbroek \renewcommand{\headrulewidth}{0.4 pt} 145*00b67f09SDavid van Moolenbroek \fancypagestyle{plain}{% 146*00b67f09SDavid van Moolenbroek \fancyhf{}% 147*00b67f09SDavid van Moolenbroek \fancyfoot[ce,co]{\thepage}% 148*00b67f09SDavid van Moolenbroek \fancyfoot[le,ro]{@BIND9_VERSIONSTRING@}% 149*00b67f09SDavid van Moolenbroek \renewcommand{\headrulewidth}{0 pt} 150*00b67f09SDavid van Moolenbroek } 151*00b67f09SDavid van Moolenbroek </xsl:text> 152*00b67f09SDavid van Moolenbroek </xsl:param> 153*00b67f09SDavid van Moolenbroek 154*00b67f09SDavid van Moolenbroek <!-- 155*00b67f09SDavid van Moolenbroek - More front matter: copyright notice, CVS revision number, table 156*00b67f09SDavid van Moolenbroek - of contents. 157*00b67f09SDavid van Moolenbroek --> 158*00b67f09SDavid van Moolenbroek <xsl:template match="book/bookinfo"> 159*00b67f09SDavid van Moolenbroek <xsl:text>\thispagestyle{empty} </xsl:text> 160*00b67f09SDavid van Moolenbroek <xsl:apply-imports/> 161*00b67f09SDavid van Moolenbroek <xsl:text>\begin{center} </xsl:text> 162*00b67f09SDavid van Moolenbroek <xsl:value-of select="$isc.copyright.text"/> 163*00b67f09SDavid van Moolenbroek <xsl:text>\end{center} </xsl:text> 164*00b67f09SDavid van Moolenbroek <xsl:for-each select="/book/bookinfo/releaseinfo[position() > 1]"> 165*00b67f09SDavid van Moolenbroek <xsl:text>\begin{center}</xsl:text> 166*00b67f09SDavid van Moolenbroek <xsl:call-template name="text"/> 167*00b67f09SDavid van Moolenbroek <xsl:text>\end{center} </xsl:text> 168*00b67f09SDavid van Moolenbroek </xsl:for-each> 169*00b67f09SDavid van Moolenbroek <xsl:text> 170*00b67f09SDavid van Moolenbroek \vfill 171*00b67f09SDavid van Moolenbroek \begin{center} 172*00b67f09SDavid van Moolenbroek Internet System Consortium \\ 173*00b67f09SDavid van Moolenbroek 950 Charter Street \\ 174*00b67f09SDavid van Moolenbroek Redwood City, California \\ 175*00b67f09SDavid van Moolenbroek USA \\ 176*00b67f09SDavid van Moolenbroek http://www.isc.org/ 177*00b67f09SDavid van Moolenbroek \end{center} 178*00b67f09SDavid van Moolenbroek </xsl:text> 179*00b67f09SDavid van Moolenbroek <xsl:text> 180*00b67f09SDavid van Moolenbroek \newpage 181*00b67f09SDavid van Moolenbroek \pagenumbering{roman} 182*00b67f09SDavid van Moolenbroek \tableofcontents 183*00b67f09SDavid van Moolenbroek \newpage 184*00b67f09SDavid van Moolenbroek \pagenumbering{arabic} 185*00b67f09SDavid van Moolenbroek </xsl:text> 186*00b67f09SDavid van Moolenbroek </xsl:template> 187*00b67f09SDavid van Moolenbroek 188*00b67f09SDavid van Moolenbroek <!-- 189*00b67f09SDavid van Moolenbroek - Try to avoid some weird looking line breaks. 190*00b67f09SDavid van Moolenbroek - 191*00b67f09SDavid van Moolenbroek - This doesn't really work right, so disable for now. 192*00b67f09SDavid van Moolenbroek --> 193*00b67f09SDavid van Moolenbroek <xsl:template match="literal" mode="disabled"> 194*00b67f09SDavid van Moolenbroek <xsl:text>\mbox{</xsl:text> 195*00b67f09SDavid van Moolenbroek <xsl:apply-imports/> 196*00b67f09SDavid van Moolenbroek <xsl:text>}</xsl:text> 197*00b67f09SDavid van Moolenbroek </xsl:template> 198*00b67f09SDavid van Moolenbroek 199*00b67f09SDavid van Moolenbroek</xsl:stylesheet> 200*00b67f09SDavid van Moolenbroek 201*00b67f09SDavid van Moolenbroek<!-- 202*00b67f09SDavid van Moolenbroek - Local variables: 203*00b67f09SDavid van Moolenbroek - mode: sgml 204*00b67f09SDavid van Moolenbroek - End: 205*00b67f09SDavid van Moolenbroek --> 206