<xsl:import href="docbook.xsl"/>
<xsl:import href="chunk-common.xsl"/>
+<xsl:include href="manifest.xsl"/>
<xsl:param name="onechunk" select="0"/>
<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:otherwise>
</xsl:choose>
</xsl:when>
<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:if>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
--- /dev/null
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:doc="http://nwalsh.com/xsl/documentation/1.0"
+ version="1.0"
+ exclude-result-prefixes="doc">
+
+<xsl:template name="generate.manifest">
+ <xsl:param name="node" select="/"/>
+ <xsl:call-template name="write.text.chunk">
+ <xsl:with-param name="filename" select="$manifest"/>
+ <xsl:with-param name="method" select="'text'"/>
+ <xsl:with-param name="content">
+ <xsl:apply-templates select="$node" mode="enumerate-files"/>
+ </xsl:with-param>
+ <xsl:with-param name="encoding" select="$default.encoding"/>
+ </xsl:call-template>
+</xsl:template>
+
+<xsl:template match="set|book|part|preface|chapter|appendix
+ |article
+ |reference|refentry
+ |sect1|sect2|sect3|sect4|sect5
+ |section
+ |book/glossary|article/glossary
+ |book/bibliography|article/bibliography
+ |book/index|article/index
+ |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" select="$base.dir"/>
+ <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="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" select="$base.dir"/>
+ <xsl:with-param name="base.name" select="concat('ln-',$id,$html.ext)"/>
+ </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>
<!ENTITY generate.id.attributes SYSTEM "../params/generate.id.attributes.xml">
<!ENTITY generate.index SYSTEM "../params/generate.index.xml">
<!ENTITY generate.legalnotice.link SYSTEM "../params/generate.legalnotice.link.xml">
+<!ENTITY generate.manifest SYSTEM "../params/generate.manifest.xml">
<!ENTITY generate.section.toc.level SYSTEM "../params/generate.section.toc.level.xml">
<!ENTITY generate.toc SYSTEM "../params/generate.toc.xml">
<!ENTITY glossary.collection SYSTEM "../params/glossary.collection.xml">
<!ENTITY make.valid.html SYSTEM "../params/make.valid.html.xml">
<!ENTITY make.single.year.ranges SYSTEM "../params/make.single.year.ranges.xml">
<!ENTITY make.year.ranges SYSTEM "../params/make.year.ranges.xml">
+<!ENTITY manifest SYSTEM "../params/manifest.xml">
<!ENTITY manual.toc SYSTEM "../params/manual.toc.xml">
<!ENTITY navig.graphics SYSTEM "../params/navig.graphics.xml">
<!ENTITY navig.graphics.extension SYSTEM "../params/navig.graphics.extension.xml">
&html.ext;
&root.filename;
&base.dir;
+&generate.manifest;
+&manifest;
&chunk.toc;
&chunk.section.depth;
&chunk.first.sections;
<src:fragref linkend="generate.id.attributes.frag"/>
<src:fragref linkend="generate.index.frag"/>
<src:fragref linkend="generate.legalnotice.link.frag"/>
+<src:fragref linkend="generate.manifest.frag"/>
<src:fragref linkend="generate.section.toc.level.frag"/>
<src:fragref linkend="generate.toc.frag"/>
<src:fragref linkend="glossary.collection.frag"/>
<src:fragref linkend="make.single.year.ranges.frag"/>
<src:fragref linkend="make.valid.html.frag"/>
<src:fragref linkend="make.year.ranges.frag"/>
+<src:fragref linkend="manifest.frag"/>
<src:fragref linkend="manual.toc.frag"/>
<src:fragref linkend="navig.graphics.extension.frag"/>
<src:fragref linkend="navig.graphics.frag"/>
--- /dev/null
+<refentry id="generate.manifest">
+<refmeta>
+<refentrytitle>generate.manifest</refentrytitle>
+<refmiscinfo role="type">boolean</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>generate.manifest</refname>
+<refpurpose>This parameter controls generating of manifest file</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<src:fragment id='generate.manifest.frag'>
+<xsl:param name="generate.manifest" select="0"/>
+</src:fragment>
+</refsynopsisdiv>
+
+<refsect1><title>Description</title>
+
+<para>FIXME:</para>
+
+</refsect1>
+</refentry>
--- /dev/null
+<refentry id="manifest">
+<refmeta>
+<refentrytitle>manifest</refentrytitle>
+<refmiscinfo role="type">string</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>manifest</refname>
+<refpurpose>Name of manifest file</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<src:fragment id='manifest.frag'>
+<xsl:param name="manifest" select="'HTML.manifest'"/>
+</src:fragment>
+</refsynopsisdiv>
+
+<refsect1><title>Description</title>
+
+<para>FIXME:</para>
+
+</refsect1>
+</refentry>