mirror of
https://github.com/nmap/nmap.git
synced 2025-12-14 11:49:01 +00:00
If you have trouble updating after this revision you need to follow these instructions. You have probably just seen an error like this: svn: URL 'svn://svn.insecure.org/nping' of existing directory 'nping' does not match expected URL 'svn://svn.insecure.org/nmap/nping' This is caused by the replacement of SVN externals. Here's what you need to do. First, save any local changes you might have in the nping, nsock, nbase, ncat, and zenmap directories. (For example by running "cd nping; svn diff > ../nping.diff".) If you don't have any local changes you can skip this step. Then run these commands: rm -rf nping/ nsock/ nbase/ ncat/ zenmap/ svn update svn cleanup If all else fails, you can just delete your whole working directory and check out anew: svn co --username guest --password "" svn://svn.insecure.org/nmap There may be further discussion in the mailing list thread at http://seclists.org/nmap-dev/2011/q4/303.
668 lines
23 KiB
XML
668 lines
23 KiB
XML
<?xml version="1.0"?>
|
|
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
|
xmlns:exsl="http://exslt.org/common"
|
|
xmlns:cf="http://docbook.sourceforge.net/xmlns/chunkfast/1.0"
|
|
xmlns:ng="http://docbook.org/docbook-ng"
|
|
xmlns:db="http://docbook.org/ns/docbook"
|
|
exclude-result-prefixes="exsl cf ng db"
|
|
version="1.0">
|
|
|
|
<!-- ********************************************************************
|
|
$Id: chunk-code.xsl 8345 2009-03-16 06:44:07Z bobstayton $
|
|
********************************************************************
|
|
|
|
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.
|
|
|
|
******************************************************************** -->
|
|
|
|
<!-- ==================================================================== -->
|
|
|
|
|
|
<xsl:template match="*" mode="chunk-filename">
|
|
<!-- returns the filename of a chunk -->
|
|
<xsl:variable name="ischunk">
|
|
<xsl:call-template name="chunk"/>
|
|
</xsl:variable>
|
|
|
|
<xsl:variable name="fn">
|
|
<xsl:apply-templates select="." mode="recursive-chunk-filename"/>
|
|
</xsl:variable>
|
|
|
|
<!--
|
|
<xsl:message>
|
|
<xsl:value-of select="$ischunk"/>
|
|
<xsl:text> (</xsl:text>
|
|
<xsl:value-of select="local-name(.)"/>
|
|
<xsl:text>) </xsl:text>
|
|
<xsl:value-of select="$fn"/>
|
|
<xsl:text>, </xsl:text>
|
|
<xsl:call-template name="dbhtml-dir"/>
|
|
</xsl:message>
|
|
-->
|
|
|
|
<!-- 2003-11-25 by ndw:
|
|
The following test used to read test="$ischunk != 0 and $fn != ''"
|
|
I've removed the ischunk part of the test so that href.to.uri and
|
|
href.from.uri will be fully qualified even if the source or target
|
|
isn't a chunk. I *think* that if $fn != '' then it's appropriate
|
|
to put the directory on the front, even if the element isn't a
|
|
chunk. I could be wrong. -->
|
|
|
|
<xsl:if test="$fn != ''">
|
|
<xsl:call-template name="dbhtml-dir"/>
|
|
</xsl:if>
|
|
|
|
<xsl:value-of select="$fn"/>
|
|
<!-- You can't add the html.ext here because dbhtml filename= may already -->
|
|
<!-- have added it. It really does have to be handled in the recursive template -->
|
|
</xsl:template>
|
|
|
|
<xsl:template match="*" mode="recursive-chunk-filename">
|
|
<xsl:param name="recursive" select="false()"/>
|
|
|
|
<!-- returns the filename of a chunk -->
|
|
<xsl:variable name="ischunk">
|
|
<xsl:call-template name="chunk"/>
|
|
</xsl:variable>
|
|
|
|
<xsl:variable name="dbhtml-filename">
|
|
<xsl:call-template name="pi.dbhtml_filename"/>
|
|
</xsl:variable>
|
|
|
|
<xsl:variable name="filename">
|
|
<xsl:choose>
|
|
<xsl:when test="$dbhtml-filename != ''">
|
|
<xsl:value-of select="$dbhtml-filename"/>
|
|
</xsl:when>
|
|
<!-- if this is the root element, use the root.filename -->
|
|
<xsl:when test="not(parent::*) and $root.filename != ''">
|
|
<xsl:value-of select="$root.filename"/>
|
|
<xsl:value-of select="$html.ext"/>
|
|
</xsl:when>
|
|
<!-- Special case -->
|
|
<xsl:when test="self::legalnotice and not($generate.legalnotice.link = 0)">
|
|
<xsl:choose>
|
|
<xsl:when test="(@id or @xml:id) and not($use.id.as.filename = 0)">
|
|
<!-- * if this legalnotice has an ID, then go ahead and use -->
|
|
<!-- * just the value of that ID as the basename for the file -->
|
|
<!-- * (that is, without prepending an "ln-" too it) -->
|
|
<xsl:value-of select="(@id|@xml:id)[1]"/>
|
|
<xsl:value-of select="$html.ext"/>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<!-- * otherwise, if this legalnotice does not have an ID, -->
|
|
<!-- * then we generate an ID... -->
|
|
<xsl:variable name="id">
|
|
<xsl:call-template name="object.id"/>
|
|
</xsl:variable>
|
|
<!-- * ...and then we take that generated ID, prepend an -->
|
|
<!-- * "ln-" to it, and use that as the basename for the file -->
|
|
<xsl:value-of select="concat('ln-',$id,$html.ext)"/>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:when>
|
|
<!-- if there's no dbhtml filename, and if we're to use IDs as -->
|
|
<!-- filenames, then use the ID to generate the filename. -->
|
|
<xsl:when test="(@id or @xml:id) and $use.id.as.filename != 0">
|
|
<xsl:value-of select="(@id|@xml:id)[1]"/>
|
|
<xsl:value-of select="$html.ext"/>
|
|
</xsl:when>
|
|
<xsl:otherwise></xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:variable>
|
|
|
|
<xsl:choose>
|
|
<xsl:when test="$ischunk='0'">
|
|
<!-- if called on something that isn't a chunk, walk up... -->
|
|
<xsl:choose>
|
|
<xsl:when test="count(parent::*)>0">
|
|
<xsl:apply-templates mode="recursive-chunk-filename" select="parent::*">
|
|
<xsl:with-param name="recursive" select="$recursive"/>
|
|
</xsl:apply-templates>
|
|
</xsl:when>
|
|
<!-- unless there is no up, in which case return "" -->
|
|
<xsl:otherwise></xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:when>
|
|
|
|
<xsl:when test="not($recursive) and $filename != ''">
|
|
<!-- if this chunk has an explicit name, use it -->
|
|
<xsl:value-of select="$filename"/>
|
|
</xsl:when>
|
|
|
|
<xsl:when test="self::set">
|
|
<xsl:value-of select="$root.filename"/>
|
|
<xsl:if test="not($recursive)">
|
|
<xsl:value-of select="$html.ext"/>
|
|
</xsl:if>
|
|
</xsl:when>
|
|
|
|
<xsl:when test="self::book">
|
|
<xsl:text>bk</xsl:text>
|
|
<xsl:number level="any" format="01"/>
|
|
<xsl:if test="not($recursive)">
|
|
<xsl:value-of select="$html.ext"/>
|
|
</xsl:if>
|
|
</xsl:when>
|
|
|
|
<xsl:when test="self::article">
|
|
<xsl:if test="/set">
|
|
<!-- in a set, make sure we inherit the right book info... -->
|
|
<xsl:apply-templates mode="recursive-chunk-filename" select="parent::*">
|
|
<xsl:with-param name="recursive" select="true()"/>
|
|
</xsl:apply-templates>
|
|
</xsl:if>
|
|
|
|
<xsl:text>ar</xsl:text>
|
|
<xsl:number level="any" format="01" from="book"/>
|
|
<xsl:if test="not($recursive)">
|
|
<xsl:value-of select="$html.ext"/>
|
|
</xsl:if>
|
|
</xsl:when>
|
|
|
|
<xsl:when test="self::preface">
|
|
<xsl:if test="/set">
|
|
<!-- in a set, make sure we inherit the right book info... -->
|
|
<xsl:apply-templates mode="recursive-chunk-filename" select="parent::*">
|
|
<xsl:with-param name="recursive" select="true()"/>
|
|
</xsl:apply-templates>
|
|
</xsl:if>
|
|
|
|
<xsl:text>pr</xsl:text>
|
|
<xsl:number level="any" format="01" from="book"/>
|
|
<xsl:if test="not($recursive)">
|
|
<xsl:value-of select="$html.ext"/>
|
|
</xsl:if>
|
|
</xsl:when>
|
|
|
|
<xsl:when test="self::chapter">
|
|
<xsl:if test="/set">
|
|
<!-- in a set, make sure we inherit the right book info... -->
|
|
<xsl:apply-templates mode="recursive-chunk-filename" select="parent::*">
|
|
<xsl:with-param name="recursive" select="true()"/>
|
|
</xsl:apply-templates>
|
|
</xsl:if>
|
|
|
|
<xsl:text>ch</xsl:text>
|
|
<xsl:number level="any" format="01" from="book"/>
|
|
<xsl:if test="not($recursive)">
|
|
<xsl:value-of select="$html.ext"/>
|
|
</xsl:if>
|
|
</xsl:when>
|
|
|
|
<xsl:when test="self::appendix">
|
|
<xsl:if test="/set">
|
|
<!-- in a set, make sure we inherit the right book info... -->
|
|
<xsl:apply-templates mode="recursive-chunk-filename" select="parent::*">
|
|
<xsl:with-param name="recursive" select="true()"/>
|
|
</xsl:apply-templates>
|
|
</xsl:if>
|
|
|
|
<xsl:text>ap</xsl:text>
|
|
<xsl:number level="any" format="a" from="book"/>
|
|
<xsl:if test="not($recursive)">
|
|
<xsl:value-of select="$html.ext"/>
|
|
</xsl:if>
|
|
</xsl:when>
|
|
|
|
<xsl:when test="self::part">
|
|
<xsl:choose>
|
|
<xsl:when test="/set">
|
|
<!-- in a set, make sure we inherit the right book info... -->
|
|
<xsl:apply-templates mode="recursive-chunk-filename" select="parent::*">
|
|
<xsl:with-param name="recursive" select="true()"/>
|
|
</xsl:apply-templates>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
|
|
<xsl:text>pt</xsl:text>
|
|
<xsl:number level="any" format="01" from="book"/>
|
|
<xsl:if test="not($recursive)">
|
|
<xsl:value-of select="$html.ext"/>
|
|
</xsl:if>
|
|
</xsl:when>
|
|
|
|
<xsl:when test="self::reference">
|
|
<xsl:choose>
|
|
<xsl:when test="/set">
|
|
<!-- in a set, make sure we inherit the right book info... -->
|
|
<xsl:apply-templates mode="recursive-chunk-filename" select="parent::*">
|
|
<xsl:with-param name="recursive" select="true()"/>
|
|
</xsl:apply-templates>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
|
|
<xsl:text>rn</xsl:text>
|
|
<xsl:number level="any" format="01" from="book"/>
|
|
<xsl:if test="not($recursive)">
|
|
<xsl:value-of select="$html.ext"/>
|
|
</xsl:if>
|
|
</xsl:when>
|
|
|
|
<xsl:when test="self::refentry">
|
|
<xsl:choose>
|
|
<xsl:when test="parent::reference">
|
|
<xsl:apply-templates mode="recursive-chunk-filename" select="parent::*">
|
|
<xsl:with-param name="recursive" select="true()"/>
|
|
</xsl:apply-templates>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
|
|
<xsl:text>re</xsl:text>
|
|
<xsl:number level="any" format="01" from="book"/>
|
|
<xsl:if test="not($recursive)">
|
|
<xsl:value-of select="$html.ext"/>
|
|
</xsl:if>
|
|
</xsl:when>
|
|
|
|
<xsl:when test="self::colophon">
|
|
<xsl:choose>
|
|
<xsl:when test="/set">
|
|
<!-- in a set, make sure we inherit the right book info... -->
|
|
<xsl:apply-templates mode="recursive-chunk-filename" select="parent::*">
|
|
<xsl:with-param name="recursive" select="true()"/>
|
|
</xsl:apply-templates>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
|
|
<xsl:text>co</xsl:text>
|
|
<xsl:number level="any" format="01" from="book"/>
|
|
<xsl:if test="not($recursive)">
|
|
<xsl:value-of select="$html.ext"/>
|
|
</xsl:if>
|
|
</xsl:when>
|
|
|
|
<xsl:when test="self::sect1
|
|
or self::sect2
|
|
or self::sect3
|
|
or self::sect4
|
|
or self::sect5
|
|
or self::section">
|
|
<xsl:apply-templates mode="recursive-chunk-filename" select="parent::*">
|
|
<xsl:with-param name="recursive" select="true()"/>
|
|
</xsl:apply-templates>
|
|
<xsl:text>s</xsl:text>
|
|
<xsl:number format="01"/>
|
|
<xsl:if test="not($recursive)">
|
|
<xsl:value-of select="$html.ext"/>
|
|
</xsl:if>
|
|
</xsl:when>
|
|
|
|
<xsl:when test="self::bibliography">
|
|
<xsl:choose>
|
|
<xsl:when test="/set">
|
|
<!-- in a set, make sure we inherit the right book info... -->
|
|
<xsl:apply-templates mode="recursive-chunk-filename" select="parent::*">
|
|
<xsl:with-param name="recursive" select="true()"/>
|
|
</xsl:apply-templates>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
|
|
<xsl:text>bi</xsl:text>
|
|
<xsl:number level="any" format="01" from="book"/>
|
|
<xsl:if test="not($recursive)">
|
|
<xsl:value-of select="$html.ext"/>
|
|
</xsl:if>
|
|
</xsl:when>
|
|
|
|
<xsl:when test="self::glossary">
|
|
<xsl:choose>
|
|
<xsl:when test="/set">
|
|
<!-- in a set, make sure we inherit the right book info... -->
|
|
<xsl:apply-templates mode="recursive-chunk-filename" select="parent::*">
|
|
<xsl:with-param name="recursive" select="true()"/>
|
|
</xsl:apply-templates>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
|
|
<xsl:text>go</xsl:text>
|
|
<xsl:number level="any" format="01" from="book"/>
|
|
<xsl:if test="not($recursive)">
|
|
<xsl:value-of select="$html.ext"/>
|
|
</xsl:if>
|
|
</xsl:when>
|
|
|
|
<xsl:when test="self::index">
|
|
<xsl:choose>
|
|
<xsl:when test="/set">
|
|
<!-- in a set, make sure we inherit the right book info... -->
|
|
<xsl:apply-templates mode="recursive-chunk-filename" select="parent::*">
|
|
<xsl:with-param name="recursive" select="true()"/>
|
|
</xsl:apply-templates>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
|
|
<xsl:text>ix</xsl:text>
|
|
<xsl:number level="any" format="01" from="book"/>
|
|
<xsl:if test="not($recursive)">
|
|
<xsl:value-of select="$html.ext"/>
|
|
</xsl:if>
|
|
</xsl:when>
|
|
|
|
<xsl:when test="self::setindex">
|
|
<xsl:text>si</xsl:text>
|
|
<xsl:number level="any" format="01" from="set"/>
|
|
<xsl:if test="not($recursive)">
|
|
<xsl:value-of select="$html.ext"/>
|
|
</xsl:if>
|
|
</xsl:when>
|
|
|
|
<xsl:otherwise>
|
|
<xsl:text>chunk-filename-error-</xsl:text>
|
|
<xsl:value-of select="name(.)"/>
|
|
<xsl:number level="any" format="01" from="set"/>
|
|
<xsl:if test="not($recursive)">
|
|
<xsl:value-of select="$html.ext"/>
|
|
</xsl:if>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:template>
|
|
|
|
<!-- ==================================================================== -->
|
|
|
|
|
|
|
|
<xsl:template match="processing-instruction('dbhtml')">
|
|
<!-- nop -->
|
|
</xsl:template>
|
|
|
|
<!-- ==================================================================== -->
|
|
|
|
|
|
<xsl:template match="*" mode="find.chunks">
|
|
<xsl:variable name="chunk">
|
|
<xsl:call-template name="chunk"/>
|
|
</xsl:variable>
|
|
|
|
<xsl:choose>
|
|
<xsl:when test="$chunk != 0">
|
|
<cf:div id="{generate-id()}">
|
|
<xsl:apply-templates select="." mode="class.attribute"/>
|
|
<xsl:apply-templates select="*" mode="find.chunks"/>
|
|
</cf:div>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<xsl:apply-templates select="*" mode="find.chunks"/>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="/">
|
|
<!-- * Get a title for current doc so that we let the user -->
|
|
<!-- * know what document we are processing at this point. -->
|
|
<xsl:variable name="doc.title">
|
|
<xsl:call-template name="get.doc.title"/>
|
|
</xsl:variable>
|
|
<xsl:choose>
|
|
<!-- Hack! If someone hands us a DocBook V5.x or DocBook NG document,
|
|
toss the namespace and continue. Use the docbook5 namespaced
|
|
stylesheets for DocBook5 if you don't want to use this feature.-->
|
|
<xsl:when test="$exsl.node.set.available != 0
|
|
and (*/self::ng:* or */self::db:*)">
|
|
<xsl:call-template name="log.message">
|
|
<xsl:with-param name="level">Note</xsl:with-param>
|
|
<xsl:with-param name="source" select="$doc.title"/>
|
|
<xsl:with-param name="context-desc">
|
|
<xsl:text>namesp. cut</xsl:text>
|
|
</xsl:with-param>
|
|
<xsl:with-param name="message">
|
|
<xsl:text>stripped namespace before processing</xsl:text>
|
|
</xsl:with-param>
|
|
</xsl:call-template>
|
|
<xsl:variable name="nons">
|
|
<xsl:apply-templates mode="stripNS"/>
|
|
</xsl:variable>
|
|
<xsl:call-template name="log.message">
|
|
<xsl:with-param name="level">Note</xsl:with-param>
|
|
<xsl:with-param name="source" select="$doc.title"/>
|
|
<xsl:with-param name="context-desc">
|
|
<xsl:text>namesp. cut</xsl:text>
|
|
</xsl:with-param>
|
|
<xsl:with-param name="message">
|
|
<xsl:text>processing stripped document</xsl:text>
|
|
</xsl:with-param>
|
|
</xsl:call-template>
|
|
<xsl:apply-templates select="exsl:node-set($nons)"/>
|
|
</xsl:when>
|
|
<!-- Can't process unless namespace removed -->
|
|
<xsl:when test="*/self::ng:* or */self::db:*">
|
|
<xsl:message terminate="yes">
|
|
<xsl:text>Unable to strip the namespace from DB5 document,</xsl:text>
|
|
<xsl:text> cannot proceed.</xsl:text>
|
|
</xsl:message>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<xsl:choose>
|
|
<xsl:when test="$rootid != ''">
|
|
<xsl:choose>
|
|
<xsl:when test="count(key('id',$rootid)) = 0">
|
|
<xsl:message terminate="yes">
|
|
<xsl:text>ID '</xsl:text>
|
|
<xsl:value-of select="$rootid"/>
|
|
<xsl:text>' not found in document.</xsl:text>
|
|
</xsl:message>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<xsl:if test="$collect.xref.targets = 'yes' or
|
|
$collect.xref.targets = 'only'">
|
|
<xsl:apply-templates select="key('id', $rootid)"
|
|
mode="collect.targets"/>
|
|
</xsl:if>
|
|
<xsl:if test="$collect.xref.targets != 'only'">
|
|
<xsl:apply-templates select="key('id',$rootid)"
|
|
mode="process.root"/>
|
|
<xsl:if test="$tex.math.in.alt != ''">
|
|
<xsl:apply-templates select="key('id',$rootid)"
|
|
mode="collect.tex.math"/>
|
|
</xsl:if>
|
|
<xsl:if test="$generate.manifest != 0">
|
|
<xsl:call-template name="generate.manifest">
|
|
<xsl:with-param name="node" select="key('id',$rootid)"/>
|
|
</xsl:call-template>
|
|
</xsl:if>
|
|
</xsl:if>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<xsl:if test="$collect.xref.targets = 'yes' or
|
|
$collect.xref.targets = 'only'">
|
|
<xsl:apply-templates select="/" mode="collect.targets"/>
|
|
</xsl:if>
|
|
<xsl:if test="$collect.xref.targets != 'only'">
|
|
<xsl:apply-templates select="/" mode="process.root"/>
|
|
<xsl:if test="$tex.math.in.alt != ''">
|
|
<xsl:apply-templates select="/" mode="collect.tex.math"/>
|
|
</xsl:if>
|
|
<xsl:if test="$generate.manifest != 0">
|
|
<xsl:call-template name="generate.manifest">
|
|
<xsl:with-param name="node" select="/"/>
|
|
</xsl:call-template>
|
|
</xsl:if>
|
|
</xsl:if>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="*" mode="process.root">
|
|
<xsl:apply-templates select="."/>
|
|
</xsl:template>
|
|
|
|
<!-- ====================================================================== -->
|
|
|
|
<xsl:template match="set|book|part|preface|chapter|appendix
|
|
|article
|
|
|reference|refentry
|
|
|book/glossary|article/glossary|part/glossary
|
|
|book/bibliography|article/bibliography|part/bibliography
|
|
|colophon">
|
|
<xsl:choose>
|
|
<xsl:when test="$onechunk != 0 and parent::*">
|
|
<xsl:apply-imports/>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<xsl:call-template name="process-chunk-element"/>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="sect1|sect2|sect3|sect4|sect5|section">
|
|
<xsl:variable name="ischunk">
|
|
<xsl:call-template name="chunk"/>
|
|
</xsl:variable>
|
|
|
|
<xsl:choose>
|
|
<xsl:when test="not(parent::*)">
|
|
<xsl:call-template name="process-chunk-element"/>
|
|
</xsl:when>
|
|
<xsl:when test="$ischunk = 0">
|
|
<xsl:apply-imports/>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<xsl:call-template name="process-chunk-element"/>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="setindex
|
|
|book/index
|
|
|article/index
|
|
|part/index">
|
|
<!-- some implementations use completely empty index tags to indicate -->
|
|
<!-- where an automatically generated index should be inserted. so -->
|
|
<!-- if the index is completely empty, skip it. -->
|
|
<xsl:if test="count(*)>0 or $generate.index != '0'">
|
|
<xsl:call-template name="process-chunk-element"/>
|
|
</xsl:if>
|
|
</xsl:template>
|
|
|
|
<!-- Resolve xml:base attributes -->
|
|
<xsl:template match="@fileref">
|
|
<!-- need a check for absolute urls -->
|
|
<xsl:choose>
|
|
<xsl:when test="contains(., ':')">
|
|
<!-- it has a uri scheme so it is an absolute uri -->
|
|
<xsl:value-of select="."/>
|
|
</xsl:when>
|
|
<xsl:when test="$keep.relative.image.uris != 0">
|
|
<!-- leave it alone -->
|
|
<xsl:value-of select="."/>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<!-- its a relative uri -->
|
|
<xsl:call-template name="relative-uri">
|
|
<xsl:with-param name="destdir">
|
|
<xsl:call-template name="dbhtml-dir">
|
|
<xsl:with-param name="context" select=".."/>
|
|
</xsl:call-template>
|
|
</xsl:with-param>
|
|
</xsl:call-template>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:template>
|
|
|
|
<!-- ==================================================================== -->
|
|
<xsl:template match="set|book|part|preface|chapter|appendix
|
|
|article
|
|
|reference|refentry
|
|
|sect1|sect2|sect3|sect4|sect5
|
|
|section
|
|
|book/glossary|article/glossary|part/glossary
|
|
|book/bibliography|article/bibliography|part/bibliography
|
|
|colophon"
|
|
mode="enumerate-files">
|
|
<xsl:variable name="ischunk"><xsl:call-template name="chunk"/></xsl:variable>
|
|
<xsl:if test="$ischunk='1'">
|
|
<xsl:call-template name="make-relative-filename">
|
|
<xsl:with-param name="base.dir">
|
|
<xsl:if test="$manifest.in.base.dir = 0">
|
|
<xsl:value-of select="$base.dir"/>
|
|
</xsl:if>
|
|
</xsl:with-param>
|
|
<xsl:with-param name="base.name">
|
|
<xsl:apply-templates mode="chunk-filename" select="."/>
|
|
</xsl:with-param>
|
|
</xsl:call-template>
|
|
<xsl:text> </xsl:text>
|
|
</xsl:if>
|
|
<xsl:apply-templates select="*" mode="enumerate-files"/>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="book/index|article/index|part/index"
|
|
mode="enumerate-files">
|
|
<xsl:if test="$htmlhelp.output != 1">
|
|
<xsl:variable name="ischunk"><xsl:call-template name="chunk"/></xsl:variable>
|
|
<xsl:if test="$ischunk='1'">
|
|
<xsl:call-template name="make-relative-filename">
|
|
<xsl:with-param name="base.dir">
|
|
<xsl:if test="$manifest.in.base.dir = 0">
|
|
<xsl:value-of select="$base.dir"/>
|
|
</xsl:if>
|
|
</xsl:with-param>
|
|
<xsl:with-param name="base.name">
|
|
<xsl:apply-templates mode="chunk-filename" select="."/>
|
|
</xsl:with-param>
|
|
</xsl:call-template>
|
|
<xsl:text> </xsl:text>
|
|
</xsl:if>
|
|
<xsl:apply-templates select="*" mode="enumerate-files"/>
|
|
</xsl:if>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="legalnotice" mode="enumerate-files">
|
|
<xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable>
|
|
<xsl:if test="$generate.legalnotice.link != 0">
|
|
<xsl:call-template name="make-relative-filename">
|
|
<xsl:with-param name="base.dir">
|
|
<xsl:if test="$manifest.in.base.dir = 0">
|
|
<xsl:value-of select="$base.dir"/>
|
|
</xsl:if>
|
|
</xsl:with-param>
|
|
<xsl:with-param name="base.name">
|
|
<xsl:apply-templates mode="chunk-filename" select="."/>
|
|
</xsl:with-param>
|
|
</xsl:call-template>
|
|
<xsl:text> </xsl:text>
|
|
</xsl:if>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="mediaobject[imageobject] | inlinemediaobject[imageobject]" mode="enumerate-files">
|
|
<xsl:variable name="longdesc.uri">
|
|
<xsl:call-template name="longdesc.uri">
|
|
<xsl:with-param name="mediaobject"
|
|
select="."/>
|
|
</xsl:call-template>
|
|
</xsl:variable>
|
|
<xsl:variable name="mediaobject" select="."/>
|
|
|
|
<xsl:if test="$html.longdesc != 0 and $mediaobject/textobject[not(phrase)]">
|
|
<xsl:call-template name="longdesc.uri">
|
|
<xsl:with-param name="mediaobject" select="$mediaobject"/>
|
|
</xsl:call-template>
|
|
<xsl:text> </xsl:text>
|
|
</xsl:if>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="text()" mode="enumerate-files">
|
|
</xsl:template>
|
|
|
|
</xsl:stylesheet>
|