diff options
| author | William Harrington <kb0iic@berzerkula.org> | 2014-11-27 16:29:31 -0600 | 
|---|---|---|
| committer | William Harrington <kb0iic@berzerkula.org> | 2014-11-27 16:29:31 -0600 | 
| commit | 7df987a652b93d55dd8eca363706d3bacc469b55 (patch) | |
| tree | 17f84ce0fee76a3a0476b714eae09486ab2470e6 /stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/.svn/text-base/block.xsl.svn-base | |
Diffstat (limited to 'stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/.svn/text-base/block.xsl.svn-base')
| -rw-r--r-- | stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/.svn/text-base/block.xsl.svn-base | 600 | 
1 files changed, 600 insertions, 0 deletions
diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/.svn/text-base/block.xsl.svn-base b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/.svn/text-base/block.xsl.svn-base new file mode 100644 index 0000000..2d42c8a --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/.svn/text-base/block.xsl.svn-base @@ -0,0 +1,600 @@ +<?xml version='1.0'?> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" +                xmlns:fo="http://www.w3.org/1999/XSL/Format" +                version='1.0'> + +<!-- ******************************************************************** +     $Id$ +     ******************************************************************** + +     This file is part of the XSL DocBook Stylesheet distribution. +     See ../README or http://docbook.sf.net/release/xsl/current/ for +     copyright and other information. + +     ******************************************************************** --> + +<!-- ==================================================================== --> +<!-- What should we do about styling blockinfo? --> + +<xsl:template match="blockinfo|info"> +  <!-- suppress --> +</xsl:template> + +<!-- ==================================================================== --> + +<xsl:template name="block.object"> +  <fo:block> +    <xsl:call-template name="anchor"/> +    <xsl:apply-templates/> +  </fo:block> +</xsl:template> + +<!-- ==================================================================== --> + +<xsl:template match="para"> +  <fo:block xsl:use-attribute-sets="normal.para.spacing"> +    <xsl:call-template name="anchor"/> +    <xsl:apply-templates/> +  </fo:block> +</xsl:template> + +<xsl:template match="simpara"> +  <fo:block xsl:use-attribute-sets="normal.para.spacing"> +    <xsl:call-template name="anchor"/> +    <xsl:apply-templates/> +  </fo:block> +</xsl:template> + +<xsl:template match="formalpara"> +  <fo:block xsl:use-attribute-sets="normal.para.spacing"> +    <xsl:call-template name="anchor"/> +    <xsl:apply-templates/> +  </fo:block> +</xsl:template> + +<!-- Only use title from info --> +<xsl:template match="formalpara/info"> +  <xsl:apply-templates select="title"/> +</xsl:template> + +<xsl:template match="formalpara/title|formalpara/info/title"> +  <xsl:variable name="titleStr"> +      <xsl:apply-templates/> +  </xsl:variable> +  <xsl:variable name="lastChar"> +    <xsl:if test="$titleStr != ''"> +      <xsl:value-of select="substring($titleStr,string-length($titleStr),1)"/> +    </xsl:if> +  </xsl:variable> + +  <fo:inline font-weight="bold" +             keep-with-next.within-line="always" +             padding-end="1em"> +    <xsl:copy-of select="$titleStr"/> +    <xsl:if test="$lastChar != '' +                  and not(contains($runinhead.title.end.punct, $lastChar))"> +      <xsl:value-of select="$runinhead.default.title.end.punct"/> +    </xsl:if> +    <xsl:text> </xsl:text> +  </fo:inline> +</xsl:template> + +<xsl:template match="formalpara/para"> +  <xsl:apply-templates/> +</xsl:template> + +<!-- ==================================================================== --> + +<xsl:template match="blockquote"> +  <fo:block xsl:use-attribute-sets="blockquote.properties"> +    <xsl:call-template name="anchor"/> +    <fo:block> +      <xsl:if test="title|info/title"> +        <fo:block xsl:use-attribute-sets="formal.title.properties"> +          <xsl:apply-templates select="." mode="object.title.markup"/> +        </fo:block> +      </xsl:if> +      <xsl:apply-templates select="*[local-name(.) != 'title' +                                   and local-name(.) != 'attribution']"/> +    </fo:block> +    <xsl:if test="attribution"> +      <fo:block text-align="right"> +        <!-- mdash --> +        <xsl:text>—</xsl:text> +        <xsl:apply-templates select="attribution"/> +      </fo:block> +    </xsl:if> +  </fo:block> +</xsl:template> + +<xsl:template match="epigraph"> +  <fo:block> +    <xsl:call-template name="anchor"/> +    <xsl:apply-templates select="para|simpara|formalpara|literallayout"/> +    <xsl:if test="attribution"> +      <fo:inline> +        <xsl:text>--</xsl:text> +        <xsl:apply-templates select="attribution"/> +      </fo:inline> +    </xsl:if> +  </fo:block> +</xsl:template> + +<xsl:template match="attribution"> +  <fo:inline><xsl:apply-templates/></fo:inline> +</xsl:template> + +<!-- ==================================================================== --> + +<xsl:template name="floater"> +  <xsl:param name="position" select="'none'"/> +  <xsl:param name="clear" select="'both'"/> +  <xsl:param name="width"/> +  <xsl:param name="content"/> +  <xsl:param name="start.indent">0pt</xsl:param> +  <xsl:param name="end.indent">0pt</xsl:param> + +  <xsl:choose> +    <xsl:when test="not($fop.extensions = 0)"> +      <!-- fop 0.20.5 does not support floats --> +      <xsl:copy-of select="$content"/> +    </xsl:when> +    <xsl:when test="$position = 'none'"> +      <xsl:copy-of select="$content"/> +    </xsl:when> +    <xsl:when test="$position = 'before'"> +      <fo:float float="before"> +        <xsl:copy-of select="$content"/> +      </fo:float> +    </xsl:when> +    <xsl:when test="$position = 'left' or +                    $position = 'start' or +                    $position = 'right' or +                    $position = 'end' or +                    $position = 'inside' or +                    $position = 'outside'"> +      <xsl:variable name="float"> +        <fo:float float="{$position}" +                  clear="{$clear}"> +          <fo:block-container  +                    start-indent="{$start.indent}" +                    end-indent="{$end.indent}"> +            <xsl:if test="$width != ''"> +              <xsl:attribute name="inline-progression-dimension"> +                <xsl:value-of select="$width"/> +              </xsl:attribute> +            </xsl:if> +            <fo:block> +              <xsl:copy-of select="$content"/> +            </fo:block> +          </fo:block-container> +        </fo:float> +      </xsl:variable> +      <xsl:choose> +        <xsl:when test="$axf.extensions != 0 and self::sidebar"> +          <fo:block xsl:use-attribute-sets="normal.para.spacing" +                    space-after="0pt" +                    space-after.precedence="force" +                    start-indent="0pt" end-indent="0pt"> +            <xsl:copy-of select="$float"/> +          </fo:block> +        </xsl:when> +        <xsl:when test="$axf.extensions != 0 and  +                        ($position = 'left' or $position = 'start')"> +          <fo:float float="{$position}" +                    clear="{$clear}"> +            <fo:block-container  +                      inline-progression-dimension=".001mm" +                      end-indent="{$start.indent} + {$width} + {$end.indent}"> +              <xsl:attribute name="start-indent"> +                <xsl:choose> +                  <xsl:when test="ancestor::para"> +                    <!-- Special case for handling inline floats +                         in Antenna House--> +                    <xsl:value-of select="concat('-', $body.start.indent)"/> +                  </xsl:when> +                  <xsl:otherwise>0pt</xsl:otherwise> +                </xsl:choose> +              </xsl:attribute> +              <fo:block start-indent="{$start.indent}" +                        end-indent="-{$start.indent} - {$width}"> +                <xsl:copy-of select="$content"/> +              </fo:block> +            </fo:block-container> +          </fo:float> + +        </xsl:when> +        <xsl:when test="$axf.extensions != 0 and  +                        ($position = 'right' or $position = 'end')"> +          <!-- Special case for handling inline floats in Antenna House--> +          <fo:float float="{$position}" +                    clear="{$clear}"> +            <fo:block-container  +                      inline-progression-dimension=".001mm" +                      end-indent="-{$body.end.indent}" +                      start-indent="{$start.indent} + {$width} + {$end.indent}"> +              <fo:block end-indent="{$end.indent}" +                        start-indent="-{$end.indent} - {$width}"> +                <xsl:copy-of select="$content"/> +              </fo:block> +            </fo:block-container> +          </fo:float> + +        </xsl:when> +        <xsl:when test="$xep.extensions != 0 and self::sidebar"> +          <!-- float needs some space above  to line up with following para --> +          <fo:block xsl:use-attribute-sets="normal.para.spacing"> +            <xsl:copy-of select="$float"/> +          </fo:block> +        </xsl:when> +        <xsl:when test="$xep.extensions != 0"> +          <xsl:copy-of select="$float"/> +        </xsl:when> +        <xsl:otherwise> +          <xsl:copy-of select="$float"/> +        </xsl:otherwise> +      </xsl:choose> +    </xsl:when> +    <xsl:otherwise> +      <xsl:copy-of select="$content"/> +    </xsl:otherwise> +  </xsl:choose> +</xsl:template> + +<xsl:template match="sidebar" name="sidebar"> +  <!-- Also does margin notes --> +  <xsl:variable name="pi-type"> +    <xsl:call-template name="pi.dbfo_float-type"/> +  </xsl:variable> + +  <xsl:variable name="id"> +    <xsl:call-template name="object.id"/> +  </xsl:variable> + +  <xsl:choose> +    <xsl:when test="$pi-type = 'margin.note'"> +      <xsl:call-template name="margin.note"/> +    </xsl:when> +    <xsl:otherwise> +      <xsl:variable name="content"> +        <fo:block xsl:use-attribute-sets="sidebar.properties" +                  id="{$id}"> +          <xsl:call-template name="sidebar.titlepage"/> +          <xsl:apply-templates select="node()[not(self::title) and +                                         not(self::info) and +                                         not(self::sidebarinfo)]"/> +        </fo:block> +      </xsl:variable> + +      <xsl:variable name="pi-width"> +        <xsl:call-template name="pi.dbfo_sidebar-width"/> +      </xsl:variable> + +      <xsl:variable name="position"> +        <xsl:choose> +          <xsl:when test="$pi-type != ''"> +            <xsl:value-of select="$pi-type"/> +          </xsl:when> +          <xsl:otherwise> +            <xsl:value-of select="$sidebar.float.type"/> +          </xsl:otherwise> +        </xsl:choose> +      </xsl:variable> +     +      <xsl:call-template name="floater"> +        <xsl:with-param name="content" select="$content"/> +        <xsl:with-param name="position" select="$position"/> +        <xsl:with-param name="width"> +          <xsl:choose> +            <xsl:when test="$pi-width != ''"> +              <xsl:value-of select="$pi-width"/> +            </xsl:when> +            <xsl:otherwise> +              <xsl:value-of select="$sidebar.float.width"/> +            </xsl:otherwise> +          </xsl:choose> +        </xsl:with-param> +        <xsl:with-param name="start.indent"> +          <xsl:choose> +            <xsl:when test="$position = 'start' or  +                            $position = 'left'">0pt</xsl:when> +            <xsl:when test="$position = 'end' or  +                            $position = 'right'">0.5em</xsl:when> +            <xsl:otherwise>0pt</xsl:otherwise> +          </xsl:choose> +        </xsl:with-param> +        <xsl:with-param name="end.indent"> +          <xsl:choose> +            <xsl:when test="$position = 'start' or  +                            $position = 'left'">0.5em</xsl:when> +            <xsl:when test="$position = 'end' or  +                            $position = 'right'">0pt</xsl:when> +            <xsl:otherwise>0pt</xsl:otherwise> +          </xsl:choose> +        </xsl:with-param> +      </xsl:call-template> +    </xsl:otherwise> +  </xsl:choose> + +</xsl:template> + +<xsl:template match="sidebar/title|sidebarinfo|sidebar/info"/> + +<xsl:template match="sidebar/title|sidebarinfo/title|sidebar/info/title" +              mode="titlepage.mode" priority="1"> +  <fo:block xsl:use-attribute-sets="sidebar.title.properties"> +    <xsl:apply-templates/> +  </fo:block> +</xsl:template> + +<xsl:template name="margin.note"> +  <xsl:param name="content"> +    <fo:block xsl:use-attribute-sets="margin.note.properties"> +      <xsl:if test="./title"> +        <fo:block xsl:use-attribute-sets="margin.note.title.properties"> +          <xsl:apply-templates select="./title" mode="margin.note.title.mode"/> +        </fo:block> +      </xsl:if> +      <xsl:apply-templates/> +    </fo:block> +  </xsl:param> + +  <xsl:variable name="pi-width"> +    <xsl:call-template name="pi.dbfo_sidebar-width"/> +  </xsl:variable> + +  <xsl:variable name="position" select="$margin.note.float.type"/> + +  <xsl:call-template name="floater"> +    <xsl:with-param name="content" select="$content"/> +    <xsl:with-param name="position" select="$position"/> +    <xsl:with-param name="width" > +      <xsl:choose> +        <xsl:when test="$pi-width != ''"> +          <xsl:value-of select="$pi-width"/> +        </xsl:when> +        <xsl:otherwise> +          <xsl:value-of select="$margin.note.width"/> +        </xsl:otherwise> +      </xsl:choose> +    </xsl:with-param> +    <xsl:with-param name="start.indent"> +      <xsl:choose> +        <xsl:when test="$position = 'start' or  +                        $position = 'left'">0pt</xsl:when> +        <xsl:when test="$position = 'end' or  +                        $position = 'right'">0.5em</xsl:when> +        <xsl:otherwise>0pt</xsl:otherwise> +      </xsl:choose> +    </xsl:with-param> +    <xsl:with-param name="end.indent"> +      <xsl:choose> +        <xsl:when test="$position = 'start' or  +                        $position = 'left'">0.5em</xsl:when> +        <xsl:when test="$position = 'end' or  +                        $position = 'right'">0pt</xsl:when> +        <xsl:otherwise>0pt</xsl:otherwise> +      </xsl:choose> +    </xsl:with-param> +  </xsl:call-template> +</xsl:template> + +<xsl:template match="sidebar/title" mode="margin.note.title.mode"> +  <xsl:apply-templates/> +</xsl:template> + +<!-- ==================================================================== --> + +<xsl:template match="abstract"> +  <fo:block xsl:use-attribute-sets="abstract.properties"> +    <xsl:call-template name="anchor"/> +    <xsl:apply-templates/> +  </fo:block> +</xsl:template> + +<xsl:template match="abstract/title|abstract/info/title"> +  <fo:block xsl:use-attribute-sets="abstract.title.properties"> +    <xsl:apply-templates/> +  </fo:block> +</xsl:template> + +<!-- ==================================================================== --> + +<xsl:template match="msgset"> +  <xsl:apply-templates/> +</xsl:template> + +<xsl:template match="msgentry"> +  <xsl:call-template name="block.object"/> +</xsl:template> + +<xsl:template match="simplemsgentry"> +  <xsl:call-template name="block.object"/> +</xsl:template> + +<xsl:template match="msg"> +  <xsl:call-template name="block.object"/> +</xsl:template> + +<xsl:template match="msgmain"> +  <xsl:apply-templates/> +</xsl:template> + +<xsl:template match="msgsub"> +  <xsl:apply-templates/> +</xsl:template> + +<xsl:template match="msgrel"> +  <xsl:apply-templates/> +</xsl:template> + +<xsl:template match="msgtext"> +  <xsl:apply-templates/> +</xsl:template> + +<xsl:template match="msginfo"> +  <xsl:call-template name="block.object"/> +</xsl:template> + +<xsl:template match="msglevel"> +  <fo:block> +    <fo:inline font-weight="bold" +               keep-with-next.within-line="always"> +      <xsl:call-template name="gentext.template"> +        <xsl:with-param name="context" select="'msgset'"/> +        <xsl:with-param name="name" select="'MsgLevel'"/> +      </xsl:call-template> +    </fo:inline> +    <xsl:apply-templates/> +  </fo:block> +</xsl:template> + +<xsl:template match="msgorig"> +  <fo:block> +    <fo:inline font-weight="bold" +               keep-with-next.within-line="always"> +      <xsl:call-template name="gentext.template"> +        <xsl:with-param name="context" select="'msgset'"/> +        <xsl:with-param name="name" select="'MsgOrig'"/> +      </xsl:call-template> +    </fo:inline> +    <xsl:apply-templates/> +  </fo:block> +</xsl:template> + +<xsl:template match="msgaud"> +  <fo:block> +    <fo:inline font-weight="bold" +               keep-with-next.within-line="always"> +      <xsl:call-template name="gentext.template"> +        <xsl:with-param name="context" select="'msgset'"/> +        <xsl:with-param name="name" select="'MsgAud'"/> +      </xsl:call-template> +    </fo:inline> +    <xsl:apply-templates/> +  </fo:block> +</xsl:template> + +<xsl:template match="msgexplan"> +  <xsl:call-template name="block.object"/> +</xsl:template> + +<xsl:template match="msgexplan/title"> +  <fo:block font-weight="bold" +            keep-with-next.within-column="always" +            hyphenate="false"> +    <xsl:apply-templates/> +  </fo:block> +</xsl:template> + +<!-- ==================================================================== --> +<!-- For better or worse, revhistory is allowed in content... --> + +<xsl:template match="revhistory"> +  <fo:table table-layout="fixed" xsl:use-attribute-sets="revhistory.table.properties"> +    <xsl:call-template name="anchor"/> +    <fo:table-column column-number="1" column-width="proportional-column-width(1)"/> +    <fo:table-column column-number="2" column-width="proportional-column-width(1)"/> +    <fo:table-column column-number="3" column-width="proportional-column-width(1)"/> +    <fo:table-body start-indent="0pt" end-indent="0pt"> +      <fo:table-row> +        <fo:table-cell number-columns-spanned="3" xsl:use-attribute-sets="revhistory.table.cell.properties"> +          <fo:block xsl:use-attribute-sets="revhistory.title.properties"> +            <xsl:call-template name="gentext"> +              <xsl:with-param name="key" select="'RevHistory'"/> +            </xsl:call-template> +          </fo:block> +        </fo:table-cell> +      </fo:table-row> +      <xsl:apply-templates/> +    </fo:table-body> +  </fo:table> +</xsl:template> + +<xsl:template match="revhistory/revision"> +  <xsl:variable name="revnumber" select="revnumber"/> +  <xsl:variable name="revdate"   select="date"/> +  <xsl:variable name="revauthor" select="authorinitials|author"/> +  <xsl:variable name="revremark" select="revremark|revdescription"/> +  <fo:table-row> +    <fo:table-cell xsl:use-attribute-sets="revhistory.table.cell.properties"> +      <fo:block> +        <xsl:call-template name="anchor"/> +        <xsl:if test="$revnumber"> +          <xsl:call-template name="gentext"> +            <xsl:with-param name="key" select="'Revision'"/> +          </xsl:call-template> +          <xsl:call-template name="gentext.space"/> +          <xsl:apply-templates select="$revnumber[1]"/> +        </xsl:if> +      </fo:block> +    </fo:table-cell> +    <fo:table-cell xsl:use-attribute-sets="revhistory.table.cell.properties"> +      <fo:block> +        <xsl:apply-templates select="$revdate[1]"/> +      </fo:block> +    </fo:table-cell> +    <fo:table-cell xsl:use-attribute-sets="revhistory.table.cell.properties"> +      <fo:block> +        <xsl:for-each select="$revauthor"> +          <xsl:apply-templates select="."/> +          <xsl:if test="position() != last()"> +            <xsl:text>, </xsl:text> +          </xsl:if> +        </xsl:for-each> +      </fo:block> +    </fo:table-cell> +  </fo:table-row> +  <xsl:if test="$revremark"> +    <fo:table-row> +      <fo:table-cell number-columns-spanned="3" xsl:use-attribute-sets="revhistory.table.cell.properties"> +        <fo:block> +          <xsl:apply-templates select="$revremark[1]"/> +        </fo:block> +      </fo:table-cell> +    </fo:table-row> +  </xsl:if> +</xsl:template> + +<xsl:template match="revision/revnumber"> +  <xsl:apply-templates/> +</xsl:template> + +<xsl:template match="revision/date"> +  <xsl:apply-templates/> +</xsl:template> + +<xsl:template match="revision/authorinitials"> +  <xsl:apply-templates/> +</xsl:template> + +<xsl:template match="revision/author"> +  <xsl:apply-templates/> +</xsl:template> + +<xsl:template match="revision/revremark"> +  <xsl:apply-templates/> +</xsl:template> + +<xsl:template match="revision/revdescription"> +  <xsl:apply-templates/> +</xsl:template> + +<!-- ==================================================================== --> + +<xsl:template match="ackno"> +  <fo:block xsl:use-attribute-sets="normal.para.spacing"> +    <xsl:call-template name="anchor"/> +    <xsl:apply-templates/> +  </fo:block> +</xsl:template> + +<!-- ==================================================================== --> + +<xsl:template match="highlights"> +  <xsl:call-template name="block.object"/> +</xsl:template> + +<!-- ==================================================================== --> + +</xsl:stylesheet>  | 
