summaryrefslogtreecommitdiff
path: root/docs-xml/xslt/db2latex-xsl/xsl/preamble.mod.xsl
diff options
context:
space:
mode:
Diffstat (limited to 'docs-xml/xslt/db2latex-xsl/xsl/preamble.mod.xsl')
-rw-r--r--docs-xml/xslt/db2latex-xsl/xsl/preamble.mod.xsl1131
1 files changed, 0 insertions, 1131 deletions
diff --git a/docs-xml/xslt/db2latex-xsl/xsl/preamble.mod.xsl b/docs-xml/xslt/db2latex-xsl/xsl/preamble.mod.xsl
deleted file mode 100644
index 3fce8c2a40..0000000000
--- a/docs-xml/xslt/db2latex-xsl/xsl/preamble.mod.xsl
+++ /dev/null
@@ -1,1131 +0,0 @@
-<?xml version='1.0'?>
-<!DOCTYPE xsl:stylesheet [ <!ENTITY % xsldoc.ent SYSTEM "./xsldoc.ent"> %xsldoc.ent; ]>
-<!--#############################################################################
-| $Id: preamble.mod.xsl,v 1.82 2004/01/31 12:26:12 j-devenish Exp $
-|- #############################################################################
-| $Author: j-devenish $
-|
-| PURPOSE: Variables and templates to manage LaTeX preamble.
-+ ############################################################################## -->
-
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns:doc="http://nwalsh.com/xsl/documentation/1.0"
- exclude-result-prefixes="doc" version='1.0'>
-
- <doc:reference id="preamble" xmlns="">
- <referenceinfo>
- <releaseinfo role="meta">
- $Id: preamble.mod.xsl,v 1.82 2004/01/31 12:26:12 j-devenish Exp $
- </releaseinfo>
- <authorgroup>
- &ramon;
- &james;
- </authorgroup>
- <copyright>
- <year>2000</year><year>2001</year><year>2002</year><year>2003</year><year>2004</year>
- <holder>Ramon Casellas</holder>
- </copyright>
- <revhistory>
- <doc:revision rcasver="1.77">&rev_2003_05;</doc:revision>
- </revhistory>
- </referenceinfo>
- <title>Variables and Templates used in &LaTeX; Preamble Generation</title>
- <partintro>
- <para>
-
- This section described the variables and templates that are used in
- the generation of the output &LaTeX; preamble. Basically, the
- &LaTeX; preamble depends on the <acronym>XML</acronym> document, that is, on whether
- it is an <doc:db>article</doc:db> or a <doc:db>book</doc:db>.
-
- </para>
- </partintro>
- </doc:reference>
-
- <doc:template name="generate.latex.article.preamble" xmlns="">
- <refpurpose>
-
- Top level template, called by article template, responsible of
- generating the &LaTeX; preamble according to user
- <acronym>XSL</acronym> variables and templates.
-
- </refpurpose>
- <doc:description>
- <para>
-
- If <xref linkend="param.latex.override"/> is empty, the template
- outputs <xref linkend="param.latex.article.preamblestart"/> and
- <xref linkend="param.latex.article.preamble.pre"/>, then calls
- <xref linkend="template.generate.latex.common.preamble"/> and <xref
- linkend="template.generate.latex.essential.preamble"/> followed by
- the value of <xref linkend="param.latex.article.preamble.post"/>.
- Otherwise, it outputs the value of <xref linkend="param.latex.override"/>
- followed by <xref
- linkend="template.generate.latex.essential.preamble"/>.
-
- </para>
- </doc:description>
- </doc:template>
- <xsl:template name="generate.latex.article.preamble">
- <xsl:choose>
- <xsl:when test="$latex.override = ''">
- <xsl:value-of select="$latex.article.preamblestart"/>
- <xsl:value-of select="$latex.article.preamble.pre"/>
- <xsl:call-template name="label.id"/>
- <xsl:call-template name="generate.latex.common.preamble"/>
- <xsl:call-template name="generate.latex.essential.preamble"/>
- <xsl:value-of select="$latex.article.preamble.post"/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="$latex.override"/>
- <xsl:call-template name="generate.latex.essential.preamble"/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
-
- <doc:template name="generate.latex.book.preamble" xmlns="">
- <refpurpose>
-
- Top level template, called by book template, responsible of
- generating the &LaTeX; preamble according to user
- <acronym>XSL</acronym> variables and templates.
-
- </refpurpose>
- <doc:description>
- <para>
-
- If <xref linkend="param.latex.override"/> is empty, the template
- outputs <xref linkend="param.latex.book.preamblestart"/> and
- <xref linkend="param.latex.book.preamble.pre"/>, then calls
- <xref linkend="template.generate.latex.common.preamble"/> and <xref
- linkend="template.generate.latex.essential.preamble"/> followed by
- the value of <xref linkend="param.latex.book.preamble.post"/>.
- Otherwise, it outputs the value of <xref linkend="param.latex.override"/>
- followed by <xref
- linkend="template.generate.latex.essential.preamble"/>.
-
- </para>
- </doc:description>
- </doc:template>
- <xsl:template name="generate.latex.book.preamble">
- <xsl:choose>
- <xsl:when test="$latex.override = ''">
- <xsl:value-of select="$latex.book.preamblestart"/>
- <xsl:value-of select="$latex.book.preamble.pre"/>
- <xsl:call-template name="label.id"/>
- <xsl:call-template name="generate.latex.common.preamble"/>
- <xsl:call-template name="generate.latex.essential.preamble"/>
- <xsl:value-of select="$latex.book.preamble.post"/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="$latex.override"/>
- <xsl:call-template name="generate.latex.essential.preamble"/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
-
- <doc:param name="latex.article.preamblestart" xmlns="">
- <refpurpose> Generate <function condition="latex">documentclass</function> for <doc:db basename="article">articles</doc:db> </refpurpose>
- <doc:variables>
- <itemizedlist>
- <listitem><simpara><xref linkend="param.latex.documentclass.common"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.documentclass.article"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.documentclass.pdftex"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.documentclass.dvips"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.documentclass"/></simpara></listitem>
- </itemizedlist>
- </doc:variables>
- <doc:description>
- </doc:description>
- </doc:param>
- <xsl:param name="latex.article.preamblestart">
- <xsl:text>% --------------------------------------------&#10;</xsl:text>
- <xsl:text>% Autogenerated LaTeX file for articles&#10;</xsl:text>
- <xsl:text>% --------------------------------------------&#10;</xsl:text>
- <xsl:text>\ifx\pdfoutput\undefined&#10;</xsl:text>
- <xsl:text>\documentclass[</xsl:text>
- <xsl:value-of select='$latex.documentclass.common' />
- <xsl:text>,</xsl:text>
- <xsl:value-of select='$latex.documentclass.article' />
- <xsl:text>,</xsl:text>
- <xsl:value-of select='$latex.documentclass.pdftex' />
- <xsl:text>]{</xsl:text>
- <xsl:choose>
- <xsl:when test="$latex.documentclass!=''"><xsl:value-of select="$latex.documentclass" /></xsl:when>
- <xsl:otherwise><xsl:text>article</xsl:text></xsl:otherwise>
- </xsl:choose>
- <xsl:text>}&#10;</xsl:text>
- <xsl:text>\else&#10;</xsl:text>
- <xsl:text>\documentclass[pdftex,</xsl:text>
- <xsl:value-of select='$latex.documentclass.common' />
- <xsl:text>,</xsl:text>
- <xsl:value-of select='$latex.documentclass.article' />
- <xsl:text>,</xsl:text>
- <xsl:value-of select='$latex.documentclass.dvips' />
- <xsl:text>]{</xsl:text>
- <xsl:choose>
- <xsl:when test="$latex.documentclass!=''"><xsl:value-of select="$latex.documentclass" /></xsl:when>
- <xsl:otherwise><xsl:text>article</xsl:text></xsl:otherwise>
- </xsl:choose>
- <xsl:text>}&#10;</xsl:text>
- <xsl:text>\fi&#10;</xsl:text>
- </xsl:param>
-
- <doc:param name="latex.book.preamblestart" xmlns="">
- <refpurpose> Generate <function condition="latex">documentclass</function> for <doc:db basename="book">books</doc:db> </refpurpose>
- <doc:variables>
- <itemizedlist>
- <listitem><simpara><xref linkend="param.latex.documentclass.common"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.documentclass.book"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.documentclass.pdftex"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.documentclass.dvips"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.documentclass"/></simpara></listitem>
- </itemizedlist>
- </doc:variables>
- <doc:description>
- </doc:description>
- </doc:param>
- <xsl:param name="latex.book.preamblestart">
- <xsl:text>% ------------------------------------------------------------ &#10;</xsl:text>
- <xsl:text>% Autogenerated LaTeX file for books &#10;</xsl:text>
- <xsl:text>% ------------------------------------------------------------ &#10;</xsl:text>
- <xsl:text>\ifx\pdfoutput\undefined&#10;</xsl:text>
- <xsl:text>\documentclass[</xsl:text>
- <xsl:value-of select='$latex.documentclass.common' />
- <xsl:text>,</xsl:text>
- <xsl:value-of select='$latex.documentclass.book' />
- <xsl:text>,</xsl:text>
- <xsl:value-of select='$latex.documentclass.pdftex' />
- <xsl:text>]{</xsl:text>
- <xsl:choose>
- <xsl:when test="$latex.documentclass!=''"><xsl:value-of select="$latex.documentclass" /></xsl:when>
- <xsl:otherwise><xsl:text>report</xsl:text></xsl:otherwise>
- </xsl:choose>
- <xsl:text>}&#10;</xsl:text>
- <xsl:text>\else&#10;</xsl:text>
- <xsl:text>\documentclass[pdftex,</xsl:text>
- <xsl:value-of select='$latex.documentclass.common' />
- <xsl:text>,</xsl:text>
- <xsl:value-of select='$latex.documentclass.book' />
- <xsl:text>,</xsl:text>
- <xsl:value-of select='$latex.documentclass.dvips' />
- <xsl:text>]{</xsl:text>
- <xsl:choose>
- <xsl:when test="$latex.documentclass!=''"><xsl:value-of select="$latex.documentclass" /></xsl:when>
- <xsl:otherwise><xsl:text>report</xsl:text></xsl:otherwise>
- </xsl:choose>
- <xsl:text>}&#10;</xsl:text>
- <xsl:text>\fi&#10;</xsl:text>
- </xsl:param>
-
- <doc:param xmlns="">
- <refpurpose> Select localisation language </refpurpose>
- <doc:description>
- <para>
- Chooses the <quote>gentext</quote> language for the document.
- </para>
- </doc:description>
- <doc:variables>
- &no_var;
- </doc:variables>
- <doc:notes>
- <para>
-
- Selects the root <doc:db>set</doc:db>, <doc:db>book</doc:db> or
- <doc:db>article</doc:db> element and reads its <sgmltag
- class="attribute">lang</sgmltag> or <sgmltag
- class="attribute">xml:lang</sgmltag> attribute.
-
- </para>
- </doc:notes>
- </doc:param>
- <xsl:param name="document.xml.language">
- <xsl:call-template name="l10n.language">
- <xsl:with-param name="target" select="(/set|/book|/article)[1]"/>
- <!-- now, induce the use of $target rather than the current node: -->
- <xsl:with-param name="xref-context" select="true()"/>
- </xsl:call-template>
- </xsl:param>
-
- <doc:param xmlns="">
- <refpurpose> Select <productname>babel</productname> option </refpurpose>
- <doc:description>
- <para>
- If <xref linkend="param.latex.babel.language"/> is not set, this
- template will select a <productname>babel</productname> option
- based on the <xref linkend="param.document.xml.language"/>.
- </para>
- </doc:description>
- <doc:variables>
- <itemizedlist>
- <listitem><simpara><xref linkend="param.latex.babel.language"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.document.xml.language"/></simpara></listitem>
- </itemizedlist>
- </doc:variables>
- <doc:notes>
- <para>A special value of <quote><literal>none</literal></quote>
- can be used to disable <productname>babel</productname>.</para>
- </doc:notes>
- </doc:param>
- <xsl:param name="latex.language.option">
- <xsl:choose>
- <xsl:when test="$latex.babel.language!=''">
- <xsl:value-of select="$latex.babel.language"/>
- </xsl:when>
- <xsl:when test="starts-with($document.xml.language,'af')">afrikaans</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'br')">breton</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'ca')">catalan</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'cs')">czech</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'cy')">welsh</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'da')">danish</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'de')">ngerman</xsl:when><!-- ngerman, german or germanb? -->
- <xsl:when test="starts-with($document.xml.language,'el')">greek</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'en')">
- <xsl:choose>
- <xsl:when test="starts-with($document.xml.language,'en-CA')">canadian</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'en-GB')">british</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'en-US')">USenglish</xsl:when>
- <xsl:otherwise>none</xsl:otherwise>
- </xsl:choose>
- </xsl:when>
- <xsl:when test="starts-with($document.xml.language,'eo')">esperanto</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'es')">spanish</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'et')">estonian</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'fi')">finnish</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'fr')">french</xsl:when><!-- francais, french, or frenchb? -->
- <xsl:when test="starts-with($document.xml.language,'ga')">irish</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'gd')">scottish</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'gl')">galician</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'he')">hebrew</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'hr')">croatian</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'hu')">hungarian</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'id')">bahasa</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'it')">italian</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'nl')">dutch</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'nn')">norsk</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'pl')">polish</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'pt')">
- <xsl:choose>
- <xsl:when test="starts-with($document.xml.language,'pt-BR')">brazil</xsl:when>
- <xsl:otherwise>portugese</xsl:otherwise>
- </xsl:choose>
- </xsl:when>
- <xsl:when test="starts-with($document.xml.language,'ro')">romanian</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'ru')">russian</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'sk')">slovak</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'sl')">slovene</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'sv')">swedish</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'tr')">turkish</xsl:when>
- <xsl:when test="starts-with($document.xml.language,'uk')">ukrainian</xsl:when>
- </xsl:choose>
- </xsl:param>
-
- <doc:template xmlns="">
- <refpurpose>
-
- Common &LaTeX; preamble shared by <doc:db>articles</doc:db> and
- <doc:db>books</doc:db>, and other document classes. Most of the
- packages and package options are managed here.
-
- </refpurpose>
- <doc:description>
- <para>
-
- The &LaTeX; preamble, after the <function
- condition="latex">documentclass</function> command but before the
- <function condition="env">document</function> environment.
-
- </para>
- </doc:description>
- <doc:variables>
- <itemizedlist>
- <listitem><simpara><xref linkend="param.latex.pdf.support"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.pdf.preamble"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.article.varsets"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.book.varsets"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.bridgehead.in.lot"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.use.fancyhdr"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.fancyhdr.style"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.fancyhdr.truncation.partition"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.fancyhdr.truncation.style"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.use.varioref"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.varioref.options"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.use.dcolumn"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.decimal.point"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.use.fancybox"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.use.fancyvrb"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.fancyvrb.tabsize"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.use.isolatin1"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.use.parskip"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.use.rotating"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.use.subfigure"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.use.tabularx"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.use.umoline"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.use.url"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.math.support"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.math.preamble"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.document.font"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.use.hyperref"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.admonition.environment"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.caption.swapskip"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.hyphenation.tttricks"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.language.option"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.is.draft"/></simpara></listitem>
- </itemizedlist>
- </doc:variables>
- <doc:seealso>
- <itemizedlist>
- <listitem><simpara><xref linkend="template.generate.latex.pagestyle"/></simpara></listitem>
- <listitem><simpara><xref linkend="template.gentext.dingbat"/></simpara></listitem>
- <listitem><simpara><xref linkend="template.latex.hyperref.preamble"/></simpara></listitem>
- <listitem><simpara><xref linkend="template.float.preamble"/></simpara></listitem>
- <listitem><simpara><xref linkend="template.latex.graphicext"/></simpara></listitem>
- <listitem><simpara><xref linkend="template.generate.latex.draft.preamble"/></simpara></listitem>
- </itemizedlist>
- </doc:seealso>
- </doc:template>
- <xsl:template name="generate.latex.common.preamble">
- <xsl:choose>
- <xsl:when test="$latex.pdf.support=1"><xsl:value-of select="$latex.pdf.preamble"/></xsl:when>
- <xsl:otherwise><xsl:text>\usepackage{graphicx}&#10;</xsl:text></xsl:otherwise>
- </xsl:choose>
- <xsl:if test="local-name(.)='article'">
- <xsl:value-of select="$latex.article.varsets"/>
- </xsl:if>
- <xsl:if test="local-name(.)='book'">
- <xsl:value-of select="$latex.book.varsets"/>
- </xsl:if>
- <xsl:if test="$latex.bridgehead.in.lot=1">
- <xsl:text><![CDATA[
-\makeatletter
-% redefine the listoffigures and listoftables so that the name of the chapter
-% is printed whenever there are figures or tables from that chapter. encourage
-% pagebreak prior to the name of the chapter (discourage orphans).
-\let\save@@chapter\@chapter
-\let\save@@l@figure\l@figure
-\let\the@l@figure@leader\relax
-\def\@chapter[#1]#2{\save@@chapter[{#1}]{#2}%
-\addtocontents{lof}{\protect\def\the@l@figure@leader{\protect\pagebreak[0]\protect\contentsline{chapter}{\protect\numberline{\thechapter}#1}{}{\thepage}}}%
-\addtocontents{lot}{\protect\def\the@l@figure@leader{\protect\pagebreak[0]\protect\contentsline{chapter}{\protect\numberline{\thechapter}#1}{}{\thepage}}}%
-}
-\renewcommand*\l@figure{\the@l@figure@leader\let\the@l@figure@leader\relax\save@@l@figure}
-\let\l@table\l@figure
-\makeatother
-]]></xsl:text>
- </xsl:if>
- <xsl:if test="$latex.use.fancyhdr=1">
- <xsl:text>\usepackage{fancyhdr}&#10;</xsl:text>
- <xsl:text>\renewcommand{\headrulewidth}{0.4pt}&#10;</xsl:text>
- <xsl:text>\renewcommand{\footrulewidth}{0.4pt}&#10;</xsl:text>
- <xsl:if test="$latex.fancyhdr.truncation.partition!=''">
- <xsl:variable name="partition">
- <xsl:value-of select="round(number($latex.fancyhdr.truncation.partition))"/>
- </xsl:variable>
- <xsl:variable name="left.fraction">
- <xsl:choose>
- <xsl:when test="$partition&lt;1">
- <xsl:text>0</xsl:text>
- </xsl:when>
- <xsl:when test="$partition>97">
- <xsl:text>.98</xsl:text>
- </xsl:when>
- <xsl:otherwise>
- <!-- example: 60 becomes .59 -->
- <xsl:value-of select="($partition - 1) div 100"/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
- <xsl:variable name="right.fraction" select="0.98 - number($left.fraction)"/>
- <xsl:text>% Safeguard against long headers.&#10;</xsl:text>
- <xsl:text>\IfFileExists{truncate.sty}{&#10;</xsl:text>
- <xsl:text>\usepackage{truncate}&#10;</xsl:text>
- <xsl:text>% Use an ellipsis when text would be larger than x% of the text width.&#10;</xsl:text>
- <xsl:text>% Preserve left/right text alignment using \hfill (works for English).&#10;</xsl:text>
- <xsl:choose>
- <xsl:when test="$latex.fancyhdr.truncation.style='lr'">
- <!-- left vs. right -->
- <xsl:choose>
- <xsl:when test="$left.fraction &gt; 0.02">
- <xsl:text>\fancyhead[ol]{\truncate{</xsl:text><xsl:value-of select="$left.fraction"/><xsl:text>\textwidth}{\sl\leftmark}}&#10;</xsl:text>
- <xsl:text>\fancyhead[el]{\truncate{</xsl:text><xsl:value-of select="$left.fraction"/><xsl:text>\textwidth}{\sl\leftmark}}&#10;</xsl:text>
- </xsl:when>
- <xsl:otherwise>
- <xsl:text>\fancyhead[ol]{}&#10;</xsl:text>
- <xsl:text>\fancyhead[el]{}&#10;</xsl:text>
- </xsl:otherwise>
- </xsl:choose>
- <xsl:choose>
- <xsl:when test="$right.fraction &gt; 0.02">
- <xsl:text>\fancyhead[or]{\truncate{</xsl:text><xsl:value-of select="$right.fraction"/><xsl:text>\textwidth}{\hfill\sl\rightmark}}&#10;</xsl:text>
- <xsl:text>\fancyhead[er]{\truncate{</xsl:text><xsl:value-of select="$right.fraction"/><xsl:text>\textwidth}{\hfill\sl\rightmark}}&#10;</xsl:text>
- </xsl:when>
- <xsl:otherwise>
- <xsl:text>\fancyhead[or]{}&#10;</xsl:text>
- <xsl:text>\fancyhead[er]{}&#10;</xsl:text>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:when>
- <xsl:otherwise>
- <!-- inside vs. outside -->
- <xsl:choose>
- <xsl:when test="$left.fraction &gt; 0.02">
- <xsl:text>\fancyhead[ol]{\truncate{</xsl:text><xsl:value-of select="$left.fraction"/><xsl:text>\textwidth}{\sl\leftmark}}&#10;</xsl:text>
- <xsl:text>\fancyhead[er]{\truncate{</xsl:text><xsl:value-of select="$left.fraction"/><xsl:text>\textwidth}{\hfill\sl\rightmark}}&#10;</xsl:text>
- </xsl:when>
- <xsl:otherwise>
- <xsl:text>\fancyhead[ol]{}&#10;</xsl:text>
- <xsl:text>\fancyhead[er]{}&#10;</xsl:text>
- </xsl:otherwise>
- </xsl:choose>
- <xsl:choose>
- <xsl:when test="$right.fraction &gt; 0.02">
- <xsl:text>\fancyhead[el]{\truncate{</xsl:text><xsl:value-of select="$right.fraction"/><xsl:text>\textwidth}{\sl\leftmark}}&#10;</xsl:text>
- <xsl:text>\fancyhead[or]{\truncate{</xsl:text><xsl:value-of select="$right.fraction"/><xsl:text>\textwidth}{\hfill\sl\rightmark}}&#10;</xsl:text>
- </xsl:when>
- <xsl:otherwise>
- <xsl:text>\fancyhead[el]{}&#10;</xsl:text>
- <xsl:text>\fancyhead[or]{}&#10;</xsl:text>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:otherwise>
- </xsl:choose>
- <xsl:text>}{\typeout{WARNING: truncate.sty wasn't available and functionality was skipped.}}&#10;</xsl:text>
- </xsl:if>
- <xsl:choose>
- <xsl:when test="$latex.fancyhdr.style='natural'">
- <xsl:text><![CDATA[
-\makeatletter
-% Override the default from fancyhdr (which would be to have all-caps headings).
-\newcommand{\dblatex@chaptermark}[1]{\markboth{{\ifnum \c@secnumdepth>\m@ne \@chapapp\ \thechapter. \ \fi #1}}{}}
-\def\dblatex@chaptersmark#1{\markboth{{#1}}{}}
-\newcommand{\dblatex@sectionmark}[1]{\markright{{\ifnum \c@secnumdepth >\z@ \thesection. \ \fi #1}}}
-\let\dblatex@ps@fancy\ps@fancy
-\def\ps@fancy{
- \dblatex@ps@fancy
- \let\chaptermark\dblatex@chaptermark
- \let\sectionmark\dblatex@sectionmark
-}
-\makeatother
-]]></xsl:text>
- </xsl:when>
- </xsl:choose>
- <xsl:call-template name="generate.latex.pagestyle"/>
- <!--
- Add dollar...
- <xsl:if test="latex.fancyhdr.lh !=''"><xsl:text>\lhead{</xsl:text><xsl:value-of select="$latex.fancyhdr.lh"/><xsl:text>}&#10;</xsl:text></xsl:if>
- <xsl:if test="latex.fancyhdr.ch !=''"><xsl:text>\chead{</xsl:text><xsl:value-of select="$latex.fancyhdr.ch"/><xsl:text>}&#10;</xsl:text></xsl:if>
- <xsl:if test="latex.fancyhdr.rh !=''"><xsl:text>\rhead{</xsl:text><xsl:value-of select="$latex.fancyhdr.rh"/><xsl:text>}&#10;</xsl:text></xsl:if>
- <xsl:if test="latex.fancyhdr.lf !=''"><xsl:text>\lfoot{</xsl:text><xsl:value-of select="$latex.fancyhdr.lf"/><xsl:text>}&#10;</xsl:text></xsl:if>
- <xsl:if test="latex.fancyhdr.cf !=''"><xsl:text>\cfoot{</xsl:text><xsl:value-of select="$latex.fancyhdr.cf"/><xsl:text>}&#10;</xsl:text></xsl:if>
- <xsl:if test="latex.fancyhdr.rf !=''"><xsl:text>\rfoot{</xsl:text><xsl:value-of select="$latex.fancyhdr.rf"/><xsl:text>}&#10;</xsl:text></xsl:if>
- -->
- </xsl:if>
- <xsl:text>% ---------------------- &#10;</xsl:text>
- <xsl:text>% Most Common Packages &#10;</xsl:text>
- <xsl:text>% ---------------------- &#10;</xsl:text>
- <xsl:if test="$latex.use.varioref=1">
- <xsl:text>\usepackage[</xsl:text>
- <xsl:value-of select="$latex.varioref.options"/>
- <xsl:text>]{varioref} &#10;</xsl:text>
- </xsl:if>
- <xsl:text>\usepackage{latexsym} &#10;</xsl:text>
- <xsl:if test="$latex.use.dcolumn=1">
- <xsl:text>\usepackage{dcolumn} &#10;</xsl:text>
- <xsl:text>% Default decimal point-style column&#10;</xsl:text>
- <xsl:text>\newcolumntype{d}{D{</xsl:text>
- <xsl:call-template name="gentext.dingbat">
- <xsl:with-param name="dingbat">decimalpoint</xsl:with-param>
- </xsl:call-template>
- <xsl:text>}{</xsl:text>
- <xsl:choose>
- <xsl:when test="$latex.decimal.point!=''">
- <xsl:value-of select="$latex.decimal.point"/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:call-template name="gentext.dingbat">
- <xsl:with-param name="dingbat">latexdecimal</xsl:with-param>
- </xsl:call-template>
- </xsl:otherwise>
- </xsl:choose>
- <xsl:text>}{-1}}&#10;</xsl:text>
- </xsl:if>
- <xsl:text>\usepackage{enumerate} &#10;</xsl:text>
- <xsl:if test="$latex.use.fancybox=1">
- <!-- must be before \usepackage{fancyvrb} -->
- <xsl:text>\usepackage{fancybox} &#10;</xsl:text>
- </xsl:if>
- <xsl:text>\usepackage{float} &#10;</xsl:text>
- <xsl:text>\usepackage{ragged2e} &#10;</xsl:text>
- <xsl:if test="$latex.use.fancyvrb=1">
- <!-- must be after \usepackage{fancybox} -->
- <xsl:text>\usepackage{fancyvrb} &#10;</xsl:text>
- <xsl:text>\makeatletter\@namedef{FV@fontfamily@default}{\def\FV@FontScanPrep{}\def\FV@FontFamily{}}\makeatother&#10;</xsl:text>
- <xsl:if test="$latex.fancyvrb.tabsize!=''">
- <xsl:text>\fvset{obeytabs=true,tabsize=</xsl:text>
- <xsl:value-of select="$latex.fancyvrb.tabsize"/>
- <xsl:text>}&#10;</xsl:text>
- </xsl:if>
- </xsl:if>
- <xsl:if test="$latex.use.isolatin1=1">
- <xsl:message>Please use $latex.inputenc='latin1' instead of $latex.use.isolatin1='1'.</xsl:message>
- <xsl:text>\usepackage{isolatin1} &#10;</xsl:text>
- </xsl:if>
- <xsl:choose>
- <xsl:when test="$latex.use.parskip=1">
- <xsl:text>\usepackage{parskip} &#10;</xsl:text>
- </xsl:when>
- <xsl:otherwise>
- <!-- hack from parksip to stop excess whitespace after figure captions -->
- <xsl:text><![CDATA[\makeatletter
-\let\dblatex@center\center\let\dblatex@endcenter\endcenter
-\def\dblatex@nolistI{\leftmargin\leftmargini\topsep\z@ \parsep\parskip \itemsep\z@}
-\def\center{\let\@listi\dblatex@nolistI\@listi\dblatex@center\let\@listi\@listI\@listi}
-\def\endcenter{\dblatex@endcenter}
-\makeatother
-]]></xsl:text>
- </xsl:otherwise>
- </xsl:choose>
- <xsl:if test="$latex.use.rotating=1"><xsl:text>\usepackage{rotating} &#10;</xsl:text></xsl:if>
- <xsl:if test="$latex.use.subfigure=1"><xsl:text>\usepackage{subfigure} &#10;</xsl:text></xsl:if>
- <xsl:if test="$latex.use.tabularx=1"><xsl:text>\usepackage{tabularx} &#10;</xsl:text></xsl:if>
- <xsl:if test="$latex.use.ltxtable=1 or $latex.use.longtable=1"><xsl:text>\usepackage{longtable} &#10;</xsl:text></xsl:if>
- <xsl:if test="$latex.use.umoline=1"><xsl:text>\usepackage{umoline} &#10;</xsl:text></xsl:if>
- <xsl:if test="$latex.use.url=1"><xsl:text>\usepackage{url} &#10;</xsl:text></xsl:if>
- <xsl:if test="$latex.math.support=1"><xsl:value-of select="$latex.math.preamble"/></xsl:if>
-
- <!-- Configure document font. -->
- <xsl:if test="$latex.document.font != 'default'">
- <xsl:text>% ---------------&#10;</xsl:text>
- <xsl:text>% Document Font &#10;</xsl:text>
- <xsl:text>% ---------------&#10;</xsl:text>
- <xsl:text>\usepackage{</xsl:text><xsl:value-of select="$latex.document.font"/><xsl:text>}&#10;</xsl:text>
- </xsl:if>
-
- <xsl:if test="$latex.use.hyperref=1">
- <xsl:call-template name="latex.hyperref.preamble"/>
- </xsl:if>
- <xsl:value-of select="$latex.admonition.environment"/>
- <xsl:call-template name="latex.float.preamble"/>
- <xsl:call-template name="latex.graphicext"/>
- <xsl:choose>
- <xsl:when test='$latex.caption.swapskip=1'>
- <xsl:text>% --------------------------------------------&#10;</xsl:text>
- <xsl:text>% $latex.caption.swapskip enabled for $formal.title.placement support&#10;</xsl:text>
- <xsl:text>\newlength{\docbooktolatextempskip}&#10;</xsl:text>
- <xsl:text>\newcommand{\captionswapskip}{\setlength{\docbooktolatextempskip}{\abovecaptionskip}</xsl:text>
- <xsl:text>\setlength{\abovecaptionskip}{\belowcaptionskip}</xsl:text>
- <xsl:text>\setlength{\belowcaptionskip}{\docbooktolatextempskip}}&#10;</xsl:text>
- </xsl:when>
- <xsl:otherwise>
- <xsl:text>\newcommand{\captionswapskip}{}&#10;</xsl:text>
- </xsl:otherwise>
- </xsl:choose>
- <xsl:if test='$latex.hyphenation.tttricks=1'>
- <xsl:text>% --------------------------------------------&#10;</xsl:text>
- <xsl:text>% Better linebreaks&#10;</xsl:text>
- <xsl:text>\newcommand{\docbookhyphenatedot}[1]{{\hyphenchar\font=`\.\relax #1\hyphenchar\font=`\-}}&#10;</xsl:text>
- <xsl:text>\newcommand{\docbookhyphenatefilename}[1]{{\hyphenchar\font=`\.\relax #1\hyphenchar\font=`\-}}&#10;</xsl:text>
- <xsl:text>\newcommand{\docbookhyphenateurl}[1]{{\hyphenchar\font=`\/\relax #1\hyphenchar\font=`\-}}&#10;</xsl:text>
- </xsl:if>
- <!--
- <xsl:message>$document.xml.language: '<xsl:value-of select="$document.xml.language"/>'</xsl:message>
- <xsl:message>$latex.language.option: '<xsl:value-of select="$latex.language.option"/>'</xsl:message>
- -->
- <xsl:if test="$latex.language.option!='none'">
- <xsl:text>\usepackage[</xsl:text><xsl:value-of select="$latex.language.option" /><xsl:text>]{babel} &#10;</xsl:text>
- </xsl:if>
- <xsl:if test="$latex.use.hyperref='1'">
- <xsl:text>% Guard against a problem with old package versions.&#10;</xsl:text>
- <xsl:text>\makeatletter&#10;</xsl:text>
- <xsl:text>\AtBeginDocument{&#10;</xsl:text>
- <xsl:text>\DeclareRobustCommand\ref{\@refstar}&#10;</xsl:text>
- <xsl:text>\DeclareRobustCommand\pageref{\@pagerefstar}&#10;</xsl:text>
- <xsl:text>}&#10;</xsl:text>
- <xsl:text>\makeatother&#10;</xsl:text>
- </xsl:if>
- <xsl:choose>
- <xsl:when test="$latex.is.draft!=''">
- <xsl:if test="$latex.is.draft=1">
- <xsl:call-template name="generate.latex.draft.preamble"/>
- </xsl:if>
- </xsl:when>
- <xsl:otherwise>
- <xsl:if test="(/set|/book|/article)[1]/@status='draft'">
- <xsl:call-template name="generate.latex.draft.preamble"/>
- </xsl:if>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
-
- <doc:template xmlns="">
- <refpurpose>
-
- Common &LaTeX; preamble shared by <doc:db basename="article">article</doc:db> and
- <doc:db basename="book">book</doc:db> when their <sgmltag
- class="attribute">status</sgmltag> is <quote>draft</quote>.
-
- </refpurpose>
- <doc:description>
- <para>
-
-
-
- </para>
- </doc:description>
- <doc:variables>
- <itemizedlist>
- <listitem><simpara><xref linkend="param.latex.is.draft"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.use.varioref"/></simpara></listitem>
- </itemizedlist>
- </doc:variables>
- <doc:samples>
- <simplelist type='inline'>
- &test_index_draft;
- &test_draft;
- </simplelist>
- </doc:samples>
- </doc:template>
- <xsl:template name="generate.latex.draft.preamble">
- <xsl:choose>
- <xsl:when test="$latex.use.varioref='1'">
- <xsl:message>Combining varioref with showkeys (and hyperref?) is not supported.</xsl:message>
- </xsl:when>
- <xsl:otherwise>
- <xsl:text>\usepackage[color]{showkeys}&#10;</xsl:text>
- <xsl:text>\definecolor{refkey}{gray}{0.5}&#10;</xsl:text>
- <xsl:text>\definecolor{labelkey}{gray}{0.5}&#10;</xsl:text>
- <xsl:text>% Rip off things from showkeys to highlight index references&#10;</xsl:text>
- <xsl:text>\definecolor{indexkey}{gray}{.5}%&#10;</xsl:text>
- <xsl:text>\makeatletter&#10;</xsl:text>
- <xsl:text>\def\SK@indexcolor{\color{indexkey}}&#10;</xsl:text>
- <xsl:text>\def\SK@@@index#1{\@bsphack\SK@\SK@@index{#1}\begingroup\SK@index{#1}\endgroup\@esphack}&#10;</xsl:text>
- <xsl:text>\def\SK@@index#1>#2\SK@{\leavevmode\vbox to\z@{\vss \SK@indexcolor \rlap{\vrule\raise .75em\hbox{}{\circle*{5}}}}}&#10;</xsl:text>
- <xsl:text>\AtBeginDocument{\let\SK@index\index&#10;\let\index\SK@@@index}&#10;</xsl:text>
- <xsl:text>\makeatother&#10;</xsl:text>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
-
- <doc:template xmlns="">
- <refpurpose> Unavoidable &LaTeX; preamble shared by <doc:db
- basename="article">articles</doc:db> and <doc:db
- basename="book">books</doc:db> </refpurpose>
- <doc:description>
- <para>Contains custom commands <emphasis>that you just can't get rid of!</emphasis></para>
- </doc:description>
- <doc:variables>
- <itemizedlist>
- <listitem><simpara><xref linkend="param.latex.use.hyperref"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.suppress.blank.page.headers"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.use.ucs"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.entities"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.ucs.options"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.inputenc"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.fontenc"/></simpara></listitem>
- </itemizedlist>
- </doc:variables>
- <doc:seealso>
- <itemizedlist>
- <listitem><simpara><xref linkend="template.latex.preamble.essential.biblio"/></simpara></listitem>
- <listitem><simpara><xref linkend="template.latex.preamble.essential.callout"/></simpara></listitem>
- <listitem><simpara><xref linkend="template.latex.preamble.essential.citation"/></simpara></listitem>
- <listitem><simpara><xref linkend="template.latex.preamble.essential.footnote"/></simpara></listitem>
- <listitem><simpara><xref linkend="template.latex.preamble.essential.glossary"/></simpara></listitem>
- <listitem><simpara><xref linkend="template.latex.preamble.essential.index"/></simpara></listitem>
- </itemizedlist>
- </doc:seealso>
- </doc:template>
- <xsl:template name="generate.latex.essential.preamble">
- <xsl:text>% --------------------------------------------&#10;</xsl:text>
- <xsl:text>\makeatletter&#10;</xsl:text>
- <xsl:text>\newcommand{\dbz}{\penalty \z@}&#10;</xsl:text>
- <xsl:text>\newcommand{\docbooktolatexpipe}{\ensuremath{|}\dbz}&#10;</xsl:text>
- <xsl:text>\newskip\docbooktolatexoldparskip&#10;</xsl:text>
- <xsl:text>\newcommand{\docbooktolatexnoparskip}{\docbooktolatexoldparskip=\parskip\parskip=0pt plus 1pt}&#10;</xsl:text>
- <xsl:text>\newcommand{\docbooktolatexrestoreparskip}{\parskip=\docbooktolatexoldparskip}&#10;</xsl:text>
- <xsl:if test="$latex.use.hyperref!='1'">
- <xsl:text>\newcommand{\href}[1]{{}}&#10;</xsl:text>
- <xsl:text>\newcommand{\hyperlink}[1]{{}}&#10;</xsl:text>
- <xsl:text>\newcommand{\hypertarget}[2]{#2}&#10;</xsl:text>
- </xsl:if>
- <!-- don't print headings on blank pages -->
- <xsl:if test="$latex.suppress.blank.page.headers=1">
- <xsl:text>\def\cleardoublepage{\clearpage\if@twoside \ifodd\c@page\else\hbox{}\thispagestyle{empty}\newpage\if@twocolumn\hbox{}\newpage\fi\fi\fi}&#10;</xsl:text>
- </xsl:if>
- <xsl:if test="$latex.use.ucs='1'">
- <xsl:text>\usepackage[</xsl:text>
- <xsl:value-of select="$latex.ucs.options"/>
- <xsl:text>]{ucs}&#10;</xsl:text>
- </xsl:if>
- <xsl:if test="$latex.entities='catcode'">
- <xsl:text>\catcode`\&amp;=\active\def&amp;{\@ifnextchar##{\begingroup\@sanitize\@docbooktolatexunicode\@gobble}{\&amp;}}&#10;</xsl:text>
- <xsl:if test="$latex.use.ucs!='1'">
- <xsl:text><![CDATA[
-% A few example Unicode characters.
-% For full support, use the unicode pacakge from Dominique Unruh/CTAN.
-% \else\ifnum#1=8216{\textquoteleft}%
-% \else\ifnum#1=8217{\textquoteright}%
-\newcommand{\unichar}[1]{%
- \ifnum#1=8211{--}%
- \else\ifnum#1=8212{---}%
- \else\ifnum#1=8216{`}%
- \else\ifnum#1=8217{'}%
- \else\ifnum#1=8218{\glq}%
- \else\ifnum#1=8220{``}%
- \else\ifnum#1=8221{''}%
- \else\ifnum#1=8222{\glqq}%
- \else\&\##1;\fi%
- \fi\fi\fi\fi\fi%
- \fi\fi%
-}
-]]></xsl:text>
- </xsl:if>
- <xsl:text>\def\@docbooktolatexunicode#1;{\endgroup\edef\@dbtemp{#1}\unichar{\@dbtemp}}&#10;</xsl:text>
- </xsl:if>
- <xsl:if test="$latex.inputenc!=''">
- <xsl:text>\usepackage[</xsl:text>
- <xsl:value-of select="$latex.inputenc"/>
- <xsl:text>]{inputenc}&#10;</xsl:text>
- </xsl:if>
- <xsl:if test="$latex.fontenc!=''">
- <xsl:text>\usepackage[</xsl:text>
- <xsl:value-of select="$latex.fontenc"/>
- <xsl:text>]{fontenc}&#10;</xsl:text>
- </xsl:if>
- <!-- make proper headers for unnumbered chapter-level components -->
- <!-- TODO make proper headers for unnumbered section-level components -->
- <xsl:text><![CDATA[
-\ifx\dblatex@chaptersmark\@undefined\def\dblatex@chaptersmark#1{\markboth{\MakeUppercase{#1}}{}}\fi
-\let\save@makeschapterhead\@makeschapterhead
-\def\dblatex@makeschapterhead#1{\vspace*{-80pt}\save@makeschapterhead{#1}}
-\def\@makeschapterhead#1{\dblatex@makeschapterhead{#1}\dblatex@chaptersmark{#1}}
-]]></xsl:text>
- <xsl:call-template name="latex.preamble.essential.biblio"/>
- <xsl:call-template name="latex.preamble.essential.callout"/>
- <xsl:call-template name="latex.preamble.essential.citation"/>
- <xsl:call-template name="latex.preamble.essential.footnote"/>
- <xsl:call-template name="latex.preamble.essential.glossary"/>
- <xsl:call-template name="latex.preamble.essential.index"/>
- <xsl:text><![CDATA[
-\def\docbooktolatexgobble{\expandafter\@gobble}
-% Prevent multiple openings of the same aux file
-% (happens when backref is used with multiple bibliography environments)
-\ifx\AfterBeginDocument\undefined\let\AfterBeginDocument\AtBeginDocument\fi
-\AfterBeginDocument{
- \let\latex@@starttoc\@starttoc
- \def\@starttoc#1{%
- \@ifundefined{docbooktolatex@aux#1}{%
- \global\@namedef{docbooktolatex@aux#1}{}%
- \latex@@starttoc{#1}%
- }{}
- }
-}
-% --------------------------------------------
-% Hacks for honouring row/entry/@align
-% (\hspace not effective when in paragraph mode)
-% Naming convention for these macros is:
-% 'docbooktolatex' 'align' {alignment-type} {position-within-entry}
-% where r = right, l = left, c = centre
-\newcommand{\docbooktolatex@align}[2]{\protect\ifvmode#1\else\ifx\LT@@tabarray\@undefined#2\else#1\fi\fi}
-\newcommand{\docbooktolatexalignll}{\docbooktolatex@align{\raggedright}{}}
-\newcommand{\docbooktolatexalignlr}{\docbooktolatex@align{}{\hspace*\fill}}
-\newcommand{\docbooktolatexaligncl}{\docbooktolatex@align{\centering}{\hfill}}
-\newcommand{\docbooktolatexaligncr}{\docbooktolatex@align{}{\hspace*\fill}}
-\newcommand{\docbooktolatexalignrl}{\protect\ifvmode\raggedleft\else\hfill\fi}
-\newcommand{\docbooktolatexalignrr}{}
-\ifx\captionswapskip\@undefined\newcommand{\captionswapskip}{}\fi
-]]></xsl:text>
- <xsl:text>\makeatother&#10;</xsl:text>
- </xsl:template>
-
- <doc:template>
- <refpurpose> Preamble for certain floats </refpurpose>
- </doc:template>
- <xsl:template name="latex.float.preamble">
- <xsl:text>% --------------------------------------------&#10;</xsl:text>
- <xsl:text>% Commands to manage/style/create floats &#10;</xsl:text>
- <xsl:text>% figures, tables, algorithms, examples, eqn &#10;</xsl:text>
- <xsl:text>% --------------------------------------------&#10;</xsl:text>
- <xsl:text> \floatstyle{ruled}&#10;</xsl:text>
- <xsl:text> \restylefloat{figure}&#10;</xsl:text>
- <xsl:text> \floatstyle{ruled}&#10;</xsl:text>
- <xsl:text> \restylefloat{table}&#10;</xsl:text>
- <xsl:text> \floatstyle{ruled}&#10;</xsl:text>
- <xsl:text> \newfloat{program}{ht}{lop}[section]&#10;</xsl:text>
- <xsl:text> \floatstyle{ruled}&#10;</xsl:text>
- <xsl:text> \newfloat{example}{ht}{loe}[section]&#10;</xsl:text>
- <xsl:text> \floatname{example}{</xsl:text>
- <xsl:call-template name="gentext.element.name">
- <xsl:with-param name="element.name">example</xsl:with-param>
- </xsl:call-template>
- <xsl:text>}&#10;</xsl:text>
- <xsl:text> \floatstyle{ruled}&#10;</xsl:text>
- <xsl:text> \newfloat{dbequation}{ht}{loe}[section]&#10;</xsl:text>
- <xsl:text> \makeatletter\def\toclevel@dbequation{0}\makeatother&#10;</xsl:text>
- <xsl:text> \floatname{dbequation}{</xsl:text>
- <xsl:call-template name="gentext.element.name">
- <xsl:with-param name="element.name">equation</xsl:with-param>
- </xsl:call-template>
- <xsl:text>}&#10;</xsl:text>
- <xsl:text> \floatstyle{boxed}&#10;</xsl:text>
- <xsl:text> \newfloat{algorithm}{ht}{loa}[section]&#10;</xsl:text>
- <xsl:text> \floatname{algorithm}{Algorithm}&#10;</xsl:text>
- </xsl:template>
-
- <doc:param name="latex.pdf.preamble" xmlns="">
- <doc:description>
- <screen>
- \usepackage{ifthen}
- % --------------------------------------------
- % Check for PDFLaTeX/LaTeX
- % --------------------------------------------
- \newif\ifpdf
- \ifx\pdfoutput\undefined
- \pdffalse % we are not running PDFLaTeX
- \else
- \pdfoutput=1 % we are running PDFLaTeX
- \pdftrue
- \fi
- % --------------------------------------------
- % Load graphicx package with pdf if needed
- % --------------------------------------------
- \ifpdf
- \usepackage[pdftex]{graphicx}
- \pdfcompresslevel=9
- \else
- \usepackage{graphicx}
- \fi
- </screen>
- </doc:description>
- </doc:param>
- <xsl:param name="latex.pdf.preamble">
- <xsl:text>\usepackage{ifthen}&#10;</xsl:text>
- <xsl:text>% --------------------------------------------&#10;</xsl:text>
- <xsl:text>% Check for PDFLaTeX/LaTeX &#10;</xsl:text>
- <xsl:text>% --------------------------------------------&#10;</xsl:text>
- <xsl:text>\newif\ifpdf&#10;</xsl:text>
- <xsl:text>\ifx\pdfoutput\undefined&#10;</xsl:text>
- <xsl:text>\pdffalse % we are not running PDFLaTeX&#10;</xsl:text>
- <xsl:text>\else&#10;</xsl:text>
- <xsl:text>\pdfoutput=1 % we are running PDFLaTeX&#10;</xsl:text>
- <xsl:text>\pdftrue&#10;</xsl:text>
- <xsl:text>\fi&#10;</xsl:text>
- <xsl:text>% --------------------------------------------&#10;</xsl:text>
- <xsl:text>% Load graphicx package with pdf if needed &#10;</xsl:text>
- <xsl:text>% --------------------------------------------&#10;</xsl:text>
- <xsl:text>\ifpdf&#10;</xsl:text>
- <xsl:text>\usepackage[pdftex]{graphicx}&#10;</xsl:text>
- <xsl:text>\pdfcompresslevel=9&#10;</xsl:text>
- <xsl:text>\else&#10;</xsl:text>
- <xsl:text>\usepackage{graphicx}&#10;</xsl:text>
- <xsl:text>\fi&#10;</xsl:text>
- </xsl:param>
-
- <doc:template name="latex.hyperref.preamble" xmlns="">
- <refpurpose> Manage the part of the preamble that handles the hyperref package.</refpurpose>
- <doc:description>
- <para> This template outputs the LaTeX code <literal>\usepackage[...]{hyperref}</literal>
- in order to use hyperlinks, backrefs and other goodies. If PDF support is activated,
- outputs laTeX code to detect whether the document is being compiled with
- <filename>pdflatex</filename> or <filename>latex</filename> to supply the
- right parameters (pdftex, dvips, etc).
- <doc:todo> The package options should be optained
- from XSL variables.</doc:todo>
- </para>
- <para>Default Value with PDF support:
- <screen>
- % --------------------------------------------
- % Load hyperref package with pdf if needed
- % --------------------------------------------
- \ifpdf
- \usepackage[pdftex,bookmarksnumbered,colorlinks,backref, bookmarks, breaklinks, linktocpage]{hyperref}
- \else
- \usepackage[bookmarksnumbered,colorlinks,backref, bookmarks, breaklinks, linktocpage]{hyperref}
- \fi
- % --------------------------------------------
- </screen>
- </para>
- <para>Default Value without PDF support:
- <screen>
- % --------------------------------------------
- % Load hyperref package
- % --------------------------------------------
- \usepackage[bookmarksnumbered,colorlinks,backref, bookmarks, breaklinks, linktocpage]{hyperref}
- </screen>
- </para>
- </doc:description>
- <doc:variables>
- <itemizedlist>
- <listitem><simpara><xref linkend="param.latex.pdf.support"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.hyperref.param.common"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.hyperref.param.pdftex"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.hyperref.param.dvips"/></simpara></listitem>
- </itemizedlist>
- </doc:variables>
- </doc:template>
- <xsl:template name="latex.hyperref.preamble">
- <xsl:choose>
- <xsl:when test="$latex.pdf.support=1">
- <xsl:text>% --------------------------------------------&#10;</xsl:text>
- <xsl:text>% Load hyperref package with pdf if needed &#10;</xsl:text>
- <xsl:text>% --------------------------------------------&#10;</xsl:text>
- <xsl:text>\ifpdf&#10;</xsl:text>
- <xsl:text>\usepackage[pdftex,</xsl:text>
- <xsl:value-of select="$latex.hyperref.param.common" />
- <xsl:text>,</xsl:text>
- <xsl:value-of select="$latex.hyperref.param.pdftex" />
- <xsl:text>]{hyperref}&#10;</xsl:text>
- <xsl:text>\else&#10;</xsl:text>
- <xsl:text>\usepackage[</xsl:text>
- <xsl:value-of select="$latex.hyperref.param.common" />
- <xsl:text>,</xsl:text>
- <xsl:value-of select="$latex.hyperref.param.dvips" />
- <xsl:text>]{hyperref}&#10;</xsl:text>
- <!--
- <xsl:text>\makeatletter\def\pdfmark@[#1]#2{}\makeatother&#10;</xsl:text>
- -->
- <xsl:text>\fi&#10;</xsl:text>
- <xsl:text>% --------------------------------------------&#10;</xsl:text>
- </xsl:when>
- <xsl:otherwise>
- <xsl:text>% --------------------------------------------&#10;</xsl:text>
- <xsl:text>% Load hyperref package &#10;</xsl:text>
- <xsl:text>% --------------------------------------------&#10;</xsl:text>
- <xsl:text>\usepackage[</xsl:text>
- <xsl:value-of select="$latex.hyperref.param.common" />
- <xsl:text>,</xsl:text>
- <xsl:value-of select="$latex.hyperref.param.dvips" />
- <xsl:text>]{hyperref}&#10;</xsl:text>
- <!--
- <xsl:text>\makeatletter\def\pdfmark@[#1]#2{}\makeatother&#10;</xsl:text>
- -->
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
-
- <doc:param xmlns="">
- <refpurpose> &LaTeX; mathematics support </refpurpose>
- </doc:param>
- <xsl:param name="latex.math.preamble">
- <xsl:text>% --------------------------------------------&#10;</xsl:text>
- <xsl:text>% Math support &#10;</xsl:text>
- <xsl:text>% --------------------------------------------&#10;</xsl:text>
- <xsl:text>\usepackage{amsmath,amsthm, amsfonts, amssymb, amsxtra,amsopn}&#10;</xsl:text>
- <xsl:text>%\newtheorem{thm}{Theorem}[section]&#10;</xsl:text>
- <xsl:text>%\newtheorem{cor}[section]{Corollary}&#10;</xsl:text>
- <xsl:text>%\newtheorem{lem}[section]{Lemma}&#10;</xsl:text>
- <xsl:text>%\newtheorem{defn}[section]{Definition}&#10;</xsl:text>
- <xsl:text>%\newtheorem{prop}[section]{Proposition}&#10;</xsl:text>
- <xsl:text>%\newtheorem{ax}{Axiom}&#10;</xsl:text>
- <xsl:text>%\newtheorem{theorem}[section]{Theorem}&#10;</xsl:text>
- <xsl:text>%\newtheorem{corollary}{Corollary}&#10;</xsl:text>
- <xsl:text>%\newtheorem{lemma}{Lemma}&#10;</xsl:text>
- <xsl:text>%\newtheorem{proposition}{Proposition}&#10;</xsl:text>
- <xsl:text>%\theoremstyle{definition}&#10;</xsl:text>
- <xsl:text>%\newtheorem{definition}{Definition}&#10;</xsl:text>
- <xsl:text>%\theoremstyle{remark}&#10;</xsl:text>
- <xsl:text>%\newtheorem{rem}{Remark}&#10;</xsl:text>
- <xsl:text>%\newtheorem*{notation}{Notation}&#10;</xsl:text>
- <xsl:text>%\newcommand{\ntt}{\normalfont\ttfamily}&#10;</xsl:text>
- <xsl:text>%\newcommand{\thmref}[1]{Theorem~\ref{#1}}&#10;</xsl:text>
- <xsl:text>%\newcommand{\secref}[1]{\S\ref{#1}}&#10;</xsl:text>
- <xsl:text>%\newcommand{\lemref}[1]{Lemma~\ref{#1}}&#10;</xsl:text>
- <xsl:text> \newcommand{\bysame}{\mbox{\rule{3em}{.4pt}}\,}&#10;</xsl:text>
- <xsl:text> \newcommand{\A}{\mathcal{A}}&#10;</xsl:text>
- <xsl:text> \newcommand{\B}{\mathcal{B}}&#10;</xsl:text>
- <xsl:text> \newcommand{\XcY}{{(X,Y)}}&#10;</xsl:text>
- <xsl:text> \newcommand{\SX}{{S_X}}&#10;</xsl:text>
- <xsl:text> \newcommand{\SY}{{S_Y}}&#10;</xsl:text>
- <xsl:text> \newcommand{\SXY}{{S_{X,Y}}}&#10;</xsl:text>
- <xsl:text> \newcommand{\SXgYy}{{S_{X|Y}(y)}}&#10;</xsl:text>
- <xsl:text> \newcommand{\Cw}[1]{{\hat C_#1(X|Y)}}&#10;</xsl:text>
- <xsl:text> \newcommand{\G}{{G(X|Y)}}&#10;</xsl:text>
- <xsl:text> \newcommand{\PY}{{P_{\mathcal{Y}}}}&#10;</xsl:text>
- <xsl:text> \newcommand{\X}{\mathcal{X}}&#10;</xsl:text>
- <xsl:text> \newcommand{\wt}{\widetilde}&#10;</xsl:text>
- <xsl:text> \newcommand{\wh}{\widehat}&#10;</xsl:text>
- <xsl:text> % --------------------------------------------&#10;</xsl:text>
- <xsl:text> %\DeclareMathOperator{\per}{per}&#10;</xsl:text>
- <xsl:text> \DeclareMathOperator{\cov}{cov}&#10;</xsl:text>
- <xsl:text> \DeclareMathOperator{\non}{non}&#10;</xsl:text>
- <xsl:text> \DeclareMathOperator{\cf}{cf}&#10;</xsl:text>
- <xsl:text> \DeclareMathOperator{\add}{add}&#10;</xsl:text>
- <xsl:text> \DeclareMathOperator{\Cham}{Cham}&#10;</xsl:text>
- <xsl:text> \DeclareMathOperator{\IM}{Im}&#10;</xsl:text>
- <xsl:text> \DeclareMathOperator{\esssup}{ess\,sup}&#10;</xsl:text>
- <xsl:text> \DeclareMathOperator{\meas}{meas}&#10;</xsl:text>
- <xsl:text> \DeclareMathOperator{\seg}{seg}&#10;</xsl:text>
- <xsl:text>% --------------------------------------------&#10;</xsl:text>
- </xsl:param>
-
- <doc:template xmlns="">
- <refpurpose> Declared graphic extensions </refpurpose>
- <doc:description>
- <para>
- This template checks whether the user has overridden <command>grafic.default.extension</command>
- Otherwise, declares .pdf, .png, .jpg if using pdflatex and .eps if using latex.
- </para>
- <programlisting><![CDATA[
-<xsl:template name="latex.graphicext">
-<xsl:choose>
-<xsl:when test="$graphic.default.extension !=''">
- <xsl:text>\DeclareGraphicsExtensions{</xsl:text>
- <xsl:if test="not(contains($graphic.default.extension,'.'))">
- <xsl:text>.</xsl:text>
- </xsl:if>
- <xsl:value-of select="$graphic.default.extension"/>
- <xsl:text>}&#10;</xsl:text>
-</xsl:when>
-<xsl:otherwise>
- <xsl:choose>
- <xsl:when test="$latex.pdf.support=1">
- <xsl:text>\ifpdf&#10;</xsl:text>
- <xsl:text>\DeclareGraphicsExtensions{.pdf,.png,.jpg}&#10;</xsl:text>
- <xsl:text>\else&#10;</xsl:text>
- <xsl:text>\DeclareGraphicsExtensions{.eps}&#10;</xsl:text>
- <xsl:text>\fi&#10;</xsl:text>
- </xsl:when>
- <xsl:otherwise>
- <xsl:text>\DeclareGraphicsExtensions{.eps}&#10;</xsl:text>
- </xsl:otherwise>
- </xsl:choose>
-</xsl:otherwise>
-</xsl:choose>
-</xsl:template>
-]]></programlisting>
- </doc:description>
- <doc:variables>
- <itemizedlist>
- <listitem><simpara><xref linkend="param.graphic.default.extension"/></simpara></listitem>
- <listitem><simpara><xref linkend="param.latex.pdf.support"/></simpara></listitem>
- </itemizedlist>
- </doc:variables>
- </doc:template>
- <xsl:template name="latex.graphicext">
- <xsl:choose>
- <xsl:when test="$graphic.default.extension !=''">
- <xsl:text>\DeclareGraphicsExtensions{</xsl:text>
- <xsl:if test="not(contains($graphic.default.extension,'.'))">
- <xsl:text>.</xsl:text>
- </xsl:if>
- <xsl:value-of select="$graphic.default.extension"/>
- <xsl:text>}&#10;</xsl:text>
- </xsl:when>
- <xsl:otherwise>
- <xsl:choose>
- <xsl:when test="$latex.pdf.support=1">
- <xsl:text>\ifpdf&#10;</xsl:text>
- <xsl:text>\DeclareGraphicsExtensions{.pdf,.png,.jpg}&#10;</xsl:text>
- <xsl:text>\else&#10;</xsl:text>
- <xsl:text>\DeclareGraphicsExtensions{.eps}&#10;</xsl:text>
- <xsl:text>\fi&#10;</xsl:text>
- </xsl:when>
- <xsl:otherwise>
- <xsl:text>\DeclareGraphicsExtensions{.eps}&#10;</xsl:text>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
-</xsl:stylesheet>
-