cvs: phpdoc /xsl/docbook/html ChangeLog admon.xsl autoidx.xsl autotoc.xsl biblio.xsl block.xsl callout.xsl changebars.xsl chunk-common.xsl chunk.xsl
chunker.xsl chunkfast.xsl component.xsl division.xsl docbook.xsl ebnf.xsl footnote.xsl formal.xsl glossary.xsl graphics.xsl html-rtf.xsl html.xsl
index.xsl info.xsl inline.xsl keywords.xsl lists.xsl manifest.xsl math.xsl param.ent param.xml param.xsl param.xweb pi.xsl profile-chunk.xsl
profile-docbook.xsl profile-onechunk.xsl qandaset.xsl refentry.xsl sections.xsl synop.xsl table.xsl titlepage.templates.xml titlepage.templates.xsl
titlepage.xsl toc.xsl verbatim.xsl xref.xsl
| From: | Thomas Schoefbeck | Date: | Sun, 09 Mar 2003 14:56:39 +0000 |
| Subject: | cvs: phpdoc /xsl/docbook/html ChangeLog admon.xsl autoidx.xsl autotoc.xsl biblio.xsl block.xsl callout.xsl changebars.xsl chunk-common.xsl chunk.xsl chunker.xsl chunkfast.xsl component.xsl division.xsl docbook.xsl ebnf.xsl footnote.xsl formal.xsl glossary.xsl graphics.xsl html-rtf.xsl html.xsl index.xsl info.xsl inline.xsl keywords.xsl lists.xsl manifest.xsl math.xsl param.ent param.xml param.xsl param.xweb pi.xsl profile-chunk.xsl profile-docbook.xsl profile-onechunk.xsl qandaset.xsl refentry.xsl sections.xsl synop.xsl table.xsl titlepage.templates.xml titlepage.templates.xsl titlepage.xsl toc.xsl verbatim.xsl xref.xsl |
||
| Groups: | php.doc | ||
| Request: | Send a blank email to phpdoc+get-969352143@lists.php.net to get a copy of this message | ||
tom Sun Mar 9 09:56:39 2003 EDT
Added files:
/phpdoc/xsl/docbook/html chunkfast.xsl
Modified files:
/phpdoc/xsl/docbook/html ChangeLog admon.xsl autoidx.xsl
autotoc.xsl biblio.xsl block.xsl
callout.xsl changebars.xsl
chunk-common.xsl chunk.xsl chunker.xsl
component.xsl division.xsl docbook.xsl
ebnf.xsl footnote.xsl formal.xsl
glossary.xsl graphics.xsl html-rtf.xsl
html.xsl index.xsl info.xsl inline.xsl
keywords.xsl lists.xsl manifest.xsl
math.xsl param.ent param.xml param.xsl
param.xweb pi.xsl profile-chunk.xsl
profile-docbook.xsl profile-onechunk.xsl
qandaset.xsl refentry.xsl sections.xsl
synop.xsl table.xsl
titlepage.templates.xml
titlepage.templates.xsl titlepage.xsl
toc.xsl verbatim.xsl xref.xsl
Log:
update to docbook-xsl 1.60.1
Index: phpdoc/xsl/docbook/html/ChangeLog diff -u phpdoc/xsl/docbook/html/ChangeLog:1.1 phpdoc/xsl/docbook/html/ChangeLog:1.2 --- phpdoc/xsl/docbook/html/ChangeLog:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/ChangeLog Sun Mar 9 09:56:38 2003 @@ -1,3 +1,574 @@ +2003-01-22 Norman Walsh <nwalsh@users.sourceforge.net> + + * graphics.xsl: Fix bugs in presentation of graphic width/height + + * inline.xsl: Add class attributes to inline elements + + * xref.xsl: Format chapter and appendix titles consistently in xrefs + +2003-01-20 Norman Walsh <nwalsh@users.sourceforge.net> + + * autoidx.xsl: Bug #663331: add article to section entity + + * biblio.xsl: Bug #640762: Support new biblioentry elements + + * chunk-common.xsl: Bug #648473: don't output the html.ext when using dbhtml filenames + + * footnote.xsl: Support {table.}footnote.number.{format,symbols} + + * glossary.xsl: Support glossentry.show.acronym + + * param.ent, param.xweb: Added {table.}footnote.number.{format,symbols}, entry.propagates.style, and glossentry.show.acronym + + * param.ent, param.xweb: Support xref.with.number.and.title + + * sections.xsl: Don't force a ToC for refentrys + + * table.xsl: Support entry.propagates.style + + * titlepage.templates.xml: SIGNIFICANT changes to the titlepage template setup. See RELEASE-NOTES. + + * xref.xsl: Handle xref to glossentry + +2003-01-17 Norman Walsh <nwalsh@users.sourceforge.net> + + * lists.xsl: Output ul list type only if css.decoration is non-zero + + * xref.xsl: Remove duplicated IDs when endterm is used on xref + +2003-01-12 Norman Walsh <nwalsh@users.sourceforge.net> + + * autoidx.xsl: Make sure that indexdivs are properly scoped. I've done this by adding a test to suppress the division if it contains no terms. It seems like there might be a better way, but I can't see it just at the moment + +2003-01-08 Robert Stayton <bobstayton@users.sourceforge.net> + + * xref.xsl: In olink, use document($target.database.document, /) so the + olink database location is relative to the document, not + the stylesheet. + +2003-01-06 Robert Stayton <bobstayton@users.sourceforge.net> + + * autoidx.xsl, index.xsl: Removed unnecessary generate-index-from-terms template in + favor of generate-index with scope parameter. + +2003-01-02 Norman Walsh <nwalsh@users.sourceforge.net> + + * autoidx.xsl, index.xsl: Rework indexing to avoid XSLT limitation/Saxon bug with context dependencies; finish porting Bob's changes from FO to HTML + + * index.xsl, titlepage.templates.xml, titlepage.xsl: Support setindex (there were all sorts of things wrong with it) + +2003-01-01 Norman Walsh <nwalsh@users.sourceforge.net> + + * autoidx.xsl, index.xsl: Make index elements always index the book that contains them (if there is one, otherwise the whole document); setindex always indexes the whole document + + * autotoc.xsl: Support List of Procedures + + * formal.xsl, xref.xsl: Use titleabbrev instead of title in xrefs + + * graphics.xsl: Support ignore.image.scaling parameter; fix bug where 'center' is output for align on img + + * param.ent, param.xweb: New parameters + + * sections.xsl: Don't output section IDs twice when formatting subtitles + +2002-12-31 Norman Walsh <nwalsh@users.sourceforge.net> + + * callout.xsl: Whitespace + + * graphics.xsl: Support alt text on mediaobjectco + + * inline.xsl: Make lineannotations italic + +2002-12-28 Norman Walsh <nwalsh@users.sourceforge.net> + + * xref.xsl: Now that xrefstyle is official; make it take priority even when use.role.as.xrefstyle is non-zero. + + * xref.xsl: Make endterm on xref higher priority than xreflabel on the target + +2002-12-18 Robert Stayton <bobstayton@users.sourceforge.net> + + * autoidx.xsl: Sorts were being done on primary entries, but without + folding upper and lower case together. Now it does the folding. + + * graphics.xsl: Now uses select.mediaobject.index for selecting mediaobject. + Also puts align attribute value on <div> as the comment says + it should. + +2002-12-17 Jirka Kosek <kosek@users.sourceforge.net> + + * Makefile.param: Fixed build problems with new parameters. + +2002-12-17 Robert Stayton <bobstayton@users.sourceforge.net> + + * math.xsl: Changed selection of mediaobject to be more consistent using + a separate select.mediaobject.index template. Also added + text-align to block containing external-graphic in fo output. + +2002-12-17 Jirka Kosek <kosek@users.sourceforge.net> + + * param.xweb: Fixed build problems with new parameters. + +2002-12-13 Robert Stayton <bobstayton@users.sourceforge.net> + + * glossary.xsl: Handles missing otherterm targets in glosssee and glossseealso. + +2002-12-06 Robert Stayton <bobstayton@users.sourceforge.net> + + * block.xsl: Fixed epigraph template to process all the permitted + children, not just para. + + * graphics.xsl, param.ent, param.xweb: Enabled selection of imageobject based on role attribute. + +2002-12-04 Robert Stayton <bobstayton@users.sourceforge.net> + + * autotoc.xsl, component.xsl, sections.xsl: Added component.toc.separator and section.toc.separator as + emtpy templates for customization of transition + from TOC to first content. + +2002-11-29 Norman Walsh <nwalsh@users.sourceforge.net> + + * lists.xsl: Make opencircle=circle in itemizedlist marks + +2002-11-25 Robert Stayton <bobstayton@users.sourceforge.net> + + * sections.xsl: Made subtitles in sections scale to proper heading level. + +2002-11-16 Norman Walsh <nwalsh@users.sourceforge.net> + + * admon.xsl: Align titles on graphical admonitions + + * biblio.xsl, xref.xsl: Support bibliosource; improve numbered bibliography entries and cross-references to them + +2002-11-15 Norman Walsh <nwalsh@users.sourceforge.net> + + * table.xsl: Insignificant tweak + +2002-11-14 Norman Walsh <nwalsh@users.sourceforge.net> + + * biblio.xsl: Use xreflabel (if it's present) on bibliography entries + + * component.xsl: Article appendix titles should be top-level titles + + * refentry.xsl: Handle nested refsections + + * table.xsl: Support entrytbl + + * xref.xsl: Whitespace + +2002-11-01 Norman Walsh <nwalsh@users.sourceforge.net> + + * inline.xsl: Output anchors for author/editor/othercredit names + + * lists.xsl: Output anchors for simplelist members + +2002-10-31 Norman Walsh <nwalsh@users.sourceforge.net> + + * autoidx.xsl: Support spanning index terms (endofrange/startref) + +2002-10-20 Norman Walsh <nwalsh@users.sourceforge.net> + + * inline.xsl: Bug #619474: support errortext element + +2002-10-19 Norman Walsh <nwalsh@users.sourceforge.net> + + * block.xsl, component.xsl, division.xsl, refentry.xsl, sections.xsl: + Support output of language attribute + + * inline.xsl: Support output of language attribute on foreignphrase and fix bug in glossterm linking + +2002-10-09 Robert Stayton <bobstayton@users.sourceforge.net> + + * xref.xsl: Fixed bug in lookup of olink database document baseuri + attribute for case of no site map. + +2002-10-08 Norman Walsh <nwalsh@users.sourceforge.net> + + * formal.xsl: Use table 'tabstyle' attribute for div class + +2002-10-06 Norman Walsh <nwalsh@users.sourceforge.net> + + * chunk-common.xsl: Simplify chunk-element-content; no semantic differences + + * chunk.xsl: Reworked chunking for downstream customization; will break any existing customization layer that changes the chunking algorithm + +2002-10-04 Norman Walsh <nwalsh@users.sourceforge.net> + + * autotoc.xsl, component.xsl, sections.xsl: Support optional titles on ToCs + + * lists.xsl: Bug #615464: fix typo in compact list spacing + + * param.ent, param.xweb, table.xsl: Made separate parameters for table frame and table cell border properties + + * synop.xsl: Bug #617717: remove spurious hash in anchor name + +2002-10-04 Jirka Kosek <kosek@users.sourceforge.net> + + * titlepage.xsl: Fixed bug #618600. Address is now displayed verbatim also on titlepages. + +2002-10-02 Norman Walsh <nwalsh@users.sourceforge.net> + + * lists.xsl: Support continuation of orderedlists and inherited numeration in FO + +2002-10-01 Robert Stayton <bobstayton@users.sourceforge.net> + + * sections.xsl: Changed section.level template to return a number that matches + the section level (sect1 = 1, etc.), and changed other + templates to compensate for the change, so the output + should be the same as before. + +2002-09-27 Norman Walsh <nwalsh@users.sourceforge.net> + + * autoidx.xsl: Bug #496294: don't index endofrangeentries. They're no longer indexed, but they aren't handled quite right yet either, they don't generate ranges + + * autotoc.xsl: Properly support bridgehead.in.toc parameter + + * biblio.xsl: Related to bug #583282: don't duplicate footnotes in bibliographys either + + * block.xsl, titlepage.xsl: Bug #582192: support revdescription and improve effectiveness of html-rtf by extending the number of places where its used + + * component.xsl: Bug #596599: TOC for article/appendix in chunked HTML + + * docbook.xsl: Make sure chunk always returns zero if we're not chunking + + * formal.xsl: Bug #497603: fixed and added default.float.class + + * glossary.xsl: Bug #583282: footnote duplicated in glossary footer + + * graphics.xsl: Bug #516859: added default.image.width + + * index.xsl: Related to bug #583282: don't duplicate footnotes in indexes either + + * param.ent, param.xweb: Use new parameters + + * synop.xsl: Total rework of funcsynopsis code; now supports a 'tabular' presentation style for 'wide' prototypes; see funcsynopsis.tabular.threshold + +2002-09-20 Norman Walsh <nwalsh@users.sourceforge.net> + + * changebars.xsl: Address Bug #610660: use system.head.content instead of user.head.content; tone down the intensity of the colors a bit + + * chunk-common.xsl: Call system.head.content in html.head + + * docbook.xsl: Address Bug #610660: Added system.head.content so that stylesheets can output things before the users css.stylesheet (for example). Also added a title parameter to head.content + + * docbook.xsl: Add context to error message about a missing template + + * graphics.xsl: Call the *.head.content templates when writing out long description chunks + + * synop.xsl: Bug #605150: process arg correctly even when it's in a group + + * titlepage.xsl: Bug #607725: make sure legalnoticelink is correct even when chunking to a different html.dir + + * titlepage.xsl: Call the *.head.content templates when writing out legalnotice chunks + +2002-09-18 Norman Walsh <nwalsh@users.sourceforge.net> + + * graphics.xsl: Use CSS to set viewport characteristics if css.decoration is non-zero, use div instead of p for making graphic a block element; make figure titles the default alt text for images in a figure + + * html-rtf.xsl: Handle XHTML RTFs more completely + +2002-09-17 Norman Walsh <nwalsh@users.sourceforge.net> + + * chunk.xsl: Use local URIs for importing docbook.xsl and chunk-common.xsl + + * qandaset.xsl: Added default table summary to qandaset tables + +2002-09-16 Norman Walsh <nwalsh@users.sourceforge.net> + + * chunk.xsl, chunkfast.xsl: Attempt to make chunking faster; chunkfast is still experimental + +2002-09-15 Norman Walsh <nwalsh@users.sourceforge.net> + + * autoidx.xsl: Support indexing in webpages (website DTD). In the long run, this probably isn't a good strategy... + +2002-09-06 Norman Walsh <nwalsh@users.sourceforge.net> + + * admon.xsl: Output table summary and img alt for graphical admonitions + + * docbook.xsl: Whitespace changes + + * param.ent, param.xweb: Use the new l10n.* parameters + +2002-09-04 Norman Walsh <nwalsh@users.sourceforge.net> + + * chunk-common.xsl: Ignore dbhtml dir if the section isn't a chunk + + * chunk.xsl: Make sure chunked ToC/LoT goes in the right base.dir + + * component.xsl: Allow generate.toc parameter to control ToC in article/appendixes + + * graphics.xsl: Use the graphicsize.extension parameter + +2002-09-03 Norman Walsh <nwalsh@users.sourceforge.net> + + * refentry.xsl: Do something reasonable with refsection; this still needs work + + * table.xsl: Make sure row-level colsep and rowsep values are 'inherited' onto missing cells + +2002-08-28 Norman Walsh <nwalsh@users.sourceforge.net> + + * table.xsl: Make inherited attributes work for 'missing' table cells + +2002-08-26 Norman Walsh <nwalsh@users.sourceforge.net> + + * chunk.xsl, param.ent, param.xweb: Made chunk.tocs.and.lots a proper parameter + +2002-08-25 Jirka Kosek <kosek@users.sourceforge.net> + + * autoidx.xsl: Fixed bug #496281. Refentry is now recognized as target for links from index. + +2002-08-22 Jirka Kosek <kosek@users.sourceforge.net> + + * Makefile.param: Index can be alternatively created using HHK file from now. This allows see-also processing and index terms also points to their exact location. + +2002-08-22 Norman Walsh <nwalsh@users.sourceforge.net> + + * autoidx.xsl: Format see/seealso entries correctly + + * autotoc.xsl, chunk-common.xsl, chunk.xsl, component.xsl, division.xsl: + Rework(ing) ToC/LoT generation to support chunking the ToC/LoT; don't output empty rows in navigation tables + +2002-08-22 Jirka Kosek <kosek@users.sourceforge.net> + + * param.ent, param.xweb: Index can be alternatively created using HHK file from now. This allows see-also processing and index terms also points to their exact location. + +2002-07-29 Robert Stayton <bobstayton@users.sourceforge.net> + + * lists.xsl: Added valign="top" attribute to the <col> element + for variablelist term column. I was getting vertically + centered alignment for the term. + +2002-07-19 Norman Walsh <nwalsh@users.sourceforge.net> + + * biblio.xsl, inline.xsl, param.ent, param.xweb: Support menuchoice.menu.separator, menuchoice.separator, and bibliography.numbered + +2002-07-18 Norman Walsh <nwalsh@users.sourceforge.net> + + * block.xsl, lists.xsl, param.ent, param.xweb: Added support for para.propagates.style + + * lists.xsl: Use tr.attributes + + * param.ent, param.xweb: Added html.cellpadding and html.cellspacing + + * table.xsl: Added tr.attributes named template (for odd-row coloring and such) and html.cellpadding and html.cellspacing for table defaults + +2002-07-16 Norman Walsh <nwalsh@users.sourceforge.net> + + * inline.xsl: When emphasis propagates its role attribute as the HTML span class and a role is provided, don't use <em> + +2002-07-16 Robert Stayton <bobstayton@users.sourceforge.net> + + * xref.xsl: Remove 'article' from the catch-all template match in mode=xref-to + because it is already covered in another xref-to template, + leading to an ambigious selection of template. + +2002-07-10 Norman Walsh <nwalsh@users.sourceforge.net> + + * chunker.xsl: Repeat after me: you cannot use xsl:attribute on intruction elements, you cannot use... + + * graphics.xsl: Refactor calls to getWidth() and getDepth() to work around XSLTC bugs + +2002-07-09 Norman Walsh <nwalsh@users.sourceforge.net> + + * biblio.xsl: Don't output square brackets if there's no biblioentry label + + * synop.xsl: Bug #573726: fix cmdsynopsisref formatting + +2002-07-08 Norman Walsh <nwalsh@users.sourceforge.net> + + * autoidx.xsl: Bug #574841: trim leading and trailing whitespace from primary/secondary/tertiary index terms + + * autoidx.xsl: Bug #574840: fix bug where some symbol index terms got lost + + * graphics.xsl: Work-around bug in xsltproc: explicitly cast scale to a number() before comparing it to 1.0 + + * html-rtf.xsl, verbatim.xsl: Bug #567130: make sure literallayout children don't get lost + +2002-07-08 Robert Stayton <bobstayton@users.sourceforge.net> + + * xref.xsl: Moved the target.database parameter to be the first + child in the olink template. + +2002-07-07 Norman Walsh <nwalsh@users.sourceforge.net> + + * chunk-common.xsl, chunk.xsl: First tentative stab at getting ToCs and LoTs into separate chunks--does not work + + * footnote.xsl: Fix footnotes in table titles + + * lists.xsl: Fix ugly bug: make sure premables to orderedlist and itemizedlist elements are actually formatted + +2002-07-06 Robert Stayton <bobstayton@users.sourceforge.net> + + * graphics.xsl: Bug fix for inlinegraphic not being inline. + The test for setting $viewport to 0 was + test="inlinegraphic + | ancestor::inlinemediaobject + | ancestor::inlineequation" + when it should be: + test="local-name(.) = 'inlinegraphic' + or ancestor::inlinemediaobject + or ancestor::inlineequation" + Now inlinegraphics are inline. + + * xref.xsl: Added $verbose parameter to default xref-to template + so olink target collection can be quiet for elements + that don't have an xref-to. + Also fixed a line break in an olink error message. + +2002-07-05 Robert Stayton <bobstayton@users.sourceforge.net> + + * chunk.xsl: Modified for new stylesheet olink system. + Checks the collect.xref.targets parameter and + runs the target collection process if selected. + Default is to not run the collection process. + + * docbook.xsl: Modified for the new stylesheet olink system. + Checks the collect.xref.targets parameter and runs + the target data collection process if selected. + Default is to not run the collection process. + + * param.ent: Added seven new parameters for the new stylesheet olink system: + target.database.document + targets.filename + collect.xref.targets + olink.base.uri + use.local.olink.style + current.docid + olink.doctitle + + * param.ent, param.xweb: Removed references to the chunk.datafile parameter, + because Norm removed that parameter due to + obsolescence. + + * param.xweb: Added seven parameters for the new stylesheet olink system: + target.database.document + targets.filename + collect.xref.targets + olink.base.uri + use.local.olink.style + current.docid + olink.doctitle + + * xref.xsl: Modified to use new stylesheet olinks. + Extended the olink template for the new targetdoc and + targetptr attributes. + Loads the target database into keys for quick lookups. + +2002-07-04 Norman Walsh <nwalsh@users.sourceforge.net> + + * xref.xsl: Feature req #525507: support xref to para by using the nearest containing section as the generated text + +2002-07-03 Norman Walsh <nwalsh@users.sourceforge.net> + + * chunk-common.xsl, param.ent, param.xweb: Use header.rule and footer.rule parameters when building page navigation + + * docbook.xsl: Feature Req #502932: added root.messages template for user defined messages + +2002-06-29 Norman Walsh <nwalsh@users.sourceforge.net> + + * formal.xsl, lists.xsl: Make list/procedure titles use gentext and have consisten formatting + +2002-06-28 Norman Walsh <nwalsh@users.sourceforge.net> + + * chunk-common.xsl: Fix footnote context error (Felix Rabe) + +2002-06-27 Norman Walsh <nwalsh@users.sourceforge.net> + + * footnote.xsl: Make sure function-available is used around the node-set extension function + +2002-06-27 Jirka Kosek <kosek@users.sourceforge.net> + + * footnote.xsl: Fixed typo + +2002-06-27 Norman Walsh <nwalsh@users.sourceforge.net> + + * table.xsl: Whitespace + +2002-06-26 Norman Walsh <nwalsh@users.sourceforge.net> + + * inline.xsl, xref.xsl: Unwrap nested links + + * table.xsl: Rework the CSS table-border properties so that all three don't have to be specified at once + +2002-06-16 Norman Walsh <nwalsh@users.sourceforge.net> + + * chunker.xsl: Turn off omit-xml-declaration, for what it's worth, in text mode + + * table.xsl: Added PI for cellspacing and cellpadding; also added currently useless Python extension hooks + +2002-06-13 Jirka Kosek <kosek@users.sourceforge.net> + + * Makefile.param: New features. A lot of new features. For HTML Help. + + * Makefile.param: Added parameter for disabling HTML output when testing various HTML Help features. + +2002-06-13 Norman Walsh <nwalsh@users.sourceforge.net> + + * chunker.xsl: Use the new chunking parameters: NOTE WELL: they are described in param.xweb but actually defined in chunker.xsl to make it independent + +2002-06-13 Jirka Kosek <kosek@users.sourceforge.net> + + * chunker.xsl: Modified output attributes for text chunks as Saxon doesn't like empty values for them. + +2002-06-13 Norman Walsh <nwalsh@users.sourceforge.net> + + * html-rtf.xsl: Renamed a template + + * inline.xsl: Changed test condition for xlink: simple links + + * manifest.xsl, math.xsl, param.ent: Use the new chunking parameters: NOTE WELL: they are described in param.xweb but actually defined in chunker.xsl to make it independent + +2002-06-13 Jirka Kosek <kosek@users.sourceforge.net> + + * param.ent: New features. A lot of new features. For HTML Help. + + * param.ent: Added parameter for disabling HTML output when testing various HTML Help features. + +2002-06-13 Norman Walsh <nwalsh@users.sourceforge.net> + + * param.xweb: Use the new chunking parameters: NOTE WELL: they are described in param.xweb but actually defined in chunker.xsl to make it independent + +2002-06-13 Jirka Kosek <kosek@users.sourceforge.net> + + * param.xweb: New features. A lot of new features. For HTML Help. + + * param.xweb: Added parameter for disabling HTML output when testing various HTML Help features. + +2002-06-12 Jirka Kosek <kosek@users.sourceforge.net> + + * chunk-common.xsl, param.ent, param.xweb: Added new parameters suppress.{footer|header}.navigation for separate control over navigation bar in footer and header. + +2002-06-11 Norman Walsh <nwalsh@users.sourceforge.net> + + * formal.xsl: Make sure formal objects have an anchor + + * graphics.xsl: Don't put alt on object or embed + + * graphics.xsl: Don't output viewport table if it isn't going to do anything useful + + * graphics.xsl, param.ent, param.xweb: Made new parameters public + + * html-rtf.xsl: When unwrapping; don't produce empty elements if there's no need + + * html-rtf.xsl: Fix list of block elements and support xhtml + + * xref.xsl: Experimental support for xrefstyle + +2002-06-09 Norman Walsh <nwalsh@users.sourceforge.net> + + * docbook.xsl: Feature req #565822: support multiple html.stylesheets + + * docbook.xsl: Patch #565199: fix quotation marks in draft URL generation in CSS + +2002-06-06 Norman Walsh <nwalsh@users.sourceforge.net> + + * docbook.xsl: Add support for HTML META name=description from abstract + + * param.ent, param.xweb: New parameters: generate.meata.abstract and use.role.as.xrefstyle + +2002-06-03 Jirka Kosek <kosek@users.sourceforge.net> + + * Makefile: Added dependencies for profiling stylesheets + 2002-05-23 Norman Walsh <nwalsh@users.sourceforge.net> * graphics.xsl, param.ent, param.xweb: Support for SVG in HTML Index: phpdoc/xsl/docbook/html/admon.xsl diff -u phpdoc/xsl/docbook/html/admon.xsl:1.1 phpdoc/xsl/docbook/html/admon.xsl:1.2 --- phpdoc/xsl/docbook/html/admon.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/admon.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: admon.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: admon.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -32,46 +32,65 @@ <xsl:param name="node" select="."/> <xsl:value-of select="$admon.graphics.path"/> <xsl:choose> - <xsl:when test="name($node)='note'">note</xsl:when> - <xsl:when test="name($node)='warning'">warning</xsl:when> - <xsl:when test="name($node)='caution'">caution</xsl:when> - <xsl:when test="name($node)='tip'">tip</xsl:when> - <xsl:when test="name($node)='important'">important</xsl:when> + <xsl:when test="local-name($node)='note'">note</xsl:when> + <xsl:when test="local-name($node)='warning'">warning</xsl:when> + <xsl:when test="local-name($node)='caution'">caution</xsl:when> + <xsl:when test="local-name($node)='tip'">tip</xsl:when> + <xsl:when test="local-name($node)='important'">important</xsl:when> <xsl:otherwise>note</xsl:otherwise> </xsl:choose> <xsl:value-of select="$admon.graphics.extension"/> </xsl:template> <xsl:template name="graphical.admonition"> + <xsl:variable name="admon.type"> + <xsl:choose> + <xsl:when test="local-name(.)='note'">Note</xsl:when> + <xsl:when test="local-name(.)='warning'">Warning</xsl:when> + <xsl:when test="local-name(.)='caution'">Caution</xsl:when> + <xsl:when test="local-name(.)='tip'">Tip</xsl:when> + <xsl:when test="local-name(.)='important'">Important</xsl:when> + <xsl:otherwise>Note</xsl:otherwise> + </xsl:choose> + </xsl:variable> + <div class="{name(.)}"> - <xsl:if test="$admon.style != ''"> - <xsl:attribute name="style"> - <xsl:value-of select="$admon.style"/> - </xsl:attribute> - </xsl:if> - <table border="0"> - <tr> - <td rowspan="2" align="center" valign="top"> - <xsl:attribute name="width"> - <xsl:call-template name="admon.graphic.width"/> - </xsl:attribute> - <img> - <xsl:attribute name="src"> - <xsl:call-template name="admon.graphic"/> + <xsl:if test="$admon.style != ''"> + <xsl:attribute name="style"> + <xsl:value-of select="$admon.style"/> + </xsl:attribute> + </xsl:if> + + <table border="0"> + <xsl:attribute name="summary"> + <xsl:value-of select="$admon.type"/> + <xsl:if test="title"> + <xsl:text>: </xsl:text> + <xsl:value-of select="title"/> + </xsl:if> + </xsl:attribute> + <tr> + <td rowspan="2" align="center" valign="top"> + <xsl:attribute name="width"> + <xsl:call-template name="admon.graphic.width"/> </xsl:attribute> - </img> - </td> - <th> - <xsl:call-template name="anchor"/> - <xsl:apply-templates select="." mode="object.title.markup"/> - </th> - </tr> - <tr> - <td colspan="2" align="left" valign="top"> - <xsl:apply-templates/> - </td> - </tr> - </table> + <img alt="[{$admon.type}]"> + <xsl:attribute name="src"> + <xsl:call-template name="admon.graphic"/> + </xsl:attribute> + </img> + </td> + <th align="left"> + <xsl:call-template name="anchor"/> + <xsl:apply-templates select="." mode="object.title.markup"/> + </th> + </tr> + <tr> + <td colspan="2" align="left" valign="top"> + <xsl:apply-templates/> + </td> + </tr> + </table> </div> </xsl:template> Index: phpdoc/xsl/docbook/html/autoidx.xsl diff -u phpdoc/xsl/docbook/html/autoidx.xsl:1.1 phpdoc/xsl/docbook/html/autoidx.xsl:1.2 --- phpdoc/xsl/docbook/html/autoidx.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/autoidx.xsl Sun Mar 9 09:56:38 2003 @@ -4,9 +4,9 @@ <!ENTITY lowercase "'abcdefghijklmnopqrstuvwxyz'"> <!ENTITY uppercase "'ABCDEFGHIJKLMNOPQRSTUVWXYZ'"> -<!ENTITY primary 'concat(primary/@sortas, primary[not(@sortas)])'> -<!ENTITY secondary 'concat(secondary/@sortas, secondary[not(@sortas)])'> -<!ENTITY tertiary 'concat(tertiary/@sortas, tertiary[not(@sortas)])'> +<!ENTITY primary 'normalize-space(concat(primary/@sortas, primary[not(@sortas)]))'> +<!ENTITY secondary 'normalize-space(concat(secondary/@sortas, secondary[not(@sortas)]))'> +<!ENTITY tertiary 'normalize-space(concat(tertiary/@sortas, tertiary[not(@sortas)]))'> <!ENTITY section '(ancestor-or-self::set |ancestor-or-self::book @@ -16,22 +16,26 @@ |ancestor-or-self::chapter |ancestor-or-self::appendix |ancestor-or-self::preface + |ancestor-or-self::article |ancestor-or-self::section |ancestor-or-self::sect1 |ancestor-or-self::sect2 |ancestor-or-self::sect3 |ancestor-or-self::sect4 |ancestor-or-self::sect5 + |ancestor-or-self::refentry |ancestor-or-self::refsect1 |ancestor-or-self::refsect2 |ancestor-or-self::refsect3 |ancestor-or-self::simplesect |ancestor-or-self::bibliography |ancestor-or-self::glossary - |ancestor-or-self::index)[last()]'> + |ancestor-or-self::index + |ancestor-or-self::webpage)[last()]'> <!ENTITY section.id 'generate-id(§ion;)'> <!ENTITY sep '" "'> +<!ENTITY scope 'count(ancestor::node()|$scope) = count(ancestor::node())'> ]> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> @@ -57,6 +61,10 @@ match="indexterm" use="concat(&primary;, &sep;, &secondary;, &sep;, &tertiary;)"/> +<xsl:key name="endofrange" + match="indexterm[@class='endofrange']" + use="@startref"/> + <xsl:key name="primary-section" match="indexterm[not(secondary) and not(see)]" use="concat(&primary;, &sep;, §ion.id;)"/> @@ -80,12 +88,19 @@ <xsl:key name="sections" match="*[@id]" use="@id"/> <xsl:template name="generate-index"> - <xsl:variable name="terms" select="//indexterm[count(.|key('letter', - translate(substring(&primary;, 1, 1),&lowercase;,&uppercase;))[1]) = 1]"/> + <xsl:param name="scope" select="(ancestor::book|/)[last()]"/> + + <xsl:variable name="terms" + select="//indexterm[count(.|key('letter', + translate(substring(&primary;, 1, 1), + &lowercase;, + &uppercase;))[&scope;][1]) = 1 + and not(@class = 'endofrange')]"/> <xsl:variable name="alphabetical" select="$terms[contains(concat(&lowercase;, &uppercase;), substring(&primary;, 1, 1))]"/> + <xsl:variable name="others" select="$terms[not(contains(concat(&lowercase;, &uppercase;), substring(&primary;, 1, 1)))]"/> @@ -99,59 +114,99 @@ </h3> <dl> <xsl:apply-templates select="$others[count(.|key('primary', - &primary;)[1]) = 1]" - mode="index-primary"> - <xsl:sort select="&primary;"/> + &primary;)[&scope;][1]) = 1]" + mode="index-symbol-div"> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(&primary;, &lowercase;, &uppercase;)"/> </xsl:apply-templates> </dl> </div> </xsl:if> + <xsl:apply-templates select="$alphabetical[count(.|key('letter', - translate(substring(&primary;, 1, 1),&lowercase;,&uppercase;))[1]) = 1]" + translate(substring(&primary;, 1, 1), + &lowercase;,&uppercase;))[&scope;][1]) = 1]" mode="index-div"> - <xsl:sort select="&primary;"/> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(&primary;, &lowercase;, &uppercase;)"/> </xsl:apply-templates> </div> </xsl:template> <xsl:template match="indexterm" mode="index-div"> - <xsl:variable name="key" select="translate(substring(&primary;, 1, 1),&lowercase;,&uppercase;)"/> - <div class="indexdiv"> - <h3> - <xsl:value-of select="translate($key, &lowercase;, &uppercase;)"/> - </h3> - <dl> - <xsl:apply-templates select="key('letter', $key)[count(.|key('primary', &primary;)[1]) = 1]" - mode="index-primary"> - <xsl:sort select="&primary;"/> - </xsl:apply-templates> - </dl> - </div> + <xsl:param name="scope" select="."/> + + <xsl:variable name="key" + select="translate(substring(&primary;, 1, 1),&lowercase;,&uppercase;)"/> + + <!-- Make sure that we don't generate a div if there are no terms in scope --> + <xsl:if test="key('letter', $key)[&scope;] + [count(.|key('primary', &primary;)[&scope;][1]) = 1]"> + <div class="indexdiv"> + <xsl:if test="contains(concat(&lowercase;, &uppercase;), $key)"> + <h3> + <xsl:value-of select="translate($key, &lowercase;, &uppercase;)"/> + </h3> + </xsl:if> + <dl> + <xsl:apply-templates select="key('letter', $key)[&scope;] + [count(.|key('primary', &primary;)[&scope;][1])=1]" + mode="index-primary"> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(&primary;, &lowercase;, &uppercase;)"/> + </xsl:apply-templates> + </dl> + </div> + </xsl:if> +</xsl:template> + +<xsl:template match="indexterm" mode="index-symbol-div"> + <xsl:param name="scope" select="/"/> + + <xsl:variable name="key" select="translate(substring(&primary;, 1, 1), + &lowercase;,&uppercase;)"/> + + <xsl:apply-templates select="key('letter', $key) + [count(.|key('primary', &primary;)[&scope;][1]) = 1]" + mode="index-primary"> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(&primary;, &lowercase;, &uppercase;)"/> + </xsl:apply-templates> </xsl:template> <xsl:template match="indexterm" mode="index-primary"> + <xsl:param name="scope" select="."/> + <xsl:variable name="key" select="&primary;"/> - <xsl:variable name="refs" select="key('primary', $key)"/> + <xsl:variable name="refs" select="key('primary', $key)[&scope;]"/> <dt> <xsl:value-of select="primary"/> - <xsl:for-each select="$refs[generate-id() = generate-id(key('primary-section', concat($key, &sep;, §ion.id;))[1])]"> - <xsl:apply-templates select="." mode="reference"/> + <xsl:for-each select="$refs[generate-id() = generate-id(key('primary-section', concat($key, &sep;, §ion.id;))[&scope;][1])]"> + <xsl:apply-templates select="." mode="reference"> + <xsl:with-param name="scope" select="$scope"/> + </xsl:apply-templates> </xsl:for-each> + + <xsl:if test="$refs[not(secondary)]/*[self::see]"> + <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see', concat(&primary;, &sep;, &sep;, &sep;, see))[&scope;][1])]" + mode="index-see"> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(see, &lowercase;, &uppercase;)"/> + </xsl:apply-templates> + </xsl:if> </dt> - <xsl:if test="$refs/secondary or $refs[not(secondary)]/*[self::see or self::seealso]"> + <xsl:if test="$refs/secondary or $refs[not(secondary)]/*[self::seealso]"> <dd> <dl> - <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see', concat(&primary;, &sep;, &sep;, &sep;, see))[1])]" - mode="index-see"> - <xsl:sort select="see"/> - </xsl:apply-templates> - <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see-also', concat(&primary;, &sep;, &sep;, &sep;, seealso))[1])]" + <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see-also', concat(&primary;, &sep;, &sep;, &sep;, seealso))[&scope;][1])]" mode="index-seealso"> - <xsl:sort select="seealso"/> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(seealso, &lowercase;, &uppercase;)"/> </xsl:apply-templates> - <xsl:apply-templates select="$refs[secondary and count(.|key('secondary', concat($key, &sep;, &secondary;))[1]) = 1]" + <xsl:apply-templates select="$refs[secondary and count(.|key('secondary', concat($key, &sep;, &secondary;))[&scope;][1]) = 1]" mode="index-secondary"> - <xsl:sort select="&secondary;"/> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(&secondary;, &lowercase;, &uppercase;)"/> </xsl:apply-templates> </dl> </dd> @@ -159,28 +214,38 @@ </xsl:template> <xsl:template match="indexterm" mode="index-secondary"> + <xsl:param name="scope" select="."/> + <xsl:variable name="key" select="concat(&primary;, &sep;, &secondary;)"/> - <xsl:variable name="refs" select="key('secondary', $key)"/> + <xsl:variable name="refs" select="key('secondary', $key)[&scope;]"/> <dt> <xsl:value-of select="secondary"/> - <xsl:for-each select="$refs[generate-id() = generate-id(key('secondary-section', concat($key, &sep;, §ion.id;))[1])]"> - <xsl:apply-templates select="." mode="reference"/> + <xsl:for-each select="$refs[generate-id() = generate-id(key('secondary-section', concat($key, &sep;, §ion.id;))[&scope;][1])]"> + <xsl:apply-templates select="." mode="reference"> + <xsl:with-param name="scope" select="$scope"/> + </xsl:apply-templates> </xsl:for-each> + + <xsl:if test="$refs[not(tertiary)]/*[self::see]"> + <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see', concat(&primary;, &sep;, &secondary;, &sep;, &sep;, see))[&scope;][1])]" + mode="index-see"> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(see, &lowercase;, &uppercase;)"/> + </xsl:apply-templates> + </xsl:if> </dt> - <xsl:if test="$refs/tertiary or $refs[not(tertiary)]/*[self::see or self::seealso]"> + <xsl:if test="$refs/tertiary or $refs[not(tertiary)]/*[self::seealso]"> <dd> <dl> - <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see', concat(&primary;, &sep;, &secondary;, &sep;, &sep;, see))[1])]" - mode="index-see"> - <xsl:sort select="see"/> - </xsl:apply-templates> - <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see-also', concat(&primary;, &sep;, &secondary;, &sep;, &sep;, seealso))[1])]" + <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see-also', concat(&primary;, &sep;, &secondary;, &sep;, &sep;, seealso))[&scope;][1])]" mode="index-seealso"> - <xsl:sort select="seealso"/> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(seealso, &lowercase;, &uppercase;)"/> </xsl:apply-templates> - <xsl:apply-templates select="$refs[tertiary and count(.|key('tertiary', concat($key, &sep;, &tertiary;))[1]) = 1]" + <xsl:apply-templates select="$refs[tertiary and count(.|key('tertiary', concat($key, &sep;, &tertiary;))[&scope;][1]) = 1]" mode="index-tertiary"> - <xsl:sort select="&tertiary;"/> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(&tertiary;, &lowercase;, &uppercase;)"/> </xsl:apply-templates> </dl> </dd> @@ -188,25 +253,38 @@ </xsl:template> <xsl:template match="indexterm" mode="index-tertiary"> + <xsl:param name="scope" select="."/> + <xsl:variable name="key" select="concat(&primary;, &sep;, &secondary;, &sep;, &tertiary;)"/> - <xsl:variable name="refs" select="key('tertiary', $key)"/> + <xsl:variable name="refs" select="key('tertiary', $key)[&scope;]"/> <dt> <xsl:value-of select="tertiary"/> - <xsl:for-each select="$refs[generate-id() = generate-id(key('tertiary-section', concat($key, &sep;, §ion.id;))[1])]"> - <xsl:apply-templates select="." mode="reference"/> + <xsl:for-each select="$refs[generate-id() = generate-id(key('tertiary-section', concat($key, &sep;, §ion.id;))[&scope;][1])]"> + <xsl:apply-templates select="." mode="reference"> + <xsl:with-param name="scope" select="$scope"/> + </xsl:apply-templates> </xsl:for-each> + + <xsl:if test="$refs/see"> + <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see', concat(&primary;, &sep;, &secondary;, &sep;, &tertiary;, &sep;, see))[&scope;][1])]" + mode="index-see"> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(see, &lowercase;, &uppercase;)"/> + </xsl:apply-templates> + </xsl:if> </dt> - <xsl:variable name="see" select="$refs/see | $refs/seealso"/> - <xsl:if test="$see"> + <xsl:if test="$refs/seealso"> <dd> <dl> - <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see', concat(&primary;, &sep;, &secondary;, &sep;, &tertiary;, &sep;, see))[1])]" + <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see', concat(&primary;, &sep;, &secondary;, &sep;, &tertiary;, &sep;, see))[&scope;][1])]" mode="index-see"> - <xsl:sort select="see"/> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(see, &lowercase;, &uppercase;)"/> </xsl:apply-templates> - <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see-also', concat(&primary;, &sep;, &secondary;, &sep;, &tertiary;, &sep;, seealso))[1])]" + <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see-also', concat(&primary;, &sep;, &secondary;, &sep;, &tertiary;, &sep;, seealso))[&scope;][1])]" mode="index-seealso"> - <xsl:sort select="seealso"/> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(seealso, &lowercase;, &uppercase;)"/> </xsl:apply-templates> </dl> </dd> @@ -214,11 +292,15 @@ </xsl:template> <xsl:template match="indexterm" mode="reference"> - <xsl:text>, </xsl:text> + <xsl:param name="scope" select="."/> + <xsl:param name="separator" select="', '"/> + + <xsl:value-of select="$separator"/> <xsl:choose> <xsl:when test="@zone and string(@zone)"> <xsl:call-template name="reference"> <xsl:with-param name="zones" select="normalize-space(@zone)"/> + <xsl:with-param name="scope" select="$scope"/> </xsl:call-template> </xsl:when> <xsl:otherwise> @@ -235,16 +317,26 @@ <xsl:value-of select="$title"/> <!-- text only --> </a> + + <xsl:if test="key('endofrange', @id)[&scope;]"> + <xsl:apply-templates select="key('endofrange', @id)[&scope;][last()]" + mode="reference"> + <xsl:with-param name="scope" select="$scope"/> + <xsl:with-param name="separator" select="'-'"/> + </xsl:apply-templates> + </xsl:if> </xsl:otherwise> </xsl:choose> </xsl:template> <xsl:template name="reference"> + <xsl:param name="scope" select="."/> <xsl:param name="zones"/> + <xsl:choose> <xsl:when test="contains($zones, ' ')"> <xsl:variable name="zone" select="substring-before($zones, ' ')"/> - <xsl:variable name="target" select="key('sections', $zone)"/> + <xsl:variable name="target" select="key('sections', $zone)[&scope;]"/> <a> <xsl:attribute name="href"> @@ -257,11 +349,12 @@ <xsl:text>, </xsl:text> <xsl:call-template name="reference"> <xsl:with-param name="zones" select="substring-after($zones, ' ')"/> + <xsl:with-param name="scope" select="$scope"/> </xsl:call-template> </xsl:when> <xsl:otherwise> <xsl:variable name="zone" select="$zones"/> - <xsl:variable name="target" select="key('sections', $zone)"/> + <xsl:variable name="target" select="key('sections', $zone)[&scope;]"/> <a> <xsl:attribute name="href"> @@ -276,11 +369,29 @@ </xsl:template> <xsl:template match="indexterm" mode="index-see"> - <dt><xsl:value-of select="see"/></dt> + <xsl:param name="scope" select="."/> + + <xsl:text> (</xsl:text> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'see'"/> + </xsl:call-template> + <xsl:text> </xsl:text> + <xsl:value-of select="see"/> + <xsl:text>)</xsl:text> </xsl:template> <xsl:template match="indexterm" mode="index-seealso"> - <dt><xsl:value-of select="seealso"/></dt> + <xsl:param name="scope" select="."/> + + <dt> + <xsl:text>(</xsl:text> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'seealso'"/> + </xsl:call-template> + <xsl:text> </xsl:text> + <xsl:value-of select="seealso"/> + <xsl:text>)</xsl:text> + </dt> </xsl:template> <xsl:template match="*" mode="index-title-content"> Index: phpdoc/xsl/docbook/html/autotoc.xsl diff -u phpdoc/xsl/docbook/html/autotoc.xsl:1.1 phpdoc/xsl/docbook/html/autotoc.xsl:1.2 --- phpdoc/xsl/docbook/html/autotoc.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/autotoc.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: autotoc.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: autotoc.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -27,17 +27,21 @@ </xsl:choose> </xsl:variable> -<xsl:template name="set.toc"> +<xsl:template name="make.toc"> <xsl:param name="toc-context" select="."/> + <xsl:param name="toc.title.p" select="true()"/> + <xsl:param name="nodes" select="/NOT-AN-ELEMENT"/> <xsl:variable name="toc.title"> - <p> - <b> - <xsl:call-template name="gentext"> - <xsl:with-param name="key">TableofContents</xsl:with-param> - </xsl:call-template> - </b> - </p> + <xsl:if test="$toc.title.p"> + <p> + <b> + <xsl:call-template name="gentext"> + <xsl:with-param name="key">TableofContents</xsl:with-param> + </xsl:call-template> + </b> + </p> + </xsl:if> </xsl:variable> <xsl:choose> @@ -59,8 +63,6 @@ </xsl:if> </xsl:when> <xsl:otherwise> - <xsl:variable name="nodes" select="book|setindex"/> - <xsl:if test="$nodes"> <div class="toc"> <xsl:copy-of select="$toc.title"/> @@ -75,157 +77,116 @@ </xsl:choose> </xsl:template> -<xsl:template name="division.toc"> +<xsl:template name="make.lots"> + <xsl:param name="toc.params" select="''"/> + <xsl:param name="toc"/> + + <xsl:if test="contains($toc.params, 'toc')"> + <xsl:copy-of select="$toc"/> + </xsl:if> + + <xsl:if test="contains($toc.params, 'figure')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'figure'"/> + <xsl:with-param name="nodes" select=".//figure"/> + </xsl:call-template> + </xsl:if> + + <xsl:if test="contains($toc.params, 'table')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'table'"/> + <xsl:with-param name="nodes" select=".//table"/> + </xsl:call-template> + </xsl:if> + + <xsl:if test="contains($toc.params, 'example')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'example'"/> + <xsl:with-param name="nodes" select=".//example"/> + </xsl:call-template> + </xsl:if> + + <xsl:if test="contains($toc.params, 'equation')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'equation'"/> + <xsl:with-param name="nodes" select=".//equation[title]"/> + </xsl:call-template> + </xsl:if> + + <xsl:if test="contains($toc.params, 'procedure')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'procedure'"/> + <xsl:with-param name="nodes" select=".//procedure[title]"/> + </xsl:call-template> + </xsl:if> +</xsl:template> + +<!-- ====================================================================== --> + +<xsl:template name="set.toc"> <xsl:param name="toc-context" select="."/> - <xsl:variable name="toc.title"> - <p> - <b> - <xsl:call-template name="gentext"> - <xsl:with-param name="key">TableofContents</xsl:with-param> - </xsl:call-template> - </b> - </p> - </xsl:variable> + <xsl:call-template name="make.toc"> + <xsl:with-param name="toc-context" select="$toc-context"/> + <xsl:with-param name="nodes" select="book|setindex"/> + </xsl:call-template> +</xsl:template> - <xsl:choose> - <xsl:when test="$manual.toc != ''"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - <xsl:variable name="toc" select="document($manual.toc, .)"/> - <xsl:variable name="tocentry" select="$toc//tocentry[@linkend=$id]"/> - <xsl:if test="$tocentry and $tocentry/*"> - <div class="toc"> - <xsl:copy-of select="$toc.title"/> - <xsl:element name="{$toc.list.type}"> - <xsl:call-template name="manual-toc"> - <xsl:with-param name="tocentry" select="$tocentry/*[1]"/> - </xsl:call-template> - </xsl:element> - </div> - </xsl:if> - </xsl:when> - <xsl:otherwise> - <xsl:variable name="nodes" select="part|reference +<xsl:template name="division.toc"> + <xsl:param name="toc-context" select="."/> + + <xsl:call-template name="make.toc"> + <xsl:with-param name="toc-context" select="$toc-context"/> + <xsl:with-param name="nodes" select="part|reference |preface|chapter|appendix |article |bibliography|glossary|index |refentry - |bridgehead"/> - <xsl:if test="$nodes"> - <div class="toc"> - <xsl:copy-of select="$toc.title"/> - <xsl:element name="{$toc.list.type}"> - <xsl:apply-templates select="$nodes" mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </xsl:element> - </div> - </xsl:if> - </xsl:otherwise> - </xsl:choose> + |bridgehead[$bridgehead.in.toc != 0]"/> + + </xsl:call-template> </xsl:template> <xsl:template name="component.toc"> <xsl:param name="toc-context" select="."/> + <xsl:param name="toc.title.p" select="true()"/> - <xsl:variable name="toc.title"> - <p> - <b> - <xsl:call-template name="gentext"> - <xsl:with-param name="key">TableofContents</xsl:with-param> - </xsl:call-template> - </b> - </p> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$manual.toc != ''"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - <xsl:variable name="toc" select="document($manual.toc, .)"/> - <xsl:variable name="tocentry" select="$toc//tocentry[@linkend=$id]"/> - <xsl:if test="$tocentry and $tocentry/*"> - <div class="toc"> - <xsl:copy-of select="$toc.title"/> - <xsl:element name="{$toc.list.type}"> - <xsl:call-template name="manual-toc"> - <xsl:with-param name="tocentry" select="$tocentry/*[1]"/> - </xsl:call-template> - </xsl:element> - </div> - </xsl:if> - </xsl:when> - <xsl:otherwise> - <xsl:variable name="nodes" select="section|sect1|refentry + <xsl:call-template name="make.toc"> + <xsl:with-param name="toc-context" select="$toc-context"/> + <xsl:with-param name="toc.title.p" select="$toc.title.p"/> + <xsl:with-param name="nodes" select="section|sect1|refentry |article|bibliography|glossary - |appendix|bridgehead[not(@renderas)] - |.//bridgehead[@renderas='sect1']"/> - <xsl:if test="$nodes"> - <div class="toc"> - <xsl:copy-of select="$toc.title"/> - <xsl:element name="{$toc.list.type}"> - <xsl:apply-templates select="$nodes" mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </xsl:element> - </div> - </xsl:if> - </xsl:otherwise> - </xsl:choose> + |appendix + |bridgehead[not(@renderas) + and $bridgehead.in.toc != 0] + |.//bridgehead[@renderas='sect1' + and $bridgehead.in.toc != 0]"/> + </xsl:call-template> +</xsl:template> + +<xsl:template name="component.toc.separator"> + <!-- Customize to output something between + component.toc and first output --> </xsl:template> <xsl:template name="section.toc"> <xsl:param name="toc-context" select="."/> + <xsl:param name="toc.title.p" select="true()"/> - <xsl:variable name="toc.title"> - <p> - <b> - <xsl:call-template name="gentext"> - <xsl:with-param name="key">TableofContents</xsl:with-param> - </xsl:call-template> - </b> - </p> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$manual.toc != ''"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - <xsl:variable name="toc" select="document($manual.toc, .)"/> - <xsl:variable name="tocentry" select="$toc//tocentry[@linkend=$id]"/> - <xsl:if test="$tocentry and $tocentry/*"> - <div class="toc"> - <xsl:copy-of select="$toc.title"/> - <xsl:element name="{$toc.list.type}"> - <xsl:call-template name="manual-toc"> - <xsl:with-param name="tocentry" select="$tocentry/*[1]"/> - </xsl:call-template> - </xsl:element> - </div> - </xsl:if> - </xsl:when> - <xsl:otherwise> - <xsl:variable name="nodes" + <xsl:call-template name="make.toc"> + <xsl:with-param name="toc-context" select="$toc-context"/> + <xsl:with-param name="toc.title.p" select="$toc.title.p"/> + <xsl:with-param name="nodes" select="section|sect1|sect2|sect3|sect4|sect5|refentry - |bridgehead"/> - <xsl:if test="$nodes"> - <div class="toc"> - <xsl:copy-of select="$toc.title"/> - <xsl:element name="{$toc.list.type}"> - <xsl:apply-templates select="$nodes" mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </xsl:element> - </div> - </xsl:if> - </xsl:otherwise> - </xsl:choose> + |bridgehead[$bridgehead.in.toc != 0]"/> + + </xsl:call-template> </xsl:template> +<xsl:template name="section.toc.separator"> + <!-- Customize to output something between + section.toc and first output --> +</xsl:template> <!-- ==================================================================== --> <xsl:template name="subtoc"> @@ -274,6 +235,8 @@ </xsl:choose> </xsl:variable> + <xsl:variable name="depth.from.context" select="count(ancestor::*)-count($toc-context/ancestor::*)"/> + <xsl:variable name="subtoc.list"> <xsl:choose> <xsl:when test="$toc.dd.type = ''"> @@ -305,12 +268,14 @@ <xsl:apply-templates select="." mode="title.markup"/> </a> <xsl:if test="$toc.listitem.type = 'li' - and $toc.section.depth > $depth and count($nodes)>0"> + and $toc.section.depth > $depth and count($nodes)>0 + and $toc.max.depth > $depth.from.context"> <xsl:copy-of select="$subtoc.list"/> </xsl:if> </xsl:element> <xsl:if test="$toc.listitem.type != 'li' - and $toc.section.depth > $depth and count($nodes)>0"> + and $toc.section.depth > $depth and count($nodes)>0 + and $toc.max.depth > $depth.from.context"> <xsl:copy-of select="$subtoc.list"/> </xsl:if> </xsl:template> @@ -325,7 +290,7 @@ |article |bibliography|glossary|index |refentry - |bridgehead"/> + |bridgehead[$bridgehead.in.toc != 0]"/> </xsl:call-template> </xsl:template> @@ -337,7 +302,7 @@ <xsl:with-param name="nodes" select="appendix|chapter|article |index|glossary|bibliography |preface|reference|refentry - |bridgehead"/> + |bridgehead[$bridgehead.in.toc != 0]"/> </xsl:call-template> </xsl:template> @@ -346,7 +311,8 @@ <xsl:call-template name="subtoc"> <xsl:with-param name="toc-context" select="$toc-context"/> - <xsl:with-param name="nodes" select="section|sect1|bridgehead"/> + <xsl:with-param name="nodes" select="section|sect1 + |bridgehead[$bridgehead.in.toc != 0]"/> </xsl:call-template> </xsl:template> @@ -354,7 +320,8 @@ <xsl:param name="toc-context" select="."/> <xsl:call-template name="subtoc"> <xsl:with-param name="toc-context" select="$toc-context"/> - <xsl:with-param name="nodes" select="sect2|bridgehead"/> + <xsl:with-param name="nodes" select="sect2 + |bridgehead[$bridgehead.in.toc != 0]"/> </xsl:call-template> </xsl:template> @@ -363,7 +330,8 @@ <xsl:call-template name="subtoc"> <xsl:with-param name="toc-context" select="$toc-context"/> - <xsl:with-param name="nodes" select="sect3|bridgehead"/> + <xsl:with-param name="nodes" select="sect3 + |bridgehead[$bridgehead.in.toc != 0]"/> </xsl:call-template> </xsl:template> @@ -372,7 +340,8 @@ <xsl:call-template name="subtoc"> <xsl:with-param name="toc-context" select="$toc-context"/> - <xsl:with-param name="nodes" select="sect4|bridgehead"/> + <xsl:with-param name="nodes" select="sect4 + |bridgehead[$bridgehead.in.toc != 0]"/> </xsl:call-template> </xsl:template> @@ -381,7 +350,8 @@ <xsl:call-template name="subtoc"> <xsl:with-param name="toc-context" select="$toc-context"/> - <xsl:with-param name="nodes" select="sect5|bridgehead"/> + <xsl:with-param name="nodes" select="sect5 + |bridgehead[$bridgehead.in.toc != 0]"/> </xsl:call-template> </xsl:template> @@ -398,7 +368,8 @@ <xsl:call-template name="subtoc"> <xsl:with-param name="toc-context" select="$toc-context"/> - <xsl:with-param name="nodes" select="section|bridgehead"/> + <xsl:with-param name="nodes" select="section + |bridgehead[$bridgehead.in.toc != 0]"/> </xsl:call-template> </xsl:template> @@ -538,7 +509,8 @@ <xsl:when test="$titles='figure'">ListofFigures</xsl:when> <xsl:when test="$titles='equation'">ListofEquations</xsl:when> <xsl:when test="$titles='example'">ListofExamples</xsl:when> - <xsl:otherwise>ListofUnknowns</xsl:otherwise> + <xsl:when test="$titles='procedure'">ListofProcedures</xsl:when> + <xsl:otherwise>ListofUnknown</xsl:otherwise> </xsl:choose> </xsl:with-param> </xsl:call-template> @@ -554,7 +526,7 @@ </xsl:if> </xsl:template> -<xsl:template match="figure|table|example|equation" mode="toc"> +<xsl:template match="figure|table|example|equation|procedure" mode="toc"> <xsl:param name="toc-context" select="."/> <xsl:element name="{$toc.listitem.type}"> Index: phpdoc/xsl/docbook/html/biblio.xsl diff -u phpdoc/xsl/docbook/html/biblio.xsl:1.1 phpdoc/xsl/docbook/html/biblio.xsl:1.2 --- phpdoc/xsl/docbook/html/biblio.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/biblio.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: biblio.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: biblio.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -26,7 +26,9 @@ <xsl:apply-templates/> - <xsl:call-template name="process.footnotes"/> + <xsl:if test="not(parent::article)"> + <xsl:call-template name="process.footnotes"/> + </xsl:if> </div> </xsl:template> @@ -162,16 +164,30 @@ <xsl:template name="biblioentry.label"> <xsl:param name="node" select="."/> - <xsl:text>[</xsl:text> <xsl:choose> + <xsl:when test="$bibliography.numbered != 0"> + <xsl:text>[</xsl:text> + <xsl:number from="bibliography" count="biblioentry|bibliomixed" + level="any" format="1"/> + <xsl:text>] </xsl:text> + </xsl:when> <xsl:when test="local-name($node/child::*[1]) = 'abbrev'"> + <xsl:text>[</xsl:text> <xsl:apply-templates select="$node/abbrev[1]"/> + <xsl:text>] </xsl:text> </xsl:when> - <xsl:otherwise> + <xsl:when test="$node/@xreflabel"> + <xsl:text>[</xsl:text> + <xsl:value-of select="$node/@xreflabel"/> + <xsl:text>] </xsl:text> + </xsl:when> + <xsl:when test="$node/@id"> + <xsl:text>[</xsl:text> <xsl:value-of select="$node/@id"/> - </xsl:otherwise> + <xsl:text>] </xsl:text> + </xsl:when> + <xsl:otherwise><!-- nop --></xsl:otherwise> </xsl:choose> - <xsl:text>] </xsl:text> </xsl:template> <!-- ==================================================================== --> @@ -662,6 +678,14 @@ </span> </xsl:template> +<xsl:template match="bibliocoverage|biblioid|bibliorelation|bibliosource" + mode="bibliography.mode"> + <span class="{name(.)}"> + <xsl:apply-templates mode="bibliography.mode"/> + <xsl:value-of select="$biblioentry.item.separator"/> + </span> +</xsl:template> + <!-- ==================================================================== --> <xsl:template match="*" mode="bibliomixed.mode"> @@ -1014,6 +1038,13 @@ </xsl:template> <xsl:template match="volumenum" mode="bibliomixed.mode"> + <span class="{name(.)}"> + <xsl:apply-templates mode="bibliomixed.mode"/> + </span> +</xsl:template> + +<xsl:template match="bibliocoverage|biblioid|bibliorelation|bibliosource" + mode="bibliomixed.mode"> <span class="{name(.)}"> <xsl:apply-templates mode="bibliomixed.mode"/> </span> Index: phpdoc/xsl/docbook/html/block.xsl diff -u phpdoc/xsl/docbook/html/block.xsl:1.1 phpdoc/xsl/docbook/html/block.xsl:1.2 --- phpdoc/xsl/docbook/html/block.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/block.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: block.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: block.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -24,8 +24,13 @@ <!-- ==================================================================== --> <xsl:template match="para"> - <xsl:variable name="p"> - <p> + <xsl:call-template name="paragraph"> + <xsl:with-param name="class"> + <xsl:if test="@role and $para.propagates.style != 0"> + <xsl:value-of select="@role"/> + </xsl:if> + </xsl:with-param> + <xsl:with-param name="content"> <xsl:if test="position() = 1 and parent::listitem"> <xsl:call-template name="anchor"> <xsl:with-param name="node" select="parent::listitem"/> @@ -34,6 +39,22 @@ <xsl:call-template name="anchor"/> <xsl:apply-templates/> + </xsl:with-param> + </xsl:call-template> +</xsl:template> + +<xsl:template name="paragraph"> + <xsl:param name="class" select="''"/> + <xsl:param name="content"/> + + <xsl:variable name="p"> + <p> + <xsl:if test="$class != ''"> + <xsl:attribute name="class"> + <xsl:value-of select="$class"/> + </xsl:attribute> + </xsl:if> + <xsl:copy-of select="$content"/> </p> </xsl:variable> @@ -52,16 +73,29 @@ <xsl:template match="simpara"> <!-- see also listitem/simpara in lists.xsl --> <p> + <xsl:if test="@role and $para.propagates.style != 0"> + <xsl:attribute name="class"> + <xsl:value-of select="@role"/> + </xsl:attribute> + </xsl:if> + <xsl:call-template name="anchor"/> <xsl:apply-templates/> </p> </xsl:template> <xsl:template match="formalpara"> - <p> - <xsl:call-template name="anchor"/> - <xsl:apply-templates/> - </p> + <xsl:call-template name="paragraph"> + <xsl:with-param name="class"> + <xsl:if test="@role and $para.propagates.style != 0"> + <xsl:value-of select="@role"/> + </xsl:if> + </xsl:with-param> + <xsl:with-param name="content"> + <xsl:call-template name="anchor"/> + <xsl:apply-templates/> + </xsl:with-param> + </xsl:call-template> </xsl:template> <xsl:template match="formalpara/title"> @@ -89,35 +123,40 @@ <!-- ==================================================================== --> <xsl:template match="blockquote"> - <xsl:call-template name="anchor"/> - <xsl:choose> - <xsl:when test="attribution"> - <table border="0" width="100%" - cellspacing="0" cellpadding="0" class="blockquote" - summary="Block quote"> - <tr> - <td width="10%" valign="top"> </td> - <td width="80%" valign="top"> - <xsl:apply-templates - select="child::*[local-name(.)!='attribution']"/> - </td> - <td width="10%" valign="top"> </td> - </tr> - <tr> - <td colspan="2" align="right" valign="top"> - <xsl:text>--</xsl:text> - <xsl:apply-templates select="attribution"/> - </td> - <td width="10%" valign="top"> </td> - </tr> - </table> - </xsl:when> - <xsl:otherwise> - <blockquote class="blockquote"> - <xsl:apply-templates/> - </blockquote> - </xsl:otherwise> - </xsl:choose> + <div class="{local-name(.)}"> + <xsl:if test="@lang or @xml:lang"> + <xsl:call-template name="language.attribute"/> + </xsl:if> + <xsl:call-template name="anchor"/> + + <xsl:choose> + <xsl:when test="attribution"> + <table border="0" width="100%" + cellspacing="0" cellpadding="0" class="blockquote" + summary="Block quote"> + <tr> + <td width="10%" valign="top"> </td> + <td width="80%" valign="top"> + <xsl:apply-templates select="child::*[local-name(.)!='attribution']"/> + </td> + <td width="10%" valign="top"> </td> + </tr> + <tr> + <td colspan="2" align="right" valign="top"> + <xsl:text>--</xsl:text> + <xsl:apply-templates select="attribution"/> + </td> + <td width="10%" valign="top"> </td> + </tr> + </table> + </xsl:when> + <xsl:otherwise> + <blockquote class="{local-name(.)}"> + <xsl:apply-templates/> + </blockquote> + </xsl:otherwise> + </xsl:choose> + </div> </xsl:template> <xsl:template match="blockquote/title"> @@ -132,7 +171,7 @@ <xsl:template match="epigraph"> <div class="{name(.)}"> - <xsl:apply-templates select="para"/> + <xsl:apply-templates select="para|simpara|formalpara|literallayout"/> <span>--<xsl:apply-templates select="attribution"/></span> </div> </xsl:template> @@ -292,7 +331,7 @@ <xsl:variable name="revnumber" select=".//revnumber"/> <xsl:variable name="revdate" select=".//date"/> <xsl:variable name="revauthor" select=".//authorinitials"/> - <xsl:variable name="revremark" select=".//revremark|../revdescription"/> + <xsl:variable name="revremark" select=".//revremark|.//revdescription"/> <tr> <td align="left"> <xsl:if test="$revnumber"> Index: phpdoc/xsl/docbook/html/callout.xsl diff -u phpdoc/xsl/docbook/html/callout.xsl:1.1 phpdoc/xsl/docbook/html/callout.xsl:1.2 --- phpdoc/xsl/docbook/html/callout.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/callout.xsl Sun Mar 9 09:56:38 2003 @@ -7,7 +7,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: callout.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: callout.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -112,9 +112,6 @@ </xsl:otherwise> </xsl:choose> </xsl:template> - - - <xsl:template match="co" mode="callout-bug"> <xsl:call-template name="callout-bug"> Index: phpdoc/xsl/docbook/html/changebars.xsl diff -u phpdoc/xsl/docbook/html/changebars.xsl:1.1 phpdoc/xsl/docbook/html/changebars.xsl:1.2 --- phpdoc/xsl/docbook/html/changebars.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/changebars.xsl Sun Mar 9 09:56:38 2003 @@ -6,19 +6,19 @@ <xsl:param name="show.revisionflag" select="'1'"/> -<xsl:template name="user.head.content"> +<xsl:template name="system.head.content"> <style type="text/css"> <xsl:text> -div.added { background-color: yellow; } +div.added { background-color: #ffff99; } div.deleted { text-decoration: line-through; background-color: #FF7F7F; } -div.changed { background-color: lime; } +div.changed { background-color: #99ff99; } div.off { } -span.added { background-color: yellow; } +span.added { background-color: #ffff99; } span.deleted { text-decoration: line-through; background-color: #FF7F7F; } -span.changed { background-color: lime; } +span.changed { background-color: #99ff99; } span.off { } </xsl:text> </style> Index: phpdoc/xsl/docbook/html/chunk-common.xsl diff -u phpdoc/xsl/docbook/html/chunk-common.xsl:1.1 phpdoc/xsl/docbook/html/chunk-common.xsl:1.2 --- phpdoc/xsl/docbook/html/chunk-common.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/chunk-common.xsl Sun Mar 9 09:56:38 2003 @@ -89,7 +89,7 @@ </xsl:call-template> </xsl:when> <xsl:when test="local-name($node) = 'section' - and $chunk.section.depth >= count(ancestor::section)+1 + and $chunk.section.depth >= count($node/ancestor::section)+1 and ($chunk.first.sections != 0 or count($node/preceding-sibling::section) > 0)"> <xsl:call-template name="chunk"> @@ -124,15 +124,22 @@ <!-- ==================================================================== --> <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:if test="$fn != ''"> + <xsl:if test="$ischunk != 0 and $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"> @@ -186,14 +193,14 @@ <xsl:value-of select="$filename"/> </xsl:when> - <xsl:when test="name(.)='set'"> + <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="name(.)='book'"> + <xsl:when test="self::book"> <xsl:text>bk</xsl:text> <xsl:number level="any" format="01"/> <xsl:if test="not($recursive)"> @@ -201,7 +208,7 @@ </xsl:if> </xsl:when> - <xsl:when test="name(.)='article'"> + <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::*"> @@ -216,7 +223,7 @@ </xsl:if> </xsl:when> - <xsl:when test="name(.)='preface'"> + <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::*"> @@ -231,7 +238,7 @@ </xsl:if> </xsl:when> - <xsl:when test="name(.)='chapter'"> + <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::*"> @@ -246,7 +253,7 @@ </xsl:if> </xsl:when> - <xsl:when test="name(.)='appendix'"> + <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::*"> @@ -261,7 +268,7 @@ </xsl:if> </xsl:when> - <xsl:when test="name(.)='part'"> + <xsl:when test="self::part"> <xsl:choose> <xsl:when test="/set"> <!-- in a set, make sure we inherit the right book info... --> @@ -280,7 +287,7 @@ </xsl:if> </xsl:when> - <xsl:when test="name(.)='reference'"> + <xsl:when test="self::reference"> <xsl:choose> <xsl:when test="/set"> <!-- in a set, make sure we inherit the right book info... --> @@ -299,7 +306,7 @@ </xsl:if> </xsl:when> - <xsl:when test="name(.)='refentry'"> + <xsl:when test="self::refentry"> <xsl:choose> <xsl:when test="parent::reference"> <xsl:apply-templates mode="recursive-chunk-filename" select="parent::*"> @@ -317,7 +324,7 @@ </xsl:if> </xsl:when> - <xsl:when test="name(.)='colophon'"> + <xsl:when test="self::colophon"> <xsl:choose> <xsl:when test="/set"> <!-- in a set, make sure we inherit the right book info... --> @@ -336,12 +343,12 @@ </xsl:if> </xsl:when> - <xsl:when test="local-name(.) = 'sect1' - or local-name(.) = 'sect2' - or local-name(.) = 'sect3' - or local-name(.) = 'sect4' - or local-name(.) = 'sect5' - or local-name(.) = 'section'"> + <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> @@ -352,18 +359,7 @@ </xsl:if> </xsl:when> - <xsl:when test="name(.)='sect1' or name(.)='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 level="any" format="01" from="preface|chapter|appendix"/> - <xsl:if test="not($recursive)"> - <xsl:value-of select="$html.ext"/> - </xsl:if> - </xsl:when> - - <xsl:when test="name(.)='bibliography'"> + <xsl:when test="self::bibliography"> <xsl:choose> <xsl:when test="/set"> <!-- in a set, make sure we inherit the right book info... --> @@ -382,7 +378,7 @@ </xsl:if> </xsl:when> - <xsl:when test="name(.)='glossary'"> + <xsl:when test="self::glossary"> <xsl:choose> <xsl:when test="/set"> <!-- in a set, make sure we inherit the right book info... --> @@ -401,7 +397,7 @@ </xsl:if> </xsl:when> - <xsl:when test="name(.)='index'"> + <xsl:when test="self::index"> <xsl:choose> <xsl:when test="/set"> <!-- in a set, make sure we inherit the right book info... --> @@ -420,7 +416,7 @@ </xsl:if> </xsl:when> - <xsl:when test="name(.)='setindex'"> + <xsl:when test="self::setindex"> <xsl:text>si</xsl:text> <xsl:number level="any" format="01" from="set"/> <xsl:if test="not($recursive)"> @@ -533,6 +529,7 @@ <xsl:variable name="up" select="parent::*"/> <head> + <xsl:call-template name="system.head.content"/> <xsl:call-template name="head.content"/> <xsl:call-template name="user.head.content"/> @@ -659,61 +656,79 @@ <xsl:template name="header.navigation"> <xsl:param name="prev" select="/foo"/> <xsl:param name="next" select="/foo"/> + <xsl:param name="nav.context"/> + <xsl:variable name="home" select="/*[1]"/> <xsl:variable name="up" select="parent::*"/> - <xsl:if test="$suppress.navigation = '0'"> + <xsl:variable name="row1" select="$navig.showtitles != 0"/> + <xsl:variable name="row2" select="count($prev) > 0 + or (count($up) > 0 + and $up != $home + and $navig.showtitles != 0) + or count($next) > 0"/> + + <xsl:if test="$suppress.navigation = '0' and $suppress.header.navigation = '0'"> <div class="navheader"> - <table width="100%" summary="Navigation header"> - <xsl:if test="$navig.showtitles != 0"> - <tr> - <th colspan="3" align="center"> - <xsl:apply-templates select="." mode="object.title.markup"/> - </th> - </tr> - </xsl:if> - <tr> - <td width="20%" align="left"> - <xsl:if test="count($prev)>0"> - <a accesskey="p"> - <xsl:attribute name="href"> - <xsl:call-template name="href.target"> - <xsl:with-param name="object" select="$prev"/> - </xsl:call-template> - </xsl:attribute> - <xsl:call-template name="navig.content"> - <xsl:with-param name="direction" select="'prev'"/> - </xsl:call-template> - </a> - </xsl:if> - <xsl:text> </xsl:text> - </td> - <th width="60%" align="center"> - <xsl:choose> - <xsl:when test="count($up) > 0 and $up != $home and $navig.showtitles != 0"> - <xsl:apply-templates select="$up" mode="object.title.markup"/> - </xsl:when> - <xsl:otherwise> </xsl:otherwise> - </xsl:choose> - </th> - <td width="20%" align="right"> - <xsl:text> </xsl:text> - <xsl:if test="count($next)>0"> - <a accesskey="n"> - <xsl:attribute name="href"> - <xsl:call-template name="href.target"> - <xsl:with-param name="object" select="$next"/> - </xsl:call-template> - </xsl:attribute> - <xsl:call-template name="navig.content"> - <xsl:with-param name="direction" select="'next'"/> - </xsl:call-template> - </a> - </xsl:if> - </td> - </tr> - </table> - <hr/> + <xsl:if test="$row1 or $row2"> + <table width="100%" summary="Navigation header"> + <xsl:if test="$row1"> + <tr> + <th colspan="3" align="center"> + <xsl:apply-templates select="." mode="object.title.markup"/> + </th> + </tr> + </xsl:if> + + <xsl:if test="$row2"> + <tr> + <td width="20%" align="left"> + <xsl:if test="count($prev)>0"> + <a accesskey="p"> + <xsl:attribute name="href"> + <xsl:call-template name="href.target"> + <xsl:with-param name="object" select="$prev"/> + </xsl:call-template> + </xsl:attribute> + <xsl:call-template name="navig.content"> + <xsl:with-param name="direction" select="'prev'"/> + </xsl:call-template> + </a> + </xsl:if> + <xsl:text> </xsl:text> + </td> + <th width="60%" align="center"> + <xsl:choose> + <xsl:when test="count($up) > 0 + and $up != $home + and $navig.showtitles != 0"> + <xsl:apply-templates select="$up" mode="object.title.markup"/> + </xsl:when> + <xsl:otherwise> </xsl:otherwise> + </xsl:choose> + </th> + <td width="20%" align="right"> + <xsl:text> </xsl:text> + <xsl:if test="count($next)>0"> + <a accesskey="n"> + <xsl:attribute name="href"> + <xsl:call-template name="href.target"> + <xsl:with-param name="object" select="$next"/> + </xsl:call-template> + </xsl:attribute> + <xsl:call-template name="navig.content"> + <xsl:with-param name="direction" select="'next'"/> + </xsl:call-template> + </a> + </xsl:if> + </td> + </tr> + </xsl:if> + </table> + </xsl:if> + <xsl:if test="$header.rule != 0"> + <hr/> + </xsl:if> </div> </xsl:if> </xsl:template> @@ -723,95 +738,133 @@ <xsl:template name="footer.navigation"> <xsl:param name="prev" select="/foo"/> <xsl:param name="next" select="/foo"/> + <xsl:param name="nav.context"/> + <xsl:variable name="home" select="/*[1]"/> <xsl:variable name="up" select="parent::*"/> - <xsl:if test="$suppress.navigation = '0'"> + <xsl:variable name="row1" select="count($prev) > 0 + or count($up) > 0 + or count($next) > 0"/> + + <xsl:variable name="row2" select="($prev and $navig.showtitles != 0) + or ($home != . or $nav.context = 'toc') + or ($chunk.tocs.and.lots != 0 + and $nav.context != 'toc') + or ($next and $navig.showtitles != 0)"/> + + <xsl:if test="$suppress.navigation = '0' and $suppress.footer.navigation = '0'"> <div class="navfooter"> - <hr/> - <table width="100%" summary="Navigation footer"> - <tr> - <td width="40%" align="left"> - <xsl:if test="count($prev)>0"> - <a accesskey="p"> - <xsl:attribute name="href"> - <xsl:call-template name="href.target"> - <xsl:with-param name="object" select="$prev"/> - </xsl:call-template> - </xsl:attribute> - <xsl:call-template name="navig.content"> - <xsl:with-param name="direction" select="'prev'"/> - </xsl:call-template> - </a> - </xsl:if> - <xsl:text> </xsl:text> - </td> - <td width="20%" align="center"> - <xsl:choose> - <xsl:when test="count($up)>0"> - <a accesskey="u"> - <xsl:attribute name="href"> - <xsl:call-template name="href.target"> - <xsl:with-param name="object" select="$up"/> + <xsl:if test="$footer.rule != 0"> + <hr/> + </xsl:if> + + <xsl:if test="$row1 or $row2"> + <table width="100%" summary="Navigation footer"> + <xsl:if test="$row1"> + <tr> + <td width="40%" align="left"> + <xsl:if test="count($prev)>0"> + <a accesskey="p"> + <xsl:attribute name="href"> + <xsl:call-template name="href.target"> + <xsl:with-param name="object" select="$prev"/> + </xsl:call-template> + </xsl:attribute> + <xsl:call-template name="navig.content"> + <xsl:with-param name="direction" select="'prev'"/> </xsl:call-template> - </xsl:attribute> - <xsl:call-template name="navig.content"> - <xsl:with-param name="direction" select="'up'"/> - </xsl:call-template> - </a> - </xsl:when> - <xsl:otherwise> </xsl:otherwise> - </xsl:choose> - </td> - <td width="40%" align="right"> - <xsl:text> </xsl:text> - <xsl:if test="count($next)>0"> - <a accesskey="n"> - <xsl:attribute name="href"> - <xsl:call-template name="href.target"> - <xsl:with-param name="object" select="$next"/> - </xsl:call-template> - </xsl:attribute> - <xsl:call-template name="navig.content"> - <xsl:with-param name="direction" select="'next'"/> - </xsl:call-template> - </a> - </xsl:if> - </td> - </tr> - - <tr> - <td width="40%" align="left" valign="top"> - <xsl:if test="$navig.showtitles != 0"> - <xsl:apply-templates select="$prev" mode="object.title.markup"/> - </xsl:if> - <xsl:text> </xsl:text> - </td> - <td width="20%" align="center"> - <xsl:choose> - <xsl:when test="$home != ."> - <a accesskey="h"> - <xsl:attribute name="href"> - <xsl:call-template name="href.target"> - <xsl:with-param name="object" select="$home"/> + </a> + </xsl:if> + <xsl:text> </xsl:text> + </td> + <td width="20%" align="center"> + <xsl:choose> + <xsl:when test="count($up)>0"> + <a accesskey="u"> + <xsl:attribute name="href"> + <xsl:call-template name="href.target"> + <xsl:with-param name="object" select="$up"/> + </xsl:call-template> + </xsl:attribute> + <xsl:call-template name="navig.content"> + <xsl:with-param name="direction" select="'up'"/> + </xsl:call-template> + </a> + </xsl:when> + <xsl:otherwise> </xsl:otherwise> + </xsl:choose> + </td> + <td width="40%" align="right"> + <xsl:text> </xsl:text> + <xsl:if test="count($next)>0"> + <a accesskey="n"> + <xsl:attribute name="href"> + <xsl:call-template name="href.target"> + <xsl:with-param name="object" select="$next"/> + </xsl:call-template> + </xsl:attribute> + <xsl:call-template name="navig.content"> + <xsl:with-param name="direction" select="'next'"/> </xsl:call-template> - </xsl:attribute> - <xsl:call-template name="navig.content"> - <xsl:with-param name="direction" select="'home'"/> - </xsl:call-template> - </a> - </xsl:when> - <xsl:otherwise> </xsl:otherwise> - </xsl:choose> - </td> - <td width="40%" align="right" valign="top"> - <xsl:text> </xsl:text> - <xsl:if test="$navig.showtitles != 0"> - <xsl:apply-templates select="$next" mode="object.title.markup"/> - </xsl:if> - </td> - </tr> - </table> + </a> + </xsl:if> + </td> + </tr> + </xsl:if> + + <xsl:if test="$row2"> + <tr> + <td width="40%" align="left" valign="top"> + <xsl:if test="$navig.showtitles != 0"> + <xsl:apply-templates select="$prev" mode="object.title.markup"/> + </xsl:if> + <xsl:text> </xsl:text> + </td> + <td width="20%" align="center"> + <xsl:choose> + <xsl:when test="$home != . or $nav.context = 'toc'"> + <a accesskey="h"> + <xsl:attribute name="href"> + <xsl:call-template name="href.target"> + <xsl:with-param name="object" select="$home"/> + </xsl:call-template> + </xsl:attribute> + <xsl:call-template name="navig.content"> + <xsl:with-param name="direction" select="'home'"/> + </xsl:call-template> + </a> + <xsl:if test="$chunk.tocs.and.lots != 0 and $nav.context != 'toc'"> + <xsl:text> | </xsl:text> + </xsl:if> + </xsl:when> + <xsl:otherwise> </xsl:otherwise> + </xsl:choose> + + <xsl:if test="$chunk.tocs.and.lots != 0 and $nav.context != 'toc'"> + <a accesskey="t"> + <xsl:attribute name="href"> + <xsl:apply-templates select="/*[1]" + mode="recursive-chunk-filename"/> + <xsl:text>-toc</xsl:text> + <xsl:value-of select="$html.ext"/> + </xsl:attribute> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'nav-toc'"/> + </xsl:call-template> + </a> + </xsl:if> + </td> + <td width="40%" align="right" valign="top"> + <xsl:text> </xsl:text> + <xsl:if test="$navig.showtitles != 0"> + <xsl:apply-templates select="$next" mode="object.title.markup"/> + </xsl:if> + </td> + </tr> + </xsl:if> + </table> + </xsl:if> </div> </xsl:if> </xsl:template> @@ -868,8 +921,12 @@ <!-- ==================================================================== --> <xsl:template name="chunk-element-content"> - <xsl:param name="prev"></xsl:param> - <xsl:param name="next"></xsl:param> + <xsl:param name="prev"/> + <xsl:param name="next"/> + <xsl:param name="nav.context"/> + <xsl:param name="content"> + <xsl:apply-imports/> + </xsl:param> <html> <xsl:call-template name="html.head"> @@ -884,17 +941,19 @@ <xsl:call-template name="header.navigation"> <xsl:with-param name="prev" select="$prev"/> <xsl:with-param name="next" select="$next"/> + <xsl:with-param name="nav.context" select="$nav.context"/> </xsl:call-template> <xsl:call-template name="user.header.content"/> - <xsl:apply-imports/> + <xsl:copy-of select="$content"/> <xsl:call-template name="user.footer.content"/> <xsl:call-template name="footer.navigation"> <xsl:with-param name="prev" select="$prev"/> <xsl:with-param name="next" select="$next"/> + <xsl:with-param name="nav.context" select="$nav.context"/> </xsl:call-template> <xsl:call-template name="user.footer.navigation"/> Index: phpdoc/xsl/docbook/html/chunk.xsl diff -u phpdoc/xsl/docbook/html/chunk.xsl:1.1 phpdoc/xsl/docbook/html/chunk.xsl:1.2 --- phpdoc/xsl/docbook/html/chunk.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/chunk.xsl Sun Mar 9 09:56:38 2003 @@ -1,7 +1,7 @@ <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" + xmlns:exsl="http://exslt.org/common" version="1.0" - exclude-result-prefixes="doc"> + exclude-result-prefixes="exsl"> <xsl:import href="docbook.xsl"/> <xsl:import href="chunk-common.xsl"/> @@ -9,22 +9,102 @@ <xsl:param name="onechunk" select="0"/> <xsl:param name="refentry.separator" select="0"/> +<xsl:param name="chunk.fast" select="0"/> + +<xsl:key name="genid" match="*" use="generate-id()"/> <!-- ==================================================================== --> -<xsl:template name="process-chunk-element"> +<xsl:variable name="chunk.hierarchy"> + <xsl:if test="$chunk.fast != 0"> + <xsl:choose> + <xsl:when test="function-available('exsl:node-set')"> + <xsl:message>Computing chunks...</xsl:message> + <xsl:apply-templates select="/*" mode="find.chunks"/> + </xsl:when> + <xsl:otherwise> + <xsl:message> + <xsl:text>Fast chunking requires exsl:node-set(). </xsl:text> + <xsl:text>Using "slow" chunking.</xsl:text> + </xsl:message> + </xsl:otherwise> + </xsl:choose> + </xsl:if> +</xsl:variable> + +<xsl:template match="*" mode="find.chunks"> + <xsl:variable name="chunk"> + <xsl:call-template name="chunk"/> + </xsl:variable> + <xsl:choose> - <xsl:when test="$onechunk != 0 and not(parent::*)"> - <xsl:call-template name="chunk-all-sections"/> - </xsl:when> - <xsl:when test="$onechunk != 0"> - <xsl:apply-imports/> + <xsl:when test="$chunk != 0"> + <div class="{local-name(.)}" id="{generate-id()}"> + <xsl:apply-templates select="*" mode="find.chunks"/> + </div> </xsl:when> - <xsl:when test="$chunk.first.sections = 0"> - <xsl:call-template name="chunk-first-section-with-parent"/> + <xsl:otherwise> + <xsl:apply-templates select="*" mode="find.chunks"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ==================================================================== --> + +<xsl:template name="process-chunk-element"> + <xsl:param name="content"> + <xsl:apply-imports/> + </xsl:param> + + <xsl:choose> + <xsl:when test="$chunk.fast != 0 and function-available('exsl:node-set')"> + <xsl:variable name="chunks" select="exsl:node-set($chunk.hierarchy)//div"/> + <xsl:variable name="genid" select="generate-id()"/> + + <xsl:variable name="div" select="$chunks[@id=$genid]"/> + + <xsl:variable name="prevdiv" + select="($div/preceding-sibling::div|$div/preceding::div|$div/parent::div)[last()]"/> + <xsl:variable name="prev" select="key('genid', $prevdiv/@id)"/> + + <xsl:variable name="nextdiv" + select="($div/following-sibling::div|$div/following::div|$div/div)[1]"/> + <xsl:variable name="next" select="key('genid', $nextdiv/@id)"/> + + <xsl:choose> + <xsl:when test="$onechunk != 0 and parent::*"> + <xsl:copy-of select="$content"/> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="process-chunk"> + <xsl:with-param name="prev" select="$prev"/> + <xsl:with-param name="next" select="$next"/> + <xsl:with-param name="content" select="$content"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> </xsl:when> <xsl:otherwise> - <xsl:call-template name="chunk-all-sections"/> + <xsl:choose> + <xsl:when test="$onechunk != 0 and not(parent::*)"> + <xsl:call-template name="chunk-all-sections"> + <xsl:with-param name="content" select="$content"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$onechunk != 0"> + <xsl:copy-of select="$content"/> + </xsl:when> + <xsl:when test="$chunk.first.sections = 0"> + <xsl:call-template name="chunk-first-section-with-parent"> + <xsl:with-param name="content" select="$content"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="chunk-all-sections"> + <xsl:with-param name="content" select="$content"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> </xsl:otherwise> </xsl:choose> </xsl:template> @@ -32,6 +112,9 @@ <xsl:template name="process-chunk"> <xsl:param name="prev" select="."/> <xsl:param name="next" select="."/> + <xsl:param name="content"> + <xsl:apply-imports/> + </xsl:param> <xsl:variable name="ischunk"> <xsl:call-template name="chunk"/> @@ -64,6 +147,7 @@ <xsl:call-template name="chunk-element-content"> <xsl:with-param name="prev" select="$prev"/> <xsl:with-param name="next" select="$next"/> + <xsl:with-param name="content" select="$content"/> </xsl:call-template> </xsl:with-param> <xsl:with-param name="quiet" select="$chunk.quietly"/> @@ -71,6 +155,10 @@ </xsl:template> <xsl:template name="chunk-first-section-with-parent"> + <xsl:param name="content"> + <xsl:apply-imports/> + </xsl:param> + <!-- These xpath expressions are really hairy. The trick is to pick sections --> <!-- that are not first children and are not the children of first children --> @@ -254,10 +342,15 @@ <xsl:call-template name="process-chunk"> <xsl:with-param name="prev" select="$prev"/> <xsl:with-param name="next" select="$next"/> + <xsl:with-param name="content" select="$content"/> </xsl:call-template> </xsl:template> <xsl:template name="chunk-all-sections"> + <xsl:param name="content"> + <xsl:apply-imports/> + </xsl:param> + <xsl:variable name="prev-v1" select="(preceding::sect1[$chunk.section.depth > 0][1] |preceding::sect2[$chunk.section.depth > 1][1] @@ -349,6 +442,7 @@ <xsl:call-template name="process-chunk"> <xsl:with-param name="prev" select="$prev"/> <xsl:with-param name="next" select="$next"/> + <xsl:with-param name="content" select="$content"/> </xsl:call-template> </xsl:template> @@ -366,25 +460,40 @@ </xsl:message> </xsl:when> <xsl:otherwise> - <xsl:apply-templates select="key('id',$rootid)"/> - <xsl:if test="$tex.math.in.alt != ''"> - <xsl:apply-templates select="key('id',$rootid)" mode="collect.tex.math"/> + <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="$generate.manifest != 0"> - <xsl:call-template name="generate.manifest"> - <xsl:with-param name="node" select="key('id',$rootid)"/> - </xsl:call-template> + <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:apply-templates select="/" mode="process.root"/> - <xsl:if test="$tex.math.in.alt != ''"> - <xsl:apply-templates select="/" mode="collect.tex.math"/> + <xsl:if test="$collect.xref.targets = 'yes' or + $collect.xref.targets = 'only'"> + <xsl:apply-templates select="/" mode="collect.targets"/> </xsl:if> - <xsl:if test="$generate.manifest != 0"> - <xsl:call-template name="generate.manifest"/> + <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:if> </xsl:if> </xsl:otherwise> </xsl:choose> @@ -394,6 +503,8 @@ <xsl:apply-templates select="."/> </xsl:template> +<!-- ====================================================================== --> + <xsl:template match="set|book|part|preface|chapter|appendix |article |reference|refentry @@ -441,6 +552,84 @@ <!-- ==================================================================== --> +<xsl:template name="make.lots"> + <xsl:param name="toc.params" select="''"/> + <xsl:param name="toc"/> + + <xsl:variable name="lots"> + <xsl:if test="contains($toc.params, 'toc')"> + <xsl:copy-of select="$toc"/> + </xsl:if> + + <xsl:if test="contains($toc.params, 'figure')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'figure'"/> + <xsl:with-param name="nodes" select=".//figure"/> + </xsl:call-template> + </xsl:if> + + <xsl:if test="contains($toc.params, 'table')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'table'"/> + <xsl:with-param name="nodes" select=".//table"/> + </xsl:call-template> + </xsl:if> + + <xsl:if test="contains($toc.params, 'example')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'example'"/> + <xsl:with-param name="nodes" select=".//example"/> + </xsl:call-template> + </xsl:if> + + <xsl:if test="contains($toc.params, 'equation')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'equation'"/> + <xsl:with-param name="nodes" select=".//equation[title]"/> + </xsl:call-template> + </xsl:if> + </xsl:variable> + + <xsl:if test="string($lots) != ''"> + <xsl:choose> + <xsl:when test="$chunk.tocs.and.lots != 0 and not(parent::*)"> + <xsl:call-template name="write.chunk"> + <xsl:with-param name="filename"> + <xsl:call-template name="make-relative-filename"> + <xsl:with-param name="base.dir" select="$base.dir"/> + <xsl:with-param name="base.name"> + <xsl:call-template name="dbhtml-dir"/> + <xsl:apply-templates select="." mode="recursive-chunk-filename"/> + <xsl:text>-toc</xsl:text> + <xsl:value-of select="$html.ext"/> + </xsl:with-param> + </xsl:call-template> + </xsl:with-param> + <xsl:with-param name="content"> + <xsl:call-template name="chunk-element-content"> + <xsl:with-param name="prev" select="/foo"/> + <xsl:with-param name="next" select="/foo"/> + <xsl:with-param name="nav.context" select="'toc'"/> + <xsl:with-param name="content"> + <h1> + <xsl:apply-templates select="." mode="object.title.markup"/> + </h1> + <xsl:copy-of select="$lots"/> + </xsl:with-param> + </xsl:call-template> + </xsl:with-param> + <xsl:with-param name="quiet" select="$chunk.quietly"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:copy-of select="$lots"/> + </xsl:otherwise> + </xsl:choose> + </xsl:if> +</xsl:template> + +<!-- ==================================================================== --> + <xsl:template name="in.other.chunk"> <xsl:param name="chunk" select="."/> <xsl:param name="node" select="."/> @@ -620,5 +809,7 @@ <xsl:call-template name="process.footnotes"/> </xsl:if> </xsl:template> + +<!-- ====================================================================== --> </xsl:stylesheet> Index: phpdoc/xsl/docbook/html/chunker.xsl diff -u phpdoc/xsl/docbook/html/chunker.xsl:1.1 phpdoc/xsl/docbook/html/chunker.xsl:1.2 --- phpdoc/xsl/docbook/html/chunker.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/chunker.xsl Sun Mar 9 09:56:38 2003 @@ -12,6 +12,18 @@ <!-- exsl:document, saxon:output, or xalanredirect:write --> <!-- Note: Only Saxon 6.4.2 or later is supported. --> +<xsl:param name="chunker.output.method" select="'html'"/> +<xsl:param name="chunker.output.encoding" select="'ISO-8859-1'"/> +<xsl:param name="chunker.output.indent" select="'no'"/> +<xsl:param name="chunker.output.omit-xml-declaration" select="'no'"/> +<xsl:param name="chunker.output.standalone" select="'no'"/> +<xsl:param name="chunker.output.doctype-public" select="''"/> +<xsl:param name="chunker.output.doctype-system" select="''"/> +<xsl:param name="chunker.output.media-type" select="''"/> +<xsl:param name="chunker.output.cdata-section-elements" select="''"/> + +<xsl:param name="saxon.character.representation" select="'entity;decimal'"/> + <!-- ==================================================================== --> <xsl:template name="make-relative-filename"> @@ -50,12 +62,22 @@ <xsl:template name="write.chunk"> <xsl:param name="filename" select="''"/> - <xsl:param name="method" select="$output.method"/> - <xsl:param name="encoding" select="$default.encoding"/> - <xsl:param name="indent" select="'no'"/> - <xsl:param name="content" select="''"/> <xsl:param name="quiet" select="0"/> + <xsl:param name="method" select="$chunker.output.method"/> + <xsl:param name="encoding" select="$chunker.output.encoding"/> + <xsl:param name="indent" select="$chunker.output.indent"/> + <xsl:param name="omit-xml-declaration" + select="$chunker.output.omit-xml-declaration"/> + <xsl:param name="standalone" select="$chunker.output.standalone"/> + <xsl:param name="doctype-public" select="$chunker.output.doctype-public"/> + <xsl:param name="doctype-system" select="$chunker.output.doctype-system"/> + <xsl:param name="media-type" select="$chunker.output.media-type"/> + <xsl:param name="cdata-section-elements" + select="$chunker.output.cdata-section-elements"/> + + <xsl:param name="content"/> + <xsl:if test="$quiet = 0"> <xsl:message> <xsl:text>Writing </xsl:text> @@ -74,28 +96,248 @@ <xsl:choose> <xsl:when test="element-available('exsl:document')"> - <exsl:document href="{$filename}" - method="{$method}" - encoding="{$encoding}" - indent="{$indent}"> - <xsl:copy-of select="$content"/> - </exsl:document> + <xsl:choose> + <!-- Handle the permutations ... --> + <xsl:when test="$media-type != ''"> + <xsl:choose> + <xsl:when test="$doctype-public != '' and $doctype-system != ''"> + <exsl:document href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + media-type="{$media-type}" + doctype-public="{$doctype-public}" + doctype-system="{$doctype-system}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </exsl:document> + </xsl:when> + <xsl:when test="$doctype-public != '' and $doctype-system = ''"> + <exsl:document href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + media-type="{$media-type}" + doctype-public="{$doctype-public}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </exsl:document> + </xsl:when> + <xsl:when test="$doctype-public = '' and $doctype-system != ''"> + <exsl:document href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + media-type="{$media-type}" + doctype-system="{$doctype-system}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </exsl:document> + </xsl:when> + <xsl:otherwise><!-- $doctype-public = '' and $doctype-system = ''"> --> + <exsl:document href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + media-type="{$media-type}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </exsl:document> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:otherwise> + <xsl:choose> + <xsl:when test="$doctype-public != '' and $doctype-system != ''"> + <exsl:document href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + doctype-public="{$doctype-public}" + doctype-system="{$doctype-system}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </exsl:document> + </xsl:when> + <xsl:when test="$doctype-public != '' and $doctype-system = ''"> + <exsl:document href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + doctype-public="{$doctype-public}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </exsl:document> + </xsl:when> + <xsl:when test="$doctype-public = '' and $doctype-system != ''"> + <exsl:document href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + doctype-system="{$doctype-system}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </exsl:document> + </xsl:when> + <xsl:otherwise><!-- $doctype-public = '' and $doctype-system = ''"> --> + <exsl:document href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </exsl:document> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> </xsl:when> + <xsl:when test="element-available('saxon:output')"> - <saxon:output href="{$filename}" - method="{$method}" - encoding="{$encoding}" - indent="{$indent}" - saxon:character-representation="{$saxon.character.representation}"> - <xsl:copy-of select="$content"/> - </saxon:output> + <xsl:choose> + <!-- Handle the permutations ... --> + <xsl:when test="$media-type != ''"> + <xsl:choose> + <xsl:when test="$doctype-public != '' and $doctype-system != ''"> + <saxon:output saxon:character-representation="{$saxon.character.representation}" + href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + media-type="{$media-type}" + doctype-public="{$doctype-public}" + doctype-system="{$doctype-system}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </saxon:output> + </xsl:when> + <xsl:when test="$doctype-public != '' and $doctype-system = ''"> + <saxon:output saxon:character-representation="{$saxon.character.representation}" + href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + media-type="{$media-type}" + doctype-public="{$doctype-public}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </saxon:output> + </xsl:when> + <xsl:when test="$doctype-public = '' and $doctype-system != ''"> + <saxon:output saxon:character-representation="{$saxon.character.representation}" + href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + media-type="{$media-type}" + doctype-system="{$doctype-system}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </saxon:output> + </xsl:when> + <xsl:otherwise><!-- $doctype-public = '' and $doctype-system = ''"> --> + <saxon:output saxon:character-representation="{$saxon.character.representation}" + href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + media-type="{$media-type}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </saxon:output> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:otherwise> + <xsl:choose> + <xsl:when test="$doctype-public != '' and $doctype-system != ''"> + <saxon:output saxon:character-representation="{$saxon.character.representation}" + href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + doctype-public="{$doctype-public}" + doctype-system="{$doctype-system}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </saxon:output> + </xsl:when> + <xsl:when test="$doctype-public != '' and $doctype-system = ''"> + <saxon:output saxon:character-representation="{$saxon.character.representation}" + href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + doctype-public="{$doctype-public}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </saxon:output> + </xsl:when> + <xsl:when test="$doctype-public = '' and $doctype-system != ''"> + <saxon:output saxon:character-representation="{$saxon.character.representation}" + href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + doctype-system="{$doctype-system}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </saxon:output> + </xsl:when> + <xsl:otherwise><!-- $doctype-public = '' and $doctype-system = ''"> --> + <saxon:output saxon:character-representation="{$saxon.character.representation}" + href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </saxon:output> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> </xsl:when> + <xsl:when test="element-available('xalanredirect:write')"> <!-- Xalan uses xalanredirect --> <xalanredirect:write file="{$filename}"> <xsl:copy-of select="$content"/> </xalanredirect:write> </xsl:when> + <xsl:otherwise> <!-- it doesn't matter since we won't be making chunks... --> <xsl:message terminate="yes"> @@ -109,77 +351,59 @@ <xsl:template name="write.chunk.with.doctype"> <xsl:param name="filename" select="''"/> - <xsl:param name="method" select="$output.method"/> - <xsl:param name="encoding" select="$default.encoding"/> - <xsl:param name="indent" select="'no'"/> - <xsl:param name="doctype-public" select="''"/> - <xsl:param name="doctype-system" select="''"/> - <xsl:param name="content" select="''"/> <xsl:param name="quiet" select="0"/> - <xsl:if test="$quiet = 0"> - <xsl:message> - <xsl:text>Writing </xsl:text> - <xsl:value-of select="$filename"/> - <xsl:if test="name(.) != ''"> - <xsl:text> for </xsl:text> - <xsl:value-of select="name(.)"/> - </xsl:if> - </xsl:message> - </xsl:if> + <xsl:param name="method" select="$chunker.output.method"/> + <xsl:param name="encoding" select="$chunker.output.encoding"/> + <xsl:param name="indent" select="$chunker.output.indent"/> + <xsl:param name="omit-xml-declaration" + select="$chunker.output.omit-xml-declaration"/> + <xsl:param name="standalone" select="$chunker.output.standalone"/> + <xsl:param name="doctype-public" select="$chunker.output.doctype-public"/> + <xsl:param name="doctype-system" select="$chunker.output.doctype-system"/> + <xsl:param name="media-type" select="$chunker.output.media-type"/> + <xsl:param name="cdata-section-elements" + select="$chunker.output.cdata-section-elements"/> + <xsl:param name="content"/> - <xsl:choose> - <xsl:when test="element-available('exsl:document')"> - <exsl:document href="{$filename}" - method="{$method}" - encoding="{$encoding}" - indent="{$indent}" - doctype-public="{$doctype-public}" - doctype-system="{$doctype-system}"> - <xsl:copy-of select="$content"/> - </exsl:document> - </xsl:when> - <xsl:when test="element-available('saxon:output')"> - <!-- Saxon uses saxon:output --> - <saxon:output href="{$filename}" - method="{$method}" - encoding="{$encoding}" - indent="{$indent}" - doctype-public="{$doctype-public}" - doctype-system="{$doctype-system}" - saxon:character-representation="{$saxon.character.representation}"> - <xsl:copy-of select="$content"/> - </saxon:output> - </xsl:when> - <xsl:when test="element-available('xalanredirect:write')"> - <!-- Xalan uses xalanredirect --> - <xalanredirect:write file="{$filename}"> - <xsl:copy-of select="$content"/> - </xalanredirect:write> - </xsl:when> - <xsl:otherwise> - <!-- it doesn't matter since we won't be making chunks... --> - <xsl:message terminate="yes"> - <xsl:text>Can't make chunks with </xsl:text> - <xsl:value-of select="system-property('xsl:vendor')"/> - <xsl:text>'s processor.</xsl:text> - </xsl:message> - </xsl:otherwise> - </xsl:choose> + <xsl:call-template name="write.chunk"> + <xsl:with-param name="filename" select="$filename"/> + <xsl:with-param name="quiet" select="$quiet"/> + <xsl:with-param name="method" select="$method"/> + <xsl:with-param name="encoding" select="$encoding"/> + <xsl:with-param name="indent" select="$indent"/> + <xsl:with-param name="omit-xml-declaration" select="$omit-xml-declaration"/> + <xsl:with-param name="standalone" select="$standalone"/> + <xsl:with-param name="doctype-public" select="$doctype-public"/> + <xsl:with-param name="doctype-system" select="$doctype-system"/> + <xsl:with-param name="media-type" select="$media-type"/> + <xsl:with-param name="cdata-section-elements" select="$cdata-section-elements"/> + <xsl:with-param name="content" select="$content"/> + </xsl:call-template> </xsl:template> <xsl:template name="write.text.chunk"> <xsl:param name="filename" select="''"/> + <xsl:param name="quiet" select="0"/> <xsl:param name="method" select="'text'"/> - <xsl:param name="content" select="''"/> - <xsl:param name="encoding" select="'iso-8859-1'"/> + <xsl:param name="encoding" select="$chunker.output.encoding"/> + <xsl:param name="media-type" select="$chunker.output.media-type"/> + <xsl:param name="content"/> + <xsl:call-template name="write.chunk"> <xsl:with-param name="filename" select="$filename"/> + <xsl:with-param name="quiet" select="$quiet"/> <xsl:with-param name="method" select="$method"/> - <xsl:with-param name="content" select="$content"/> <xsl:with-param name="encoding" select="$encoding"/> - <xsl:with-param name="quiet" select="$chunk.quietly"/> + <xsl:with-param name="indent" select="'no'"/> + <xsl:with-param name="omit-xml-declaration" select="'no'"/> + <xsl:with-param name="standalone" select="'no'"/> + <xsl:with-param name="doctype-public"/> + <xsl:with-param name="doctype-system"/> + <xsl:with-param name="media-type" select="$media-type"/> + <xsl:with-param name="cdata-section-elements"/> + <xsl:with-param name="content" select="$content"/> </xsl:call-template> </xsl:template> Index: phpdoc/xsl/docbook/html/component.xsl diff -u phpdoc/xsl/docbook/html/component.xsl:1.1 phpdoc/xsl/docbook/html/component.xsl:1.2 --- phpdoc/xsl/docbook/html/component.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/component.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: component.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: component.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -54,6 +54,7 @@ <xsl:template match="dedication" mode="dedication"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:call-template name="dedication.titlepage"/> <xsl:apply-templates/> <xsl:call-template name="process.footnotes"/> @@ -81,6 +82,7 @@ <xsl:template match="colophon"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:if test="$generate.id.attributes != 0"> <xsl:attribute name="id"> <xsl:call-template name="object.id"/> @@ -102,6 +104,7 @@ <xsl:template match="preface"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:if test="$generate.id.attributes != 0"> <xsl:attribute name="id"> <xsl:call-template name="object.id"/> @@ -118,7 +121,10 @@ </xsl:variable> <xsl:if test="contains($toc.params, 'toc')"> - <xsl:call-template name="component.toc"/> + <xsl:call-template name="component.toc"> + <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/> + </xsl:call-template> + <xsl:call-template name="component.toc.separator"/> </xsl:if> <xsl:apply-templates/> <xsl:call-template name="process.footnotes"/> @@ -149,6 +155,7 @@ <xsl:template match="chapter"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:if test="$generate.id.attributes != 0"> <xsl:attribute name="id"> <xsl:call-template name="object.id"/> @@ -164,7 +171,10 @@ </xsl:call-template> </xsl:variable> <xsl:if test="contains($toc.params, 'toc')"> - <xsl:call-template name="component.toc"/> + <xsl:call-template name="component.toc"> + <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/> + </xsl:call-template> + <xsl:call-template name="component.toc.separator"/> </xsl:if> <xsl:apply-templates/> <xsl:call-template name="process.footnotes"/> @@ -194,45 +204,51 @@ <!-- ==================================================================== --> <xsl:template match="appendix"> + <xsl:variable name="ischunk"> + <xsl:call-template name="chunk"/> + </xsl:variable> + <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:if test="$generate.id.attributes != 0"> <xsl:attribute name="id"> <xsl:call-template name="object.id"/> </xsl:attribute> </xsl:if> - <xsl:call-template name="component.separator"/> - <xsl:call-template name="appendix.titlepage"/> + <xsl:choose> + <xsl:when test="parent::article and $ischunk = 0"> + <xsl:call-template name="section.heading"> + <xsl:with-param name="level" select="1"/> + <xsl:with-param name="title"> + <xsl:apply-templates select="." mode="object.title.markup"/> + </xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="component.separator"/> + <xsl:call-template name="appendix.titlepage"/> + </xsl:otherwise> + </xsl:choose> <xsl:variable name="toc.params"> <xsl:call-template name="find.path.params"> <xsl:with-param name="table" select="normalize-space($generate.toc)"/> </xsl:call-template> </xsl:variable> + <xsl:if test="contains($toc.params, 'toc')"> - <xsl:call-template name="component.toc"/> + <xsl:call-template name="component.toc"> + <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/> + </xsl:call-template> + <xsl:call-template name="component.toc.separator"/> </xsl:if> + <xsl:apply-templates/> - <xsl:call-template name="process.footnotes"/> - </div> -</xsl:template> -<xsl:template match="article/appendix"> - <div class="{name(.)}"> - <xsl:if test="$generate.id.attributes != 0"> - <xsl:attribute name="id"> - <xsl:call-template name="object.id"/> - </xsl:attribute> + <xsl:if test="not(parent::article) or $ischunk != 0"> + <xsl:call-template name="process.footnotes"/> </xsl:if> - - <xsl:call-template name="section.heading"> - <xsl:with-param name="level" select="2"/> - <xsl:with-param name="title"> - <xsl:apply-templates select="." mode="object.title.markup"/> - </xsl:with-param> - </xsl:call-template> - - <xsl:apply-templates/> </div> </xsl:template> @@ -328,6 +344,7 @@ <xsl:template match="article"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:if test="$generate.id.attributes != 0"> <xsl:attribute name="id"> <xsl:call-template name="object.id"/> @@ -341,9 +358,16 @@ <xsl:with-param name="table" select="normalize-space($generate.toc)"/> </xsl:call-template> </xsl:variable> - <xsl:if test="contains($toc.params, 'toc')"> - <xsl:call-template name="component.toc"/> - </xsl:if> + + <xsl:call-template name="make.lots"> + <xsl:with-param name="toc.params" select="$toc.params"/> + <xsl:with-param name="toc"> + <xsl:call-template name="component.toc"> + <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/> + </xsl:call-template> + </xsl:with-param> + </xsl:call-template> + <xsl:apply-templates/> <xsl:call-template name="process.footnotes"/> </div> Index: phpdoc/xsl/docbook/html/division.xsl diff -u phpdoc/xsl/docbook/html/division.xsl:1.1 phpdoc/xsl/docbook/html/division.xsl:1.2 --- phpdoc/xsl/docbook/html/division.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/division.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: division.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: division.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -16,6 +16,7 @@ <xsl:template match="set"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:if test="$generate.id.attributes != 0"> <xsl:attribute name="id"> <xsl:call-template name="object.id"/> @@ -24,14 +25,17 @@ <xsl:call-template name="set.titlepage"/> - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - <xsl:if test="contains($toc.params, 'toc')"> - <xsl:call-template name="set.toc"/> - </xsl:if> + <xsl:call-template name="make.lots"> + <xsl:with-param name="toc.params"> + <xsl:call-template name="find.path.params"> + <xsl:with-param name="table" select="normalize-space($generate.toc)"/> + </xsl:call-template> + </xsl:with-param> + <xsl:with-param name="toc"> + <xsl:call-template name="set.toc"/> + </xsl:with-param> + </xsl:call-template> + <xsl:apply-templates/> </div> </xsl:template> @@ -45,6 +49,7 @@ <xsl:template match="book"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:if test="$generate.id.attributes != 0"> <xsl:attribute name="id"> <xsl:call-template name="object.id"/> @@ -52,45 +57,19 @@ </xsl:if> <xsl:call-template name="book.titlepage"/> - <xsl:apply-templates select="dedication" mode="dedication"/> - - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - <xsl:if test="contains($toc.params, 'toc')"> - <xsl:call-template name="division.toc"/> - </xsl:if> - - <xsl:if test="contains($toc.params, 'figure')"> - <xsl:call-template name="list.of.titles"> - <xsl:with-param name="titles" select="'figure'"/> - <xsl:with-param name="nodes" select=".//figure"/> - </xsl:call-template> - </xsl:if> - - <xsl:if test="contains($toc.params, 'table')"> - <xsl:call-template name="list.of.titles"> - <xsl:with-param name="titles" select="'table'"/> - <xsl:with-param name="nodes" select=".//table"/> - </xsl:call-template> - </xsl:if> - - <xsl:if test="contains($toc.params, 'example')"> - <xsl:call-template name="list.of.titles"> - <xsl:with-param name="titles" select="'example'"/> - <xsl:with-param name="nodes" select=".//example"/> - </xsl:call-template> - </xsl:if> + <xsl:apply-templates select="dedication" mode="dedication"/> - <xsl:if test="contains($toc.params, 'equation')"> - <xsl:call-template name="list.of.titles"> - <xsl:with-param name="titles" select="'equation'"/> - <xsl:with-param name="nodes" select=".//equation[title]"/> - </xsl:call-template> - </xsl:if> + <xsl:call-template name="make.lots"> + <xsl:with-param name="toc.params"> + <xsl:call-template name="find.path.params"> + <xsl:with-param name="table" select="normalize-space($generate.toc)"/> + </xsl:call-template> + </xsl:with-param> + <xsl:with-param name="toc"> + <xsl:call-template name="division.toc"/> + </xsl:with-param> + </xsl:call-template> <xsl:apply-templates/> </div> @@ -105,6 +84,7 @@ <xsl:template match="part"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:if test="$generate.id.attributes != 0"> <xsl:attribute name="id"> <xsl:call-template name="object.id"/> @@ -141,6 +121,7 @@ <xsl:template match="partintro"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:if test="$generate.id.attributes != 0"> <xsl:attribute name="id"> <xsl:call-template name="object.id"/> Index: phpdoc/xsl/docbook/html/docbook.xsl diff -u phpdoc/xsl/docbook/html/docbook.xsl:1.1 phpdoc/xsl/docbook/html/docbook.xsl:1.2 --- phpdoc/xsl/docbook/html/docbook.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/docbook.xsl Sun Mar 9 09:56:38 2003 @@ -9,7 +9,7 @@ indent="no"/> <!-- ******************************************************************** - $Id: docbook.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: docbook.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -29,6 +29,7 @@ <xsl:include href="../common/titles.xsl"/> <xsl:include href="../common/subtitles.xsl"/> <xsl:include href="../common/gentext.xsl"/> +<xsl:include href="../common/targets.xsl"/> <xsl:include href="autotoc.xsl"/> <xsl:include href="autoidx.xsl"/> <xsl:include href="lists.xsl"/> @@ -75,6 +76,10 @@ <xsl:message> <xsl:text>No template matches </xsl:text> <xsl:value-of select="name(.)"/> + <xsl:if test="parent::*"> + <xsl:text> in </xsl:text> + <xsl:value-of select="name(parent::*)"/> + </xsl:if> <xsl:text>.</xsl:text> </xsl:message> @@ -103,15 +108,18 @@ <xsl:template name="head.content"> <xsl:param name="node" select="."/> + <xsl:param name="title"> + <xsl:apply-templates select="$node" mode="object.title.markup.textonly"/> + </xsl:param> <title> - <xsl:apply-templates select="$node" mode="object.title.markup.textonly"/> + <xsl:copy-of select="$title"/> </title> - <xsl:if test="$html.stylesheet"> - <link rel="stylesheet" - href="{$html.stylesheet}" - type="{$html.stylesheet.type}"/> + <xsl:if test="$html.stylesheet != ''"> + <xsl:call-template name="output.html.stylesheets"> + <xsl:with-param name="stylesheets" select="normalize-space($html.stylesheet)"/> + </xsl:call-template> </xsl:if> <xsl:if test="$link.mailto.url != ''"> @@ -125,11 +133,41 @@ <meta name="generator" content="DocBook XSL Stylesheets V{$VERSION}"/> + <xsl:if test="$generate.meta.abstract != 0"> + <xsl:variable name="info" select="(articleinfo + |bookinfo + |prefaceinfo + |chapterinfo + |appendixinfo + |sectioninfo + |sect1info + |sect2info + |sect3info + |sect4info + |sect5info + |referenceinfo + |refentryinfo + |partinfo + |docinfo)[1]"/> + <xsl:if test="$info and $info/abstract"> + <meta name="description"> + <xsl:attribute name="content"> + <xsl:for-each select="$info/abstract[1]/*"> + <xsl:value-of select="."/> + <xsl:if test="position() < last()"> + <xsl:text> </xsl:text> + </xsl:if> + </xsl:for-each> + </xsl:attribute> + </meta> + </xsl:if> + </xsl:if> + <xsl:if test="ancestor-or-self::*[@status][1]/@status = 'draft' and $draft.watermark.image != ''"> <style type="text/css"><xsl:text> -body { background-image: url("</xsl:text> -<xsl:value-of select="$draft.watermark.image"/><xsl:text>"); +body { background-image: url('</xsl:text> +<xsl:value-of select="$draft.watermark.image"/><xsl:text>'); background-repeat: no-repeat; background-position: top left; /* The following properties make the watermark "fixed" on the page. */ @@ -142,6 +180,34 @@ <xsl:apply-templates select="." mode="head.keywords.content"/> </xsl:template> +<xsl:template name="output.html.stylesheets"> + <xsl:param name="stylesheets" select="''"/> + + <xsl:choose> + <xsl:when test="contains($stylesheets, ' ')"> + <link rel="stylesheet" href="{substring-before($stylesheets, ' ')}"> + <xsl:if test="$html.stylesheet.type != ''"> + <xsl:attribute name="type"> + <xsl:value-of select="$html.stylesheet.type"/> + </xsl:attribute> + </xsl:if> + </link> + <xsl:call-template name="output.html.stylesheets"> + <xsl:with-param name="stylesheets" select="substring-after($stylesheets, ' ')"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$stylesheets != ''"> + <link rel="stylesheet" href="{$stylesheets}"> + <xsl:if test="$html.stylesheet.type != ''"> + <xsl:attribute name="type"> + <xsl:value-of select="$html.stylesheet.type"/> + </xsl:attribute> + </xsl:if> + </link> + </xsl:when> + </xsl:choose> +</xsl:template> + <!-- ============================================================ --> <xsl:template match="*" mode="head.keywords.content"> @@ -176,6 +242,17 @@ <!-- ============================================================ --> +<xsl:template name="system.head.content"> + <xsl:param name="node" select="."/> + + <!-- system.head.content is like user.head.content, except that + it is called before head.content. This is important because it + means, for example, that <style> elements output by system.head.content + have a lower CSS precedence than the users stylesheet. --> +</xsl:template> + +<!-- ============================================================ --> + <xsl:template name="user.head.content"> <xsl:param name="node" select="."/> </xsl:template> @@ -208,17 +285,32 @@ </xsl:message> </xsl:when> <xsl:otherwise> - <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 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> </xsl:otherwise> </xsl:choose> </xsl:when> <xsl:otherwise> - <xsl:apply-templates select="/" mode="process.root"/> - <xsl:if test="$tex.math.in.alt != ''"> - <xsl:apply-templates select="/" mode="collect.tex.math"/> + <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> </xsl:otherwise> </xsl:choose> @@ -226,26 +318,46 @@ <xsl:template match="*" mode="process.root"> <xsl:variable name="doc" select="self::*"/> + + <xsl:call-template name="root.messages"/> + <html> - <head> - <xsl:call-template name="head.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - <xsl:call-template name="user.head.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - </head> - <body> - <xsl:call-template name="body.attributes"/> - <xsl:call-template name="user.header.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - <xsl:apply-templates select="."/> - <xsl:call-template name="user.footer.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - </body> + <head> + <xsl:call-template name="system.head.content"> + <xsl:with-param name="node" select="$doc"/> + </xsl:call-template> + <xsl:call-template name="head.content"> + <xsl:with-param name="node" select="$doc"/> + </xsl:call-template> + <xsl:call-template name="user.head.content"> + <xsl:with-param name="node" select="$doc"/> + </xsl:call-template> + </head> + <body> + <xsl:call-template name="body.attributes"/> + <xsl:call-template name="user.header.content"> + <xsl:with-param name="node" select="$doc"/> + </xsl:call-template> + <xsl:apply-templates select="."/> + <xsl:call-template name="user.footer.content"> + <xsl:with-param name="node" select="$doc"/> + </xsl:call-template> + </body> </html> +</xsl:template> + +<xsl:template name="root.messages"> + <!-- redefine this any way you'd like to output messages --> + <!-- DO NOT OUTPUT ANYTHING FROM THIS TEMPLATE --> +</xsl:template> + +<!-- ==================================================================== --> + +<xsl:template name="chunk"> + <xsl:param name="node" select="."/> + + <!-- The default is that we are not chunking... --> + <xsl:text>0</xsl:text> </xsl:template> <!-- ==================================================================== --> Index: phpdoc/xsl/docbook/html/ebnf.xsl diff -u phpdoc/xsl/docbook/html/ebnf.xsl:1.1 phpdoc/xsl/docbook/html/ebnf.xsl:1.2 --- phpdoc/xsl/docbook/html/ebnf.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/ebnf.xsl Sun Mar 9 09:56:38 2003 @@ -5,7 +5,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: ebnf.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: ebnf.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -17,7 +17,7 @@ <doc:reference xmlns=""> <referenceinfo> <releaseinfo role="meta"> -$Id: ebnf.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ +$Id: ebnf.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ </releaseinfo> <author><surname>Walsh</surname> <firstname>Norman</firstname></author> Index: phpdoc/xsl/docbook/html/footnote.xsl diff -u phpdoc/xsl/docbook/html/footnote.xsl:1.1 phpdoc/xsl/docbook/html/footnote.xsl:1.2 --- phpdoc/xsl/docbook/html/footnote.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/footnote.xsl Sun Mar 9 09:56:38 2003 @@ -5,7 +5,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: footnote.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: footnote.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -24,7 +24,7 @@ </xsl:variable> <xsl:choose> - <xsl:when test="ancestor::table|ancestor::informaltable"> + <xsl:when test="ancestor::tgroup"> <sup> <xsl:text>[</xsl:text> <a name="{$name}" href="{$href}"> @@ -65,17 +65,34 @@ <xsl:template match="footnote" mode="footnote.number"> <xsl:choose> - <xsl:when test="ancestor::table or ancestor::informaltable"> - <xsl:number level="any" from="table|informaltable" format="a"/> - </xsl:when> - <xsl:when test="ancestor::refentry"> - <xsl:number level="any" from="refentry" format="1"/> + <xsl:when test="ancestor::tgroup"> + <xsl:variable name="tfnum"> + <xsl:number level="any" from="table|informaltable" format="1"/> + </xsl:variable> + + <xsl:choose> + <xsl:when test="string-length($table.footnote.number.symbols) >= $tfnum"> + <xsl:value-of select="substring($table.footnote.number.symbols, $tfnum, 1)"/> + </xsl:when> + <xsl:otherwise> + <xsl:number level="any" from="tgroup" + format="{$table.footnote.number.format}"/> + </xsl:otherwise> + </xsl:choose> </xsl:when> <xsl:otherwise> <xsl:variable name="pfoot" select="preceding::footnote"/> - <xsl:variable name="ptfoot" select="preceding::table//footnote - |preceding::informaltable//footnote"/> - <xsl:number value="count($pfoot) - count($ptfoot) + 1" format="1"/> + <xsl:variable name="ptfoot" select="preceding::tgroup//footnote"/> + <xsl:variable name="fnum" select="count($pfoot) - count($ptfoot) + 1"/> + + <xsl:choose> + <xsl:when test="string-length($footnote.number.symbols) >= $fnum"> + <xsl:value-of select="substring($footnote.number.symbols, $fnum, 1)"/> + </xsl:when> + <xsl:otherwise> + <xsl:number value="$fnum" format="{$footnote.number.format}"/> + </xsl:otherwise> + </xsl:choose> </xsl:otherwise> </xsl:choose> </xsl:template> @@ -140,18 +157,24 @@ <xsl:apply-templates select="."/> </xsl:variable> - <xsl:variable name="html-nodes" select="exsl:node-set($html)"/> - <xsl:choose> - <xsl:when test="$html-nodes//p"> - <xsl:apply-templates select="$html-nodes" mode="insert.html.p"> - <xsl:with-param name="mark" select="$footnote.mark"/> - </xsl:apply-templates> + <xsl:when test="function-available('exsl:node-set')"> + <xsl:variable name="html-nodes" select="exsl:node-set($html)"/> + <xsl:choose> + <xsl:when test="$html-nodes//p"> + <xsl:apply-templates select="$html-nodes" mode="insert.html.p"> + <xsl:with-param name="mark" select="$footnote.mark"/> + </xsl:apply-templates> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="$html-nodes" mode="insert.html.text"> + <xsl:with-param name="mark" select="$footnote.mark"/> + </xsl:apply-templates> + </xsl:otherwise> + </xsl:choose> </xsl:when> <xsl:otherwise> - <xsl:apply-templates select="$html-nodes" mode="insert.html.text"> - <xsl:with-param name="mark" select="$footnote.mark"/> - </xsl:apply-templates> + <xsl:copy-of select="$html"/> </xsl:otherwise> </xsl:choose> </xsl:template> @@ -184,7 +207,7 @@ <xsl:template name="process.footnotes"> <xsl:variable name="footnotes" select=".//footnote"/> <xsl:variable name="table.footnotes" - select=".//table//footnote|.//informaltable//footnote"/> + select=".//tgroup//footnote"/> <!-- Only bother to do this if there's at least one non-table footnote --> <xsl:if test="count($footnotes)>count($table.footnotes)"> @@ -229,7 +252,7 @@ </xsl:choose> </xsl:template> -<xsl:template match="informaltable//footnote|table//footnote" +<xsl:template match="tgroup//footnote" mode="process.footnote.mode"> </xsl:template> Index: phpdoc/xsl/docbook/html/formal.xsl diff -u phpdoc/xsl/docbook/html/formal.xsl:1.1 phpdoc/xsl/docbook/html/formal.xsl:1.2 --- phpdoc/xsl/docbook/html/formal.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/formal.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: formal.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: formal.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -14,9 +14,13 @@ <xsl:template name="formal.object"> <xsl:param name="placement" select="'before'"/> + <xsl:param name="class" select="local-name(.)"/> + + <div class="{$class}"> + <xsl:call-template name="anchor"> + <xsl:with-param name="conditional" select="0"/> + </xsl:call-template> - <div class="{name(.)}"> - <xsl:call-template name="anchor"/> <xsl:choose> <xsl:when test="$placement = 'before'"> <xsl:call-template name="formal.object.heading"/> @@ -47,9 +51,10 @@ </xsl:template> <xsl:template name="formal.object.heading"> + <xsl:param name="object" select="."/> <p class="title"> <b> - <xsl:apply-templates select="." mode="object.title.markup"> + <xsl:apply-templates select="$object" mode="object.title.markup"> <xsl:with-param name="allow-anchors" select="1"/> </xsl:apply-templates> </b> @@ -57,7 +62,9 @@ </xsl:template> <xsl:template name="informal.object"> - <div class="{name(.)}"> + <xsl:param name="class" select="local-name(.)"/> + + <div class="{$class}"> <xsl:if test="$spacing.paras != 0"><p/></xsl:if> <xsl:call-template name="anchor"/> <xsl:apply-templates/> @@ -74,19 +81,75 @@ <xsl:template name="semiformal.object"> <xsl:param name="placement" select="'before'"/> + <xsl:param name="class" select="local-name(.)"/> + <xsl:choose> <xsl:when test="title"> <xsl:call-template name="formal.object"> <xsl:with-param name="placement" select="$placement"/> + <xsl:with-param name="class" select="$class"/> </xsl:call-template> </xsl:when> <xsl:otherwise> - <xsl:call-template name="informal.object"/> + <xsl:call-template name="informal.object"> + <xsl:with-param name="class" select="$class"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="figure"> + <xsl:variable name="param.placement" + select="substring-after(normalize-space($formal.title.placement), + concat(local-name(.), ' '))"/> + + <xsl:variable name="placement"> + <xsl:choose> + <xsl:when test="contains($param.placement, ' ')"> + <xsl:value-of select="substring-before($param.placement, ' ')"/> + </xsl:when> + <xsl:when test="$param.placement = ''">before</xsl:when> + <xsl:otherwise> + <xsl:value-of select="$param.placement"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:choose> + <xsl:when test="@float and @float != 0"> + <xsl:variable name="float"> + <xsl:choose> + <xsl:when test="@float = 1"> + <xsl:value-of select="$default.float.class"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="@float"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <div class="figure-float"> + <xsl:if test="$float = 'left' or $float = 'right'"> + <xsl:attribute name="style"> + <xsl:text>float: </xsl:text> + <xsl:value-of select="$float"/> + <xsl:text>;</xsl:text> + </xsl:attribute> + </xsl:if> + <xsl:call-template name="formal.object"> + <xsl:with-param name="placement" select="$placement"/> + </xsl:call-template> + </div> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="formal.object"> + <xsl:with-param name="placement" select="$placement"/> + </xsl:call-template> </xsl:otherwise> </xsl:choose> </xsl:template> -<xsl:template match="figure|table|example"> +<xsl:template match="table|example"> <xsl:variable name="param.placement" select="substring-after(normalize-space($formal.title.placement), concat(local-name(.), ' '))"/> @@ -105,6 +168,17 @@ <xsl:call-template name="formal.object"> <xsl:with-param name="placement" select="$placement"/> + <xsl:with-param name="class"> + <xsl:choose> + <xsl:when test="@tabstyle"> + <!-- hack, this will only ever occur on table, not example --> + <xsl:value-of select="@tabstyle"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="local-name(.)"/> + </xsl:otherwise> + </xsl:choose> + </xsl:with-param> </xsl:call-template> </xsl:template> @@ -131,10 +205,14 @@ </xsl:template> <xsl:template match="figure/title"></xsl:template> +<xsl:template match="figure/titleabbrev"></xsl:template> <xsl:template match="table/title"></xsl:template> +<xsl:template match="table/titleabbrev"></xsl:template> <xsl:template match="table/textobject"></xsl:template> <xsl:template match="example/title"></xsl:template> +<xsl:template match="example/titleabbrev"></xsl:template> <xsl:template match="equation/title"></xsl:template> +<xsl:template match="equation/titleabbrev"></xsl:template> <xsl:template match="informalfigure"> <xsl:call-template name="informal.object"/> @@ -145,7 +223,18 @@ </xsl:template> <xsl:template match="informaltable"> - <xsl:call-template name="informal.object"/> + <xsl:call-template name="informal.object"> + <xsl:with-param name="class"> + <xsl:choose> + <xsl:when test="@tabstyle"> + <xsl:value-of select="@tabstyle"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="local-name(.)"/> + </xsl:otherwise> + </xsl:choose> + </xsl:with-param> + </xsl:call-template> </xsl:template> <xsl:template match="informaltable/textobject"></xsl:template> Index: phpdoc/xsl/docbook/html/glossary.xsl diff -u phpdoc/xsl/docbook/html/glossary.xsl:1.1 phpdoc/xsl/docbook/html/glossary.xsl:1.2 --- phpdoc/xsl/docbook/html/glossary.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/glossary.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: glossary.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: glossary.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -44,7 +44,9 @@ </xsl:otherwise> </xsl:choose> - <xsl:call-template name="process.footnotes"/> + <xsl:if test="not(parent::article)"> + <xsl:call-template name="process.footnotes"/> + </xsl:if> </div> </xsl:template> @@ -105,34 +107,83 @@ --> <xsl:template match="glossentry"> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="glossentry/glossterm"> - <dt> - <xsl:apply-templates/> - </dt> -</xsl:template> + <xsl:choose> + <xsl:when test="$glossentry.show.acronym = 'primary'"> + <dt> + <xsl:call-template name="anchor"> + <xsl:with-param name="conditional"> + <xsl:choose> + <xsl:when test="$glossterm.auto.link != 0">0</xsl:when> + <xsl:otherwise>1</xsl:otherwise> + </xsl:choose> + </xsl:with-param> + </xsl:call-template> -<xsl:template match="glossentry/glossterm[1]" priority="2"> - <dt> - <xsl:call-template name="anchor"> - <xsl:with-param name="node" select=".."/> - <xsl:with-param name="conditional"> <xsl:choose> - <xsl:when test="$glossterm.auto.link != 0">0</xsl:when> - <xsl:otherwise>1</xsl:otherwise> + <xsl:when test="acronym|abbrev"> + <xsl:apply-templates select="acronym|abbrev"/> + <xsl:text> (</xsl:text> + <xsl:apply-templates select="glossterm"/> + <xsl:text>)</xsl:text> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="glossterm"/> + </xsl:otherwise> </xsl:choose> - </xsl:with-param> - </xsl:call-template> - <xsl:apply-templates/> - </dt> + </dt> + </xsl:when> + <xsl:when test="$glossentry.show.acronym = 'yes'"> + <dt> + <xsl:call-template name="anchor"> + <xsl:with-param name="conditional"> + <xsl:choose> + <xsl:when test="$glossterm.auto.link != 0">0</xsl:when> + <xsl:otherwise>1</xsl:otherwise> + </xsl:choose> + </xsl:with-param> + </xsl:call-template> + + <xsl:apply-templates select="glossterm"/> + + <xsl:if test="acronym|abbrev"> + <xsl:text> (</xsl:text> + <xsl:apply-templates select="acronym|abbrev"/> + <xsl:text>)</xsl:text> + </xsl:if> + </dt> + </xsl:when> + <xsl:otherwise> + <dt> + <xsl:call-template name="anchor"> + <xsl:with-param name="conditional"> + <xsl:choose> + <xsl:when test="$glossterm.auto.link != 0">0</xsl:when> + <xsl:otherwise>1</xsl:otherwise> + </xsl:choose> + </xsl:with-param> + </xsl:call-template> + + <xsl:apply-templates select="glossterm"/> + </dt> + </xsl:otherwise> + </xsl:choose> + + <xsl:apply-templates select="indexterm|revhistory|glosssee|glossdef"/> +</xsl:template> + +<xsl:template match="glossentry/glossterm"> + <xsl:apply-templates/> + <xsl:if test="following-sibling::glossterm">, </xsl:if> </xsl:template> <xsl:template match="glossentry/acronym"> + <xsl:apply-templates/> + <xsl:if test="following-sibling::acronym|following-sibling::abbrev">, </xsl:if> </xsl:template> <xsl:template match="glossentry/abbrev"> + <xsl:apply-templates/> + <xsl:if test="following-sibling::acronym|following-sibling::abbrev">, </xsl:if> </xsl:template> <xsl:template match="glossentry/revhistory"> @@ -142,6 +193,7 @@ <xsl:variable name="otherterm" select="@otherterm"/> <xsl:variable name="targets" select="//node()[@id=$otherterm]"/> <xsl:variable name="target" select="$targets[1]"/> + <dd> <p> <xsl:call-template name="gentext.template"> @@ -149,11 +201,18 @@ <xsl:with-param name="name" select="'see'"/> </xsl:call-template> <xsl:choose> - <xsl:when test="@otherterm"> + <xsl:when test="$target"> <a href="#{@otherterm}"> <xsl:apply-templates select="$target" mode="xref"/> </a> </xsl:when> + <xsl:when test="$otherterm != '' and not($target)"> + <xsl:message> + <xsl:text>Warning: glosssee @otherterm reference not found: </xsl:text> + <xsl:value-of select="$otherterm"/> + </xsl:message> + <xsl:apply-templates/> + </xsl:when> <xsl:otherwise> <xsl:apply-templates/> </xsl:otherwise> @@ -184,11 +243,18 @@ <xsl:variable name="target" select="$targets[1]"/> <xsl:choose> - <xsl:when test="@otherterm"> + <xsl:when test="$target"> <a href="#{@otherterm}"> <xsl:apply-templates select="$target" mode="xref"/> </a> </xsl:when> + <xsl:when test="$otherterm != '' and not($target)"> + <xsl:message> + <xsl:text>Warning: glossseealso @otherterm reference not found: </xsl:text> + <xsl:value-of select="$otherterm"/> + </xsl:message> + <xsl:apply-templates/> + </xsl:when> <xsl:otherwise> <xsl:apply-templates/> </xsl:otherwise> @@ -206,16 +272,6 @@ <!-- ==================================================================== --> -<xsl:template match="glossentry" mode="xref"> - <xsl:apply-templates select="./glossterm[1]" mode="xref"/> -</xsl:template> - -<xsl:template match="glossterm" mode="xref"> - <xsl:apply-templates/> -</xsl:template> - -<!-- ==================================================================== --> - <!-- Glossary collection --> <xsl:template match="glossary[@role='auto']" priority="2"> @@ -270,7 +326,9 @@ </xsl:otherwise> </xsl:choose> - <xsl:call-template name="process.footnotes"/> + <xsl:if test="not(parent::article)"> + <xsl:call-template name="process.footnotes"/> + </xsl:if> </div> </xsl:template> @@ -294,24 +352,6 @@ </xsl:for-each> </dl> </div> -</xsl:template> - -<xsl:template match="glossentry" mode="auto-glossary"> - <xsl:apply-templates mode="auto-glossary"/> -</xsl:template> - -<xsl:template match="glossentry/glossterm[1]" priority="2" mode="auto-glossary"> - <xsl:variable name="id"> - <xsl:text>gl.</xsl:text> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select=".."/> - </xsl:call-template> - </xsl:variable> - - <dt> - <a name="{$id}"/> - <xsl:apply-templates/> - </dt> </xsl:template> <!-- ==================================================================== --> Index: phpdoc/xsl/docbook/html/graphics.xsl diff -u phpdoc/xsl/docbook/html/graphics.xsl:1.1 phpdoc/xsl/docbook/html/graphics.xsl:1.2 --- phpdoc/xsl/docbook/html/graphics.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/graphics.xsl Sun Mar 9 09:56:38 2003 @@ -11,7 +11,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: graphics.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: graphics.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -24,7 +24,6 @@ ******************************************************************** --> <lxslt:component prefix="xtext" elements="insertfile"/> - <lxslt:component prefix="ximg" functions="new getWidth getDepth"/> <!-- ==================================================================== --> @@ -70,10 +69,6 @@ <!-- ==================================================================== --> -<xsl:param name="nominal.image.width" select="6 * $pixels.per.inch"/> -<xsl:param name="nominal.image.depth" select="4 * $pixels.per.inch"/> -<xsl:param name="make.graphic.viewport" select="1"/> - <xsl:template name="process.image"> <!-- When this template is called, the current node should be --> <!-- a graphic, inlinegraphic, imagedata, or videodata. All --> @@ -156,18 +151,57 @@ alignment. --> + <xsl:variable name="width-units"> + <xsl:choose> + <xsl:when test="$ignore.image.scaling != 0"></xsl:when> + <xsl:when test="@width"> + <xsl:call-template name="length-units"> + <xsl:with-param name="length" select="@width"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="not(@depth) and $default.image.width != ''"> + <xsl:call-template name="length-units"> + <xsl:with-param name="length" select="$default.image.width"/> + </xsl:call-template> + </xsl:when> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="width"> + <xsl:choose> + <xsl:when test="$ignore.image.scaling != 0"></xsl:when> + <xsl:when test="@width"> + <xsl:choose> + <xsl:when test="$width-units = '%'"> + <xsl:value-of select="@width"/> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="length-spec"> + <xsl:with-param name="length" select="@width"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:when test="not(@depth) and $default.image.width != ''"> + <xsl:value-of select="$default.image.width"/> + </xsl:when> + </xsl:choose> + </xsl:variable> + <xsl:variable name="scalefit"> <xsl:choose> + <xsl:when test="$ignore.image.scaling != 0">0</xsl:when> <xsl:when test="@contentwidth or @contentdepth">0</xsl:when> <xsl:when test="@scale">0</xsl:when> <xsl:when test="@scalefit"><xsl:value-of select="@scalefit"/></xsl:when> - <xsl:when test="@width or @depth">1</xsl:when> + <xsl:when test="$width != '' or @depth">1</xsl:when> <xsl:otherwise>0</xsl:otherwise> </xsl:choose> </xsl:variable> <xsl:variable name="scale"> <xsl:choose> + <xsl:when test="$ignore.image.scaling != 0">1.0</xsl:when> <xsl:when test="@contentwidth or @contentdepth">1.0</xsl:when> <xsl:when test="@scale"> <xsl:value-of select="@scale div 100.0"/> @@ -195,12 +229,22 @@ </xsl:variable> <xsl:variable name="intrinsicwidth"> + <!-- This funny compound test works around a bug in XSLTC --> <xsl:choose> - <xsl:when test="function-available('simg:getWidth')"> - <xsl:value-of select="simg:getWidth(simg:new($filename), $nominal.image.width)"/> - </xsl:when> - <xsl:when test="function-available('ximg:getWidth')"> - <xsl:value-of select="ximg:getWidth(ximg:new($filename), $nominal.image.width)"/> + <xsl:when test="$use.extensions != 0 and $graphicsize.extension != 0"> + <xsl:choose> + <xsl:when test="function-available('simg:getWidth')"> + <xsl:value-of select="simg:getWidth(simg:new($filename), + $nominal.image.width)"/> + </xsl:when> + <xsl:when test="function-available('ximg:getWidth')"> + <xsl:value-of select="ximg:getWidth(ximg:new($filename), + $nominal.image.width)"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$nominal.image.width"/> + </xsl:otherwise> + </xsl:choose> </xsl:when> <xsl:otherwise> <xsl:value-of select="$nominal.image.width"/> @@ -209,15 +253,25 @@ </xsl:variable> <xsl:variable name="intrinsicdepth"> + <!-- This funny compound test works around a bug in XSLTC --> <xsl:choose> - <xsl:when test="function-available('simg:getDepth')"> - <xsl:value-of select="simg:getDepth(simg:new($filename), $nominal.image.depth)"/> - </xsl:when> - <xsl:when test="function-available('ximg:getDepth')"> - <xsl:value-of select="ximg:getDepth(ximg:new($filename), $nominal.image.width)"/> + <xsl:when test="$use.extensions != 0 and $graphicsize.extension != 0"> + <xsl:choose> + <xsl:when test="function-available('simg:getDepth')"> + <xsl:value-of select="simg:getDepth(simg:new($filename), + $nominal.image.depth)"/> + </xsl:when> + <xsl:when test="function-available('ximg:getDepth')"> + <xsl:value-of select="ximg:getDepth(ximg:new($filename), + $nominal.image.width)"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$nominal.image.depth"/> + </xsl:otherwise> + </xsl:choose> </xsl:when> <xsl:otherwise> - <xsl:value-of select="$nominal.image.depth"/> + <xsl:value-of select="$nominal.image.width"/> </xsl:otherwise> </xsl:choose> </xsl:variable> @@ -268,35 +322,13 @@ </xsl:if> </xsl:variable> - <xsl:variable name="width-units"> - <xsl:if test="@width"> - <xsl:call-template name="length-units"> - <xsl:with-param name="length" select="@width"/> - </xsl:call-template> - </xsl:if> - </xsl:variable> - - <xsl:variable name="width"> - <xsl:if test="@width"> - <xsl:choose> - <xsl:when test="$width-units = '%'"> - <xsl:value-of select="@width"/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="length-spec"> - <xsl:with-param name="length" select="@width"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:if> - </xsl:variable> - <xsl:variable name="html.width"> <xsl:choose> + <xsl:when test="$ignore.image.scaling != 0"></xsl:when> <xsl:when test="$width-units = '%'"> <xsl:value-of select="$width"/> </xsl:when> - <xsl:when test="@width and @width != ''"> + <xsl:when test="$width != ''"> <xsl:variable name="width.in.points"> <xsl:call-template name="length-in-points"> <xsl:with-param name="length" select="$width"/> @@ -304,7 +336,7 @@ <xsl:with-param name="em.size" select="$points.per.em"/> </xsl:call-template> </xsl:variable> - <xsl:value-of select="$width.in.points div 72.0 * $pixels.per.inch"/> + <xsl:value-of select="round($width.in.points div 72.0 * $pixels.per.inch)"/> </xsl:when> <xsl:otherwise></xsl:otherwise> </xsl:choose> @@ -381,6 +413,7 @@ <xsl:variable name="html.depth"> <xsl:choose> + <xsl:when test="$ignore.image.scaling != 0"></xsl:when> <xsl:when test="$depth-units = '%'"> <xsl:value-of select="$depth"/> </xsl:when> @@ -392,7 +425,7 @@ <xsl:with-param name="em.size" select="$points.per.em"/> </xsl:call-template> </xsl:variable> - <xsl:value-of select="$depth.in.points div 72.0 * $pixels.per.inch"/> + <xsl:value-of select="round($depth.in.points div 72.0 * $pixels.per.inch)"/> </xsl:when> <xsl:otherwise></xsl:otherwise> </xsl:choose> @@ -400,9 +433,10 @@ <xsl:variable name="viewport"> <xsl:choose> - <xsl:when test="inlinegraphic - | ancestor::inlinemediaobject - | ancestor::inlineequation">0</xsl:when> + <xsl:when test="$ignore.image.scaling != 0">0</xsl:when> + <xsl:when test="local-name(.) = 'inlinegraphic' + or ancestor::inlinemediaobject + or ancestor::inlineequation">0</xsl:when> <xsl:otherwise> <xsl:value-of select="$make.graphic.viewport"/> </xsl:otherwise> @@ -433,7 +467,7 @@ <xsl:when test="@format = 'SVG'"> <object data="{$filename}" type="image/svg+xml"> <xsl:call-template name="process.image.attributes"> - <xsl:with-param name="alt" select="$alt"/> + <!--xsl:with-param name="alt" select="$alt"/ there's no alt here--> <xsl:with-param name="html.depth" select="$html.depth"/> <xsl:with-param name="html.width" select="$html.width"/> <xsl:with-param name="longdesc" select="$longdesc"/> @@ -443,19 +477,31 @@ <xsl:with-param name="scaled.contentwidth" select="$scaled.contentwidth"/> <xsl:with-param name="viewport" select="$viewport"/> </xsl:call-template> - <embed src="{$filename}" type="image/svg+xml"> - <xsl:call-template name="process.image.attributes"> - <xsl:with-param name="alt" select="$alt"/> - <xsl:with-param name="html.depth" select="$html.depth"/> - <xsl:with-param name="html.width" select="$html.width"/> - <xsl:with-param name="longdesc" select="$longdesc"/> - <xsl:with-param name="scale" select="$scale"/> - <xsl:with-param name="scalefit" select="$scalefit"/> - <xsl:with-param name="scaled.contentdepth" select="$scaled.contentdepth"/> - <xsl:with-param name="scaled.contentwidth" select="$scaled.contentwidth"/> - <xsl:with-param name="viewport" select="$viewport"/> - </xsl:call-template> - </embed> + <xsl:if test="@align"> + <xsl:attribute name="align"> + <xsl:choose> + <xsl:when test="@align = 'center'">middle</xsl:when> + <xsl:otherwise> + <xsl:value-of select="@align"/> + </xsl:otherwise> + </xsl:choose> + </xsl:attribute> + </xsl:if> + <xsl:if test="$use.embed.for.svg != 0"> + <embed src="{$filename}" type="image/svg+xml"> + <xsl:call-template name="process.image.attributes"> + <!--xsl:with-param name="alt" select="$alt"/ there's no alt here --> + <xsl:with-param name="html.depth" select="$html.depth"/> + <xsl:with-param name="html.width" select="$html.width"/> + <xsl:with-param name="longdesc" select="$longdesc"/> + <xsl:with-param name="scale" select="$scale"/> + <xsl:with-param name="scalefit" select="$scalefit"/> + <xsl:with-param name="scaled.contentdepth" select="$scaled.contentdepth"/> + <xsl:with-param name="scaled.contentwidth" select="$scaled.contentwidth"/> + <xsl:with-param name="viewport" select="$viewport"/> + </xsl:call-template> + </embed> + </xsl:if> </object> </xsl:when> <xsl:otherwise> @@ -463,8 +509,29 @@ <xsl:attribute name="src"> <xsl:value-of select="$filename"/> </xsl:attribute> + + <xsl:if test="@align"> + <xsl:attribute name="align"> + <xsl:choose> + <xsl:when test="@align = 'center'">middle</xsl:when> + <xsl:otherwise> + <xsl:value-of select="@align"/> + </xsl:otherwise> + </xsl:choose> + </xsl:attribute> + </xsl:if> + <xsl:call-template name="process.image.attributes"> - <xsl:with-param name="alt" select="$alt"/> + <xsl:with-param name="alt"> + <xsl:choose> + <xsl:when test="$alt != ''"> + <xsl:copy-of select="$alt"/> + </xsl:when> + <xsl:when test="ancestor::figure"> + <xsl:value-of select="normalize-space(ancestor::figure/title)"/> + </xsl:when> + </xsl:choose> + </xsl:with-param> <xsl:with-param name="html.depth" select="$html.depth"/> <xsl:with-param name="html.width" select="$html.width"/> <xsl:with-param name="longdesc" select="$longdesc"/> @@ -479,8 +546,24 @@ </xsl:choose> </xsl:variable> + + <xsl:variable name="bgcolor"> + <xsl:call-template name="dbhtml-attribute"> + <xsl:with-param name="pis" + select="../processing-instruction('dbhtml')"/> + <xsl:with-param name="attribute" select="'background-color'"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="use.viewport" + select="$viewport != 0 + and ($html.width != '' + or ($html.depth != '' and $depth-units != '%') + or $bgcolor != '' + or @valign)"/> + <xsl:choose> - <xsl:when test="$viewport != 0"> + <xsl:when test="$use.viewport"> <table border="0" summary="manufactured viewport for HTML img" cellspacing="0" cellpadding="0"> <xsl:if test="$html.width != ''"> @@ -491,22 +574,36 @@ <tr> <xsl:if test="$html.depth != '' and $depth-units != '%'"> <!-- don't do this for percentages because browsers get confused --> - <xsl:attribute name="height"> - <xsl:value-of select="$html.depth"/> - </xsl:attribute> + <xsl:choose> + <xsl:when test="$css.decoration != 0"> + <xsl:attribute name="style"> + <xsl:text>height: </xsl:text> + <xsl:value-of select="$html.depth"/> + <xsl:text>px</xsl:text> + </xsl:attribute> + </xsl:when> + <xsl:otherwise> + <xsl:attribute name="height"> + <xsl:value-of select="$html.depth"/> + </xsl:attribute> + </xsl:otherwise> + </xsl:choose> </xsl:if> <td> - <xsl:variable name="bgcolor"> - <xsl:call-template name="dbhtml-attribute"> - <xsl:with-param name="pis" - select="../processing-instruction('dbhtml')"/> - <xsl:with-param name="attribute" select="'background-color'"/> - </xsl:call-template> - </xsl:variable> <xsl:if test="$bgcolor != ''"> - <xsl:attribute name="bgcolor"> - <xsl:value-of select="$bgcolor"/> - </xsl:attribute> + <xsl:choose> + <xsl:when test="$css.decoration != 0"> + <xsl:attribute name="style"> + <xsl:text>background-color: </xsl:text> + <xsl:value-of select="$bgcolor"/> + </xsl:attribute> + </xsl:when> + <xsl:otherwise> + <xsl:attribute name="bgcolor"> + <xsl:value-of select="$bgcolor"/> + </xsl:attribute> + </xsl:otherwise> + </xsl:choose> </xsl:if> <xsl:if test="@align"> <xsl:attribute name="align"> @@ -555,7 +652,7 @@ </xsl:if> </xsl:when> - <xsl:when test="$scale != 1.0"> + <xsl:when test="number($scale) != 1.0"> <!-- scaling is always uniform, so we only have to specify one dimension --> <!-- ignore @scalefit if specified --> <xsl:attribute name="width"> @@ -611,8 +708,8 @@ </xsl:when> <xsl:when test="$scaled.contentdepth != '' and $html.depth != ''"> - <xsl:attribute name="width"> - <xsl:value-of select="$html.width"/> + <xsl:attribute name="height"> + <xsl:value-of select="$html.depth"/> </xsl:attribute> </xsl:when> </xsl:choose> @@ -633,7 +730,12 @@ <xsl:if test="@align and $viewport = 0"> <xsl:attribute name="align"> - <xsl:value-of select="@align"/> + <xsl:choose> + <xsl:when test="@align = 'center'">middle</xsl:when> + <xsl:otherwise> + <xsl:value-of select="@align"/> + </xsl:otherwise> + </xsl:choose> </xsl:attribute> </xsl:if> </xsl:template> @@ -647,10 +749,15 @@ <xsl:call-template name="process.image"/> </xsl:when> <xsl:otherwise> - <p> + <div> + <xsl:if test="@align"> + <xsl:attribute name="align"> + <xsl:value-of select="@align"/> + </xsl:attribute> + </xsl:if> <xsl:call-template name="anchor"/> <xsl:call-template name="process.image"/> - </p> + </div> </xsl:otherwise> </xsl:choose> </xsl:template> @@ -705,11 +812,35 @@ <!-- ==================================================================== --> <xsl:template match="mediaobject|mediaobjectco"> + + <xsl:variable name="olist" select="imageobject|imageobjectco + |videoobject|audioobject + |textobject"/> + + <xsl:variable name="object.index"> + <xsl:call-template name="select.mediaobject.index"> + <xsl:with-param name="olist" select="$olist"/> + <xsl:with-param name="count" select="1"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="object" select="$olist[position() = $object.index]"/> + + <xsl:variable name="align"> + <xsl:value-of select="$object/imagedata[@align][1]/@align"/> + </xsl:variable> + <div class="{name(.)}"> + <xsl:if test="$align != '' "> + <xsl:attribute name="align"> + <xsl:value-of select="$align"/> + </xsl:attribute> + </xsl:if> <xsl:if test="@id"> <a name="{@id}"/> </xsl:if> - <xsl:call-template name="select.mediaobject"/> + + <xsl:apply-templates select="$object"/> <xsl:apply-templates select="caption"/> </div> </xsl:template> @@ -791,9 +922,13 @@ </xsl:call-template> </xsl:variable> + <xsl:variable name="phrases" + select="ancestor::mediaobject/textobject[phrase] + |ancestor::mediaobjectco/textobject[phrase]"/> + <xsl:call-template name="process.image"> <xsl:with-param name="alt"> - <xsl:apply-templates select="(../../textobject[not(@role) or @role!='tex']/phrase)[1]"/> + <xsl:apply-templates select="$phrases[not(@role) or @role!='tex'][1]"/> </xsl:with-param> <xsl:with-param name="longdesc"> <xsl:call-template name="write.longdesc"> @@ -867,7 +1002,11 @@ <xsl:with-param name="content"> <html> <head> - <title>Long Description</title> + <xsl:call-template name="system.head.content"/> + <xsl:call-template name="head.content"> + <xsl:with-param name="title" select="'Long Description'"/> + </xsl:call-template> + <xsl:call-template name="user.head.content"/> </head> <body> <xsl:call-template name="body.attributes"/> Index: phpdoc/xsl/docbook/html/html-rtf.xsl diff -u phpdoc/xsl/docbook/html/html-rtf.xsl:1.1 phpdoc/xsl/docbook/html/html-rtf.xsl:1.2 --- phpdoc/xsl/docbook/html/html-rtf.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/html-rtf.xsl Sun Mar 9 09:56:38 2003 @@ -32,11 +32,12 @@ </xsl:copy> </xsl:template> -<xsl:template match="p" mode="insert.html.p"> +<xsl:template xmlns:html="http://www.w3.org/1999/xhtml" + match="html:p|p" mode="insert.html.p"> <xsl:param name="mark" select="'?'"/> <xsl:copy> <xsl:copy-of select="@*"/> - <xsl:if test="not(preceding::p)"> + <xsl:if test="not(preceding::p|preceding::html:p)"> <xsl:copy-of select="$mark"/> </xsl:if> <xsl:apply-templates mode="insert.html.p"> @@ -106,12 +107,19 @@ </xsl:choose> </xsl:template> -<xsl:template match="p" mode="unwrap.p"> - <xsl:variable name="blocks" select="div|p|blockquote|table"/> - +<xsl:template xmlns:html="http://www.w3.org/1999/xhtml" + match="html:p|p" mode="unwrap.p"> + <!-- xmlns:html is necessary for the xhtml stylesheet case --> + <xsl:variable name="blocks" xmlns:html="http://www.w3.org/1999/xhtml" + select="address|blockquote|div|hr|h1|h2|h3|h4|h5|h6 + |layer|p|pre|table|dl|menu|ol|ul|form + |html:address|html:blockquote|html:div|html:hr + |html:h1|html:h2|html:h3|html:h4|html:h5|html:h6 + |html:layer|html:p|html:pre|html:table|html:dl + |html:menu|html:ol|html:ul|html:form"/> <xsl:choose> <xsl:when test="$blocks"> - <xsl:call-template name="unwrap.nodes"> + <xsl:call-template name="unwrap.p.nodes"> <xsl:with-param name="wrap" select="."/> <xsl:with-param name="first" select="1"/> <xsl:with-param name="nodes" select="node()"/> @@ -138,7 +146,7 @@ <xsl:copy/> </xsl:template> -<xsl:template name="unwrap.nodes"> +<xsl:template name="unwrap.p.nodes"> <xsl:param name="wrap" select="."/> <xsl:param name="first" select="0"/> <xsl:param name="nodes"/> @@ -152,22 +160,24 @@ and function-available('set:trailing')"> <xsl:choose> <xsl:when test="$blocks"> - <xsl:variable name="leading" select="set:leading($nodes,$blocks)"/> - <xsl:variable name="trailing" select="set:trailing($nodes,$blocks)"/> + <xsl:variable name="leading" select="set:leading($nodes,$block)"/> + <xsl:variable name="trailing" select="set:trailing($nodes,$block)"/> - <xsl:element name="{local-name($wrap)}" namespace="{namespace-uri($wrap)}"> - <xsl:for-each select="$wrap/@*"> - <xsl:if test="$first != 0 or local-name(.) != 'id'"> - <xsl:copy/> - </xsl:if> - </xsl:for-each> - <xsl:apply-templates select="$leading" mode="unwrap.p"/> - </xsl:element> + <xsl:if test="($wrap/@id and $first = 1) or $leading"> + <xsl:element name="{local-name($wrap)}" namespace="{namespace-uri($wrap)}"> + <xsl:for-each select="$wrap/@*"> + <xsl:if test="$first != 0 or local-name(.) != 'id'"> + <xsl:copy/> + </xsl:if> + </xsl:for-each> + <xsl:apply-templates select="$leading" mode="unwrap.p"/> + </xsl:element> + </xsl:if> <xsl:apply-templates select="$block" mode="unwrap.p"/> <xsl:if test="$trailing"> - <xsl:call-template name="unwrap.nodes"> + <xsl:call-template name="unwrap.p.nodes"> <xsl:with-param name="wrap" select="$wrap"/> <xsl:with-param name="nodes" select="$trailing"/> <xsl:with-param name="blocks" select="$blocks[position() > 1]"/> @@ -176,17 +186,99 @@ </xsl:when> <xsl:otherwise> - <xsl:element name="{local-name($wrap)}" namespace="{namespace-uri($wrap)}"> - <xsl:for-each select="$wrap/@*"> - <xsl:if test="$first != 0 or local-name(.) != 'id'"> - <xsl:copy/> - </xsl:if> - </xsl:for-each> - <xsl:apply-templates select="$nodes" mode="unwrap.p"/> - </xsl:element> + <xsl:if test="($wrap/@id and $first = 1) or $nodes"> + <xsl:element name="{local-name($wrap)}" namespace="{namespace-uri($wrap)}"> + <xsl:for-each select="$wrap/@*"> + <xsl:if test="$first != 0 or local-name(.) != 'id'"> + <xsl:copy/> + </xsl:if> + </xsl:for-each> + <xsl:apply-templates select="$nodes" mode="unwrap.p"/> + </xsl:element> + </xsl:if> </xsl:otherwise> </xsl:choose> </xsl:if> +</xsl:template> + +<!-- ==================================================================== --> +<!-- make.verbatim.mode replaces spaces and newlines --> + +<xsl:template match="/" mode="make.verbatim.mode"> + <xsl:apply-templates mode="make.verbatim.mode"/> +</xsl:template> + +<xsl:template match="*" mode="make.verbatim.mode"> + <xsl:copy> + <xsl:copy-of select="@*"/> + <xsl:apply-templates mode="make.verbatim.mode"/> + </xsl:copy> +</xsl:template> + +<xsl:template match="processing-instruction()|comment()" mode="make.verbatim.mode"> + <xsl:copy/> +</xsl:template> + +<xsl:template match="text()" mode="make.verbatim.mode"> + <xsl:variable name="text" select="translate(., ' ', ' ')"/> + + <xsl:choose> + <xsl:when test="not(contains($text, '
'))"> + <xsl:value-of select="$text"/> + </xsl:when> + + <xsl:otherwise> + <xsl:variable name="len" select="string-length($text)"/> + + <xsl:choose> + <xsl:when test="$len = 1"> + <br/><xsl:text>
</xsl:text> + </xsl:when> + + <xsl:otherwise> + <xsl:variable name="half" select="$len div 2"/> + <xsl:call-template name="make-verbatim-recursive"> + <xsl:with-param name="text" select="substring($text, 1, $half)"/> + </xsl:call-template> + <xsl:call-template name="make-verbatim-recursive"> + <xsl:with-param name="text" + select="substring($text, ($half + 1), $len)"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="make-verbatim-recursive"> + <xsl:param name="text" select="''"/> + + <xsl:choose> + <xsl:when test="not(contains($text, '
'))"> + <xsl:value-of select="$text"/> + </xsl:when> + + <xsl:otherwise> + <xsl:variable name="len" select="string-length($text)"/> + + <xsl:choose> + <xsl:when test="$len = 1"> + <br/><xsl:text>
</xsl:text> + </xsl:when> + + <xsl:otherwise> + <xsl:variable name="half" select="$len div 2"/> + <xsl:call-template name="make-verbatim-recursive"> + <xsl:with-param name="text" select="substring($text, 1, $half)"/> + </xsl:call-template> + <xsl:call-template name="make-verbatim-recursive"> + <xsl:with-param name="text" + select="substring($text, ($half + 1), $len)"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> </xsl:template> <!-- ==================================================================== --> Index: phpdoc/xsl/docbook/html/html.xsl diff -u phpdoc/xsl/docbook/html/html.xsl:1.1 phpdoc/xsl/docbook/html/html.xsl:1.2 --- phpdoc/xsl/docbook/html/html.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/html.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: html.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: html.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. Index: phpdoc/xsl/docbook/html/index.xsl diff -u phpdoc/xsl/docbook/html/index.xsl:1.1 phpdoc/xsl/docbook/html/index.xsl:1.2 --- phpdoc/xsl/docbook/html/index.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/index.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: index.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: index.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -14,7 +14,7 @@ <!-- ==================================================================== --> -<xsl:template match="index|setindex"> +<xsl:template match="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. Unless generate.index --> @@ -29,15 +29,49 @@ </xsl:attribute> </xsl:if> - <xsl:call-template name="anchor"/> <xsl:call-template name="index.titlepage"/> <xsl:apply-templates/> <xsl:if test="count(indexentry) = 0 and count(indexdiv) = 0"> - <xsl:call-template name="generate-index"/> + <xsl:call-template name="generate-index"> + <xsl:with-param name="scope" select="(ancestor::book|/)[last()]"/> + </xsl:call-template> </xsl:if> - <xsl:call-template name="process.footnotes"/> + <xsl:if test="not(parent::article)"> + <xsl:call-template name="process.footnotes"/> + </xsl:if> + </div> + </xsl:if> +</xsl:template> + +<xsl:template match="setindex"> + <!-- 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. Unless generate.index --> + <!-- is non-zero, in which case, this is where the automatically --> + <!-- generated index should go. --> + + <xsl:if test="count(*)>0 or $generate.index != '0'"> + <div class="{name(.)}"> + <xsl:if test="$generate.id.attributes != 0"> + <xsl:attribute name="id"> + <xsl:call-template name="object.id"/> + </xsl:attribute> + </xsl:if> + + <xsl:call-template name="setindex.titlepage"/> + <xsl:apply-templates/> + + <xsl:if test="count(indexentry) = 0 and count(indexdiv) = 0"> + <xsl:call-template name="generate-index"> + <xsl:with-param name="scope" select="/"/> + </xsl:call-template> + </xsl:if> + + <xsl:if test="not(parent::article)"> + <xsl:call-template name="process.footnotes"/> + </xsl:if> </div> </xsl:if> </xsl:template> Index: phpdoc/xsl/docbook/html/info.xsl diff -u phpdoc/xsl/docbook/html/info.xsl:1.1 phpdoc/xsl/docbook/html/info.xsl:1.2 --- phpdoc/xsl/docbook/html/info.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/info.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: info.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: info.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. Index: phpdoc/xsl/docbook/html/inline.xsl diff -u phpdoc/xsl/docbook/html/inline.xsl:1.1 phpdoc/xsl/docbook/html/inline.xsl:1.2 --- phpdoc/xsl/docbook/html/inline.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/inline.xsl Sun Mar 9 09:56:38 2003 @@ -1,11 +1,12 @@ <?xml version='1.0'?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xlink='http://www.w3.org/1999/xlink' - exclude-result-prefixes="xlink" + xmlns:suwl="http://nwalsh.com/xslt/ext/com.nwalsh.saxon.UnwrapLinks" + exclude-result-prefixes="xlink suwl" version='1.0'> <!-- ******************************************************************** - $Id: inline.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: inline.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -20,62 +21,74 @@ <xsl:apply-templates/> </xsl:param> - <xsl:choose> - <xsl:when test="$node/@xlink:type='simple' and $node/@xlink:href"> - <a> - <xsl:if test="@xlink.title"> - <xsl:attribute name="title"> - <xsl:value-of select="@xlink:title"/> - </xsl:attribute> - </xsl:if> + <xsl:variable name="link"> + <xsl:choose> + <xsl:when test="$node/@xlink:href + and (not($node/@xlink:type) or $node/@xlink:type='simple')"> + <a> + <xsl:if test="@xlink.title"> + <xsl:attribute name="title"> + <xsl:value-of select="@xlink:title"/> + </xsl:attribute> + </xsl:if> - <xsl:attribute name="href"> - <xsl:choose> - <!-- if the href starts with # and does not contain an "(" --> - <!-- or if the href starts with #xpointer(id(, it's just an ID --> - <xsl:when test="starts-with(@xlink:href,'#') - and (not(contains(@xlink:href,'(')) - or starts-with(@xlink:href,'#xpointer(id('))"> - <xsl:variable name="idref"> - <xsl:call-template name="xpointer.idref"> - <xsl:with-param name="xpointer" select="@xlink:href"/> - </xsl:call-template> - </xsl:variable> + <xsl:attribute name="href"> + <xsl:choose> + <!-- if the href starts with # and does not contain an "(" --> + <!-- or if the href starts with #xpointer(id(, it's just an ID --> + <xsl:when test="starts-with(@xlink:href,'#') + and (not(contains(@xlink:href,'(')) + or starts-with(@xlink:href,'#xpointer(id('))"> + <xsl:variable name="idref"> + <xsl:call-template name="xpointer.idref"> + <xsl:with-param name="xpointer" select="@xlink:href"/> + </xsl:call-template> + </xsl:variable> - <xsl:variable name="targets" select="key('id',$idref)"/> - <xsl:variable name="target" select="$targets[1]"/> + <xsl:variable name="targets" select="key('id',$idref)"/> + <xsl:variable name="target" select="$targets[1]"/> - <xsl:call-template name="check.id.unique"> - <xsl:with-param name="linkend" select="@linkend"/> - </xsl:call-template> + <xsl:call-template name="check.id.unique"> + <xsl:with-param name="linkend" select="@linkend"/> + </xsl:call-template> - <xsl:choose> - <xsl:when test="count($target) = 0"> - <xsl:message> - <xsl:text>XLink to nonexistent id: </xsl:text> - <xsl:value-of select="$idref"/> - </xsl:message> - <xsl:text>???</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="href.target"> - <xsl:with-param name="object" select="$target"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - - <!-- otherwise it's a URI --> - <xsl:otherwise> - <xsl:value-of select="@xlink:href"/> - </xsl:otherwise> - </xsl:choose> - </xsl:attribute> + <xsl:choose> + <xsl:when test="count($target) = 0"> + <xsl:message> + <xsl:text>XLink to nonexistent id: </xsl:text> + <xsl:value-of select="$idref"/> + </xsl:message> + <xsl:text>???</xsl:text> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="href.target"> + <xsl:with-param name="object" select="$target"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + + <!-- otherwise it's a URI --> + <xsl:otherwise> + <xsl:value-of select="@xlink:href"/> + </xsl:otherwise> + </xsl:choose> + </xsl:attribute> + <xsl:copy-of select="$content"/> + </a> + </xsl:when> + <xsl:otherwise> <xsl:copy-of select="$content"/> - </a> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:choose> + <xsl:when test="function-available('suwl:unwrapLinks')"> + <xsl:copy-of select="suwl:unwrapLinks($link)"/> </xsl:when> <xsl:otherwise> - <xsl:copy-of select="$content"/> + <xsl:copy-of select="$link"/> </xsl:otherwise> </xsl:choose> </xsl:template> @@ -89,7 +102,7 @@ </xsl:with-param> </xsl:call-template> </xsl:param> - <xsl:copy-of select="$content"/> + <span class="{local-name(.)}"><xsl:copy-of select="$content"/></span> </xsl:template> <xsl:template name="inline.monoseq"> @@ -101,7 +114,7 @@ </xsl:with-param> </xsl:call-template> </xsl:param> - <tt><xsl:copy-of select="$content"/></tt> + <tt class="{local-name(.)}"><xsl:copy-of select="$content"/></tt> </xsl:template> <xsl:template name="inline.boldseq"> @@ -122,7 +135,7 @@ <xsl:copy-of select="$content"/> </xsl:when> <xsl:otherwise> - <b><xsl:copy-of select="$content"/></b> + <b class="{local-name(.)}"><xsl:copy-of select="$content"/></b> </xsl:otherwise> </xsl:choose> </xsl:template> @@ -136,7 +149,7 @@ </xsl:with-param> </xsl:call-template> </xsl:param> - <i><xsl:copy-of select="$content"/></i> + <i class="{local-name(.)}"><xsl:copy-of select="$content"/></i> </xsl:template> <xsl:template name="inline.boldmonoseq"> @@ -156,10 +169,10 @@ or local-name(../..) = 'example' or local-name(../..) = 'table' or local-name(../..) = 'formalpara')"> - <tt><xsl:copy-of select="$content"/></tt> + <tt class="{local-name(.)}"><xsl:copy-of select="$content"/></tt> </xsl:when> <xsl:otherwise> - <b><tt><xsl:copy-of select="$content"/></tt></b> + <b class="{local-name(.)}"><tt><xsl:copy-of select="$content"/></tt></b> </xsl:otherwise> </xsl:choose> </xsl:template> @@ -173,7 +186,7 @@ </xsl:with-param> </xsl:call-template> </xsl:param> - <i><tt><xsl:copy-of select="$content"/></tt></i> + <i class="{local-name(.)}"><tt><xsl:copy-of select="$content"/></tt></i> </xsl:template> <xsl:template name="inline.superscriptseq"> @@ -204,15 +217,24 @@ <!-- some special cases --> <xsl:template match="author"> - <span class="{name(.)}"><xsl:call-template name="person.name"/></span> + <span class="{name(.)}"> + <xsl:call-template name="anchor"/> + <xsl:call-template name="person.name"/> + </span> </xsl:template> <xsl:template match="editor"> - <span class="{name(.)}"><xsl:call-template name="person.name"/></span> + <span class="{name(.)}"> + <xsl:call-template name="anchor"/> + <xsl:call-template name="person.name"/> + </span> </xsl:template> <xsl:template match="othercredit"> - <span class="{name(.)}"><xsl:call-template name="person.name"/></span> + <span class="{name(.)}"> + <xsl:call-template name="anchor"/> + <xsl:call-template name="person.name"/> + </span> </xsl:template> <xsl:template match="authorinitials"> @@ -277,6 +299,10 @@ <xsl:call-template name="inline.charseq"/> </xsl:template> +<xsl:template match="errortext"> + <xsl:call-template name="inline.charseq"/> +</xsl:template> + <xsl:template match="envar"> <xsl:call-template name="inline.monoseq"/> </xsl:template> @@ -522,6 +548,9 @@ </xsl:otherwise> </xsl:choose> </xsl:when> + <xsl:when test="@role and $emphasis.propagates.style != 0"> + <xsl:apply-templates/> + </xsl:when> <xsl:otherwise> <em><xsl:apply-templates/></em> </xsl:otherwise> @@ -532,7 +561,12 @@ </xsl:template> <xsl:template match="foreignphrase"> - <xsl:call-template name="inline.italicseq"/> + <span class="foreignphrase"> + <xsl:if test="@lang or @xml:lang"> + <xsl:call-template name="language.attribute"/> + </xsl:if> + <xsl:call-template name="inline.italicseq"/> + </span> </xsl:template> <xsl:template match="markup"> @@ -541,6 +575,9 @@ <xsl:template match="phrase"> <span> + <xsl:if test="@lang or @xml:lang"> + <xsl:call-template name="language.attribute"/> + </xsl:if> <xsl:if test="@role and $phrase.propagates.style != 0"> <xsl:attribute name="class"> <xsl:value-of select="@role"/> @@ -584,7 +621,9 @@ </xsl:template> <xsl:template match="lineannotation"> - <xsl:call-template name="inline.charseq"/> + <i class="{local-name(.)}"> + <xsl:call-template name="inline.charseq"/> + </i> </xsl:template> <xsl:template match="superscript"> @@ -729,15 +768,16 @@ <xsl:variable name="term"> <xsl:choose> <xsl:when test="@baseform"> - <xsl:value-of select="@baseform"/> + <xsl:value-of select="normalize-space(@baseform)"/> </xsl:when> <xsl:otherwise> - <xsl:value-of select="."/> + <xsl:value-of select="normalize-space(.)"/> </xsl:otherwise> </xsl:choose> </xsl:variable> <xsl:variable name="targets" - select="//glossentry[glossterm=$term or glossterm/@baseform=$term]"/> + select="//glossentry[normalize-space(glossterm)=$term + or normalize-space(glossterm/@baseform)=$term]"/> <xsl:variable name="target" select="$targets[1]"/> <xsl:choose> @@ -914,9 +954,11 @@ <xsl:choose> <xsl:when test="name($node)='guimenuitem' or name($node)='guisubmenu'"> - <xsl:text>-></xsl:text> + <xsl:value-of select="$menuchoice.menu.separator"/> </xsl:when> - <xsl:otherwise>+</xsl:otherwise> + <xsl:otherwise> + <xsl:value-of select="$menuchoice.separator"/> + </xsl:otherwise> </xsl:choose> <xsl:apply-templates select="$node"/> <xsl:call-template name="process.menuchoice"> Index: phpdoc/xsl/docbook/html/keywords.xsl diff -u phpdoc/xsl/docbook/html/keywords.xsl:1.1 phpdoc/xsl/docbook/html/keywords.xsl:1.2 --- phpdoc/xsl/docbook/html/keywords.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/keywords.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: keywords.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: keywords.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. Index: phpdoc/xsl/docbook/html/lists.xsl diff -u phpdoc/xsl/docbook/html/lists.xsl:1.1 phpdoc/xsl/docbook/html/lists.xsl:1.2 --- phpdoc/xsl/docbook/html/lists.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/lists.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: lists.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: lists.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -15,16 +15,21 @@ <!-- ==================================================================== --> <xsl:template match="itemizedlist"> - <xsl:variable name="itemsymbol"> - <xsl:call-template name="list.itemsymbol"/> - </xsl:variable> - <div class="{name(.)}"> <xsl:call-template name="anchor"/> <xsl:if test="title"> - <xsl:apply-templates select="title"/> + <xsl:call-template name="formal.object.heading"/> </xsl:if> - <ul type="{$itemsymbol}"> + + <xsl:apply-templates select="*[not(self::listitem or self::title)]"/> + + <ul> + <xsl:if test="$css.decoration != 0"> + <xsl:attribute name="type"> + <xsl:call-template name="list.itemsymbol"/> + </xsl:attribute> + </xsl:if> + <xsl:if test="@spacing='compact'"> <xsl:attribute name="compact"> <xsl:value-of select="@spacing"/> @@ -36,7 +41,7 @@ </xsl:template> <xsl:template match="itemizedlist/title"> - <p class="title"><b><xsl:apply-templates/></b></p> + <!-- nop --> </xsl:template> <xsl:template match="itemizedlist/listitem"> @@ -56,6 +61,7 @@ <xsl:variable name="cssmark"> <xsl:choose> + <xsl:when test="$usemark = 'opencircle'">circle</xsl:when> <xsl:when test="$usemark = 'bullet'">disc</xsl:when> <xsl:when test="$usemark = 'box'">square</xsl:when> <xsl:otherwise> @@ -93,29 +99,6 @@ </li> </xsl:template> -<xsl:template name="orderedlist-starting-number"> - <xsl:param name="list" select="."/> - <xsl:choose> - <xsl:when test="$list/@continuation != 'continues'">1</xsl:when> - <xsl:otherwise> - <xsl:variable name="prevlist" - select="$list/preceding::orderedlist[1]"/> - <xsl:choose> - <xsl:when test="count($prevlist) = 0">2</xsl:when> - <xsl:otherwise> - <xsl:variable name="prevlength" select="count($prevlist/listitem)"/> - <xsl:variable name="prevstart"> - <xsl:call-template name="orderedlist-starting-number"> - <xsl:with-param name="list" select="$prevlist"/> - </xsl:call-template> - </xsl:variable> - <xsl:value-of select="$prevstart + $prevlength"/> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - <xsl:template match="orderedlist"> <xsl:variable name="start"> <xsl:choose> @@ -150,32 +133,36 @@ <div class="{name(.)}"> <xsl:call-template name="anchor"/> + <xsl:if test="title"> - <xsl:apply-templates select="title"/> + <xsl:call-template name="formal.object.heading"/> </xsl:if> + + <xsl:apply-templates select="*[not(self::listitem or self::title)]"/> + <ol> - <xsl:if test="$start != '1'"> - <xsl:attribute name="start"> - <xsl:value-of select="$start"/> - </xsl:attribute> - </xsl:if> - <xsl:if test="$numeration != ''"> - <xsl:attribute name="type"> - <xsl:value-of select="$type"/> - </xsl:attribute> - </xsl:if> - <xsl:if test="@spacing='compact'"> - <xsl:attribute name="compact"> - <xsl:value-of select="compact"/> - </xsl:attribute> - </xsl:if> - <xsl:apply-templates select="listitem"/> + <xsl:if test="$start != '1'"> + <xsl:attribute name="start"> + <xsl:value-of select="$start"/> + </xsl:attribute> + </xsl:if> + <xsl:if test="$numeration != ''"> + <xsl:attribute name="type"> + <xsl:value-of select="$type"/> + </xsl:attribute> + </xsl:if> + <xsl:if test="@spacing='compact'"> + <xsl:attribute name="compact"> + <xsl:value-of select="@spacing"/> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates select="listitem"/> </ol> </div> </xsl:template> <xsl:template match="orderedlist/title"> - <p class="title"><b><xsl:apply-templates/></b></p> + <!-- nop --> </xsl:template> <xsl:template match="orderedlist/listitem"> @@ -257,7 +244,7 @@ <div class="{name(.)}"> <xsl:call-template name="anchor"/> <xsl:if test="title"> - <xsl:apply-templates select="title"/> + <xsl:call-template name="formal.object.heading"/> </xsl:if> <xsl:choose> @@ -273,7 +260,7 @@ <xsl:value-of select="$table-summary"/> </xsl:attribute> </xsl:if> - <col align="left"> + <col align="left" valign="top"> <xsl:if test="$term-width != ''"> <xsl:attribute name="width"> <xsl:value-of select="$term-width"/> @@ -295,7 +282,7 @@ </xsl:template> <xsl:template match="variablelist/title"> - <p class="title"><b><xsl:apply-templates/></b></p> + <!-- nop --> </xsl:template> <xsl:template match="listitem" mode="xref"> @@ -314,6 +301,12 @@ </xsl:when> <xsl:otherwise> <p> + <xsl:if test="@role and $para.propagates.style != 0"> + <xsl:attribute name="class"> + <xsl:value-of select="@role"/> + </xsl:attribute> + </xsl:if> + <xsl:call-template name="anchor"/> <xsl:apply-templates/> </p> @@ -348,6 +341,12 @@ </xsl:call-template> </xsl:variable> <tr> + <xsl:call-template name="tr.attributes"> + <xsl:with-param name="rownum"> + <xsl:number from="variablelist" count="varlistentry"/> + </xsl:with-param> + </xsl:call-template> + <td> <xsl:call-template name="anchor"/> <xsl:choose> @@ -476,6 +475,11 @@ <xsl:if test="$cell <= count($members)"> <tr> + <xsl:call-template name="tr.attributes"> + <xsl:with-param name="row" select="$members[1]"/> + <xsl:with-param name="rownum" select="(($cell - 1) div $cols) + 1"/> + </xsl:call-template> + <xsl:call-template name="simplelist.horiz.row"> <xsl:with-param name="cols" select="$cols"/> <xsl:with-param name="cell" select="$cell"/> @@ -525,6 +529,11 @@ <xsl:if test="$cell <= $rows"> <tr> + <xsl:call-template name="tr.attributes"> + <xsl:with-param name="row" select="$members[1]"/> + <xsl:with-param name="rownum" select="$cell"/> + </xsl:call-template> + <xsl:call-template name="simplelist.vert.row"> <xsl:with-param name="cols" select="$cols"/> <xsl:with-param name="rows" select="$rows"/> @@ -570,6 +579,7 @@ </xsl:template> <xsl:template match="member"> + <xsl:call-template name="anchor"/> <xsl:apply-templates/> </xsl:template> @@ -609,14 +619,7 @@ <xsl:call-template name="anchor"/> <xsl:if test="title and $placement = 'before'"> - <xsl:choose> - <xsl:when test="$formal.procedures != 0"> - <xsl:call-template name="formal.object.heading"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="title"/> - </xsl:otherwise> - </xsl:choose> + <xsl:call-template name="formal.object.heading"/> </xsl:if> <xsl:apply-templates select="$preamble"/> @@ -638,32 +641,13 @@ </xsl:choose> <xsl:if test="title and $placement != 'before'"> - <xsl:choose> - <xsl:when test="$formal.procedures != 0"> - <xsl:call-template name="formal.object.heading"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="title"/> - </xsl:otherwise> - </xsl:choose> + <xsl:call-template name="formal.object.heading"/> </xsl:if> </div> </xsl:template> <xsl:template match="procedure/title"> - <p class="title"> - <b> - <xsl:apply-templates/> - </b> - </p> -</xsl:template> - -<xsl:template match="title" mode="procedure.title.mode"> - <p class="title"> - <b> - <xsl:apply-templates/> - </b> - </p> + <!-- nop --> </xsl:template> <xsl:template match="substeps"> @@ -686,7 +670,11 @@ </xsl:template> <xsl:template match="step/title"> - <xsl:apply-templates select="." mode="procedure.title.mode"/> + <p class="title"> + <b> + <xsl:apply-templates/> + </b> + </p> </xsl:template> <!-- ==================================================================== --> @@ -788,6 +776,10 @@ </xsl:if> <thead> <tr> + <xsl:call-template name="tr.attributes"> + <xsl:with-param name="row" select="segtitle[1]"/> + <xsl:with-param name="rownum" select="1"/> + </xsl:call-template> <xsl:apply-templates select="segtitle" mode="seglist-table"/> </tr> </thead> @@ -802,7 +794,14 @@ </xsl:template> <xsl:template match="seglistitem" mode="seglist-table"> + <xsl:variable name="seglinum"> + <xsl:number from="segmentedlist" count="seglistitem"/> + </xsl:variable> + <tr> + <xsl:call-template name="tr.attributes"> + <xsl:with-param name="rownum" select="$seglinum + 1"/> + </xsl:call-template> <xsl:apply-templates mode="seglist-table"/> </tr> </xsl:template> @@ -816,12 +815,8 @@ <xsl:template match="calloutlist"> <div class="{name(.)}"> <xsl:call-template name="anchor"/> - <xsl:if test="./title"> - <p> - <b> - <xsl:apply-templates select="./title" mode="calloutlist.title.mode"/> - </b> - </p> + <xsl:if test="title"> + <xsl:call-template name="formal.object.heading"/> </xsl:if> <xsl:choose> <xsl:when test="$callout.list.table != 0"> @@ -839,14 +834,16 @@ <xsl:template match="calloutlist/title"> </xsl:template> -<xsl:template match="calloutlist/title" mode="calloutlist.title.mode"> - <xsl:apply-templates/> -</xsl:template> - <xsl:template match="callout"> <xsl:choose> <xsl:when test="$callout.list.table != 0"> <tr> + <xsl:call-template name="tr.attributes"> + <xsl:with-param name="rownum"> + <xsl:number from="calloutlist" count="callout"/> + </xsl:with-param> + </xsl:call-template> + <td width="5%" valign="top" align="left"> <xsl:call-template name="anchor"/> <xsl:call-template name="callout.arearefs"> Index: phpdoc/xsl/docbook/html/manifest.xsl diff -u phpdoc/xsl/docbook/html/manifest.xsl:1.1 phpdoc/xsl/docbook/html/manifest.xsl:1.2 --- phpdoc/xsl/docbook/html/manifest.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/manifest.xsl Sun Mar 9 09:56:38 2003 @@ -11,7 +11,7 @@ <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:with-param name="encoding" select="$chunker.output.encoding"/> </xsl:call-template> </xsl:template> Index: phpdoc/xsl/docbook/html/math.xsl diff -u phpdoc/xsl/docbook/html/math.xsl:1.1 phpdoc/xsl/docbook/html/math.xsl:1.2 --- phpdoc/xsl/docbook/html/math.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/math.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: math.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: math.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -54,7 +54,7 @@ </xsl:otherwise> </xsl:choose> </xsl:with-param> - <xsl:with-param name="encoding" select="$default.encoding"/> + <xsl:with-param name="encoding" select="$chunker.output.encoding"/> </xsl:call-template> </xsl:template> @@ -226,57 +226,19 @@ <xsl:param name="olist" select="imageobject|imageobjectco |videoobject|audioobject|textobject"/> - <xsl:param name="count">1</xsl:param> - <xsl:if test="$count <= count($olist)"> - <xsl:variable name="object" select="$olist[position()=$count]"/> - - <xsl:variable name="useobject"> - <xsl:choose> - <!-- The phrase is never used --> - <xsl:when test="name($object)='textobject' and $object/phrase"> - <xsl:text>0</xsl:text> - </xsl:when> - <!-- The first textobject is not a reasonable fallback for equation image --> - <xsl:when test="name($object)='textobject'"> - <xsl:text>0</xsl:text> - </xsl:when> - <!-- If there's only one object, use it --> - <xsl:when test="$count = 1 and count($olist) = 1"> - <xsl:text>1</xsl:text> - </xsl:when> - <!-- Otherwise, see if this one is a useable graphic --> - <xsl:otherwise> - <xsl:choose> - <!-- peek inside imageobjectco to simplify the test --> - <xsl:when test="local-name($object) = 'imageobjectco'"> - <xsl:call-template name="is.acceptable.mediaobject"> - <xsl:with-param name="object" select="$object/imageobject"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="is.acceptable.mediaobject"> - <xsl:with-param name="object" select="$object"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> + <xsl:variable name="mediaobject.index"> + <xsl:call-template name="select.mediaobject.index"> + <xsl:with-param name="olist" select="$olist"/> + <xsl:with-param name="count" select="1"/> + </xsl:call-template> + </xsl:variable> - <xsl:choose> - <xsl:when test="$useobject='1'"> - <xsl:call-template name="mediaobject.filename"> - <xsl:with-param name="object" select="$object"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="select.mediaobject"> - <xsl:with-param name="olist" select="$olist"/> - <xsl:with-param name="count" select="$count + 1"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> + <xsl:if test="$mediaobject.index != ''"> + <xsl:call-template name="mediaobject.filename"> + <xsl:with-param name="object" + select="$olist[position() = $mediaobject.index]"/> + </xsl:call-template> </xsl:if> </xsl:template> Index: phpdoc/xsl/docbook/html/param.ent diff -u phpdoc/xsl/docbook/html/param.ent:1.1 phpdoc/xsl/docbook/html/param.ent:1.2 --- phpdoc/xsl/docbook/html/param.ent:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/param.ent Sun Mar 9 09:56:38 2003 @@ -21,20 +21,30 @@ <!ENTITY callout.unicode.start.character SYSTEM "../params/callout.unicode.start.character.xml"> <!ENTITY callouts.extension SYSTEM "../params/callouts.extension.xml"> <!ENTITY chapter.autolabel SYSTEM "../params/chapter.autolabel.xml"> -<!ENTITY chunk.datafile SYSTEM "../params/chunk.datafile.xml"> <!ENTITY chunk.first.sections SYSTEM "../params/chunk.first.sections.xml"> <!ENTITY chunk.quietly SYSTEM "../params/chunk.quietly.xml"> <!ENTITY chunk.section.depth SYSTEM "../params/chunk.section.depth.xml"> <!ENTITY chunk.toc SYSTEM "../params/chunk.toc.xml"> +<!ENTITY chunker.output.cdata-section-elements SYSTEM "../params/chunker.output.cdata-section-elements.xml"> +<!ENTITY chunker.output.doctype-public SYSTEM "../params/chunker.output.doctype-public.xml"> +<!ENTITY chunker.output.doctype-system SYSTEM "../params/chunker.output.doctype-system.xml"> +<!ENTITY chunker.output.encoding SYSTEM "../params/chunker.output.encoding.xml"> +<!ENTITY chunker.output.indent SYSTEM "../params/chunker.output.indent.xml"> +<!ENTITY chunker.output.media-type SYSTEM "../params/chunker.output.media-type.xml"> +<!ENTITY chunker.output.method SYSTEM "../params/chunker.output.method.xml"> +<!ENTITY chunker.output.omit-xml-declaration SYSTEM "../params/chunker.output.omit-xml-declaration.xml"> +<!ENTITY chunker.output.standalone SYSTEM "../params/chunker.output.standalone.xml"> <!ENTITY citerefentry.link SYSTEM "../params/citerefentry.link.xml"> +<!ENTITY collect.xref.targets SYSTEM "../params/collect.xref.targets.xml"> <!ENTITY css.decoration SYSTEM "../params/css.decoration.xml"> -<!ENTITY default.encoding SYSTEM "../params/default.encoding.xml"> +<!ENTITY current.docid SYSTEM "../params/current.docid.xml"> <!ENTITY default.table.width SYSTEM "../params/default.table.width.xml"> <!ENTITY draft.watermark.image SYSTEM "../params/draft.watermark.image.xml"> <!ENTITY ebnf.table.bgcolor SYSTEM "../params/ebnf.table.bgcolor.xml"> <!ENTITY ebnf.table.border SYSTEM "../params/ebnf.table.border.xml"> <!ENTITY emphasis.propagates.style SYSTEM "../params/emphasis.propagates.style.xml"> <!ENTITY firstterm.only.link SYSTEM "../params/firstterm.only.link.xml"> +<!ENTITY footer.rule SYSTEM "../params/footer.rule.xml"> <!ENTITY formal.procedures SYSTEM "../params/formal.procedures.xml"> <!ENTITY formal.title.placement SYSTEM "../params/formal.title.placement.xml"> <!ENTITY funcsynopsis.decoration SYSTEM "../params/funcsynopsis.decoration.xml"> @@ -44,11 +54,13 @@ <!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.meta.abstract SYSTEM "../params/generate.meta.abstract.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 glossterm.auto.link SYSTEM "../params/glossterm.auto.link.xml"> <!ENTITY graphic.default.extension SYSTEM "../params/graphic.default.extension.xml"> +<!ENTITY header.rule SYSTEM "../params/header.rule.xml"> <!ENTITY html.base SYSTEM "../params/html.base.xml"> <!ENTITY html.cleanup SYSTEM "../params/html.cleanup.xml"> <!ENTITY html.ext SYSTEM "../params/html.ext.xml"> @@ -59,19 +71,46 @@ <!ENTITY html.stylesheet.type SYSTEM "../params/html.stylesheet.type.xml"> <!ENTITY htmlhelp.alias.file SYSTEM "../params/htmlhelp.alias.file.xml"> <!ENTITY htmlhelp.autolabel SYSTEM "../params/htmlhelp.autolabel.xml"> +<!ENTITY htmlhelp.button.back SYSTEM "../params/htmlhelp.button.back.xml"> +<!ENTITY htmlhelp.button.forward SYSTEM "../params/htmlhelp.button.forward.xml"> +<!ENTITY htmlhelp.button.hideshow SYSTEM "../params/htmlhelp.button.hideshow.xml"> +<!ENTITY htmlhelp.button.home SYSTEM "../params/htmlhelp.button.home.xml"> +<!ENTITY htmlhelp.button.home.url SYSTEM "../params/htmlhelp.button.home.url.xml"> +<!ENTITY htmlhelp.button.jump1 SYSTEM "../params/htmlhelp.button.jump1.xml"> +<!ENTITY htmlhelp.button.jump1.title SYSTEM "../params/htmlhelp.button.jump1.title.xml"> +<!ENTITY htmlhelp.button.jump1.url SYSTEM "../params/htmlhelp.button.jump1.url.xml"> +<!ENTITY htmlhelp.button.jump2 SYSTEM "../params/htmlhelp.button.jump2.xml"> +<!ENTITY htmlhelp.button.jump2.title SYSTEM "../params/htmlhelp.button.jump2.title.xml"> +<!ENTITY htmlhelp.button.jump2.url SYSTEM "../params/htmlhelp.button.jump2.url.xml"> +<!ENTITY htmlhelp.button.locate SYSTEM "../params/htmlhelp.button.locate.xml"> +<!ENTITY htmlhelp.button.next SYSTEM "../params/htmlhelp.button.next.xml"> +<!ENTITY htmlhelp.button.options SYSTEM "../params/htmlhelp.button.options.xml"> +<!ENTITY htmlhelp.button.prev SYSTEM "../params/htmlhelp.button.prev.xml"> +<!ENTITY htmlhelp.button.print SYSTEM "../params/htmlhelp.button.print.xml"> +<!ENTITY htmlhelp.button.refresh SYSTEM "../params/htmlhelp.button.refresh.xml"> +<!ENTITY htmlhelp.button.stop SYSTEM "../params/htmlhelp.button.stop.xml"> +<!ENTITY htmlhelp.button.zoom SYSTEM "../params/htmlhelp.button.zoom.xml"> <!ENTITY htmlhelp.chm SYSTEM "../params/htmlhelp.chm.xml"> <!ENTITY htmlhelp.default.topic SYSTEM "../params/htmlhelp.default.topic.xml"> <!ENTITY htmlhelp.encoding SYSTEM "../params/htmlhelp.encoding.xml"> <!ENTITY htmlhelp.enumerate.images SYSTEM "../params/htmlhelp.enumerate.images.xml"> <!ENTITY htmlhelp.force.map.and.alias SYSTEM "../params/htmlhelp.force.map.and.alias.xml"> <!ENTITY htmlhelp.hhc SYSTEM "../params/htmlhelp.hhc.xml"> +<!ENTITY htmlhelp.hhc.binary SYSTEM "../params/htmlhelp.hhc.binary.xml"> <!ENTITY htmlhelp.hhc.folders.instead.books SYSTEM "../params/htmlhelp.hhc.folders.instead.books.xml"> <!ENTITY htmlhelp.hhc.section.depth SYSTEM "../params/htmlhelp.hhc.section.depth.xml"> <!ENTITY htmlhelp.hhc.show.root SYSTEM "../params/htmlhelp.hhc.show.root.xml"> +<!ENTITY htmlhelp.hhk SYSTEM "../params/htmlhelp.hhk.xml"> <!ENTITY htmlhelp.hhp SYSTEM "../params/htmlhelp.hhp.xml"> <!ENTITY htmlhelp.hhp.tail SYSTEM "../params/htmlhelp.hhp.tail.xml"> +<!ENTITY htmlhelp.hhp.window SYSTEM "../params/htmlhelp.hhp.window.xml"> <!ENTITY htmlhelp.map.file SYSTEM "../params/htmlhelp.map.file.xml"> +<!ENTITY htmlhelp.only SYSTEM "../params/htmlhelp.only.xml"> +<!ENTITY htmlhelp.show.advanced.search SYSTEM "../params/htmlhelp.show.advanced.search.xml"> +<!ENTITY htmlhelp.show.favorities SYSTEM "../params/htmlhelp.show.favorities.xml"> +<!ENTITY htmlhelp.show.menu SYSTEM "../params/htmlhelp.show.menu.xml"> <!ENTITY htmlhelp.title SYSTEM "../params/htmlhelp.title.xml"> +<!ENTITY htmlhelp.use.hhk SYSTEM "../params/htmlhelp.use.hhk.xml"> <!ENTITY inherit.keywords SYSTEM "../params/inherit.keywords.xml"> <!ENTITY label.from.part SYSTEM "../params/label.from.part.xml"> <!ENTITY linenumbering.everyNth SYSTEM "../params/linenumbering.everyNth.xml"> @@ -79,8 +118,9 @@ <!ENTITY linenumbering.separator SYSTEM "../params/linenumbering.separator.xml"> <!ENTITY linenumbering.width SYSTEM "../params/linenumbering.width.xml"> <!ENTITY link.mailto.url SYSTEM "../params/link.mailto.url.xml"> -<!ENTITY make.valid.html SYSTEM "../params/make.valid.html.xml"> +<!ENTITY make.graphic.viewport SYSTEM "../params/make.graphic.viewport.xml"> <!ENTITY make.single.year.ranges SYSTEM "../params/make.single.year.ranges.xml"> +<!ENTITY make.valid.html SYSTEM "../params/make.valid.html.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"> @@ -88,21 +128,26 @@ <!ENTITY navig.graphics.extension SYSTEM "../params/navig.graphics.extension.xml"> <!ENTITY navig.graphics.path SYSTEM "../params/navig.graphics.path.xml"> <!ENTITY navig.showtitles SYSTEM "../params/navig.showtitles.xml"> +<!ENTITY nominal.image.depth SYSTEM "../params/nominal.image.depth.xml"> +<!ENTITY nominal.image.width SYSTEM "../params/nominal.image.width.xml"> <!ENTITY nominal.table.width SYSTEM "../params/nominal.table.width.xml"> +<!ENTITY olink.base.uri SYSTEM "../params/olink.base.uri.xml"> +<!ENTITY olink.doctitle SYSTEM "../params/olink.doctitle.xml"> <!ENTITY olink.fragid SYSTEM "../params/olink.fragid.xml"> <!ENTITY olink.outline.ext SYSTEM "../params/olink.outline.ext.xml"> <!ENTITY olink.pubid SYSTEM "../params/olink.pubid.xml"> <!ENTITY olink.resolver SYSTEM "../params/olink.resolver.xml"> <!ENTITY olink.sysid SYSTEM "../params/olink.sysid.xml"> -<!ENTITY output.method SYSTEM "../params/output.method.xml"> <!ENTITY part.autolabel SYSTEM "../params/part.autolabel.xml"> <!ENTITY phrase.propagates.style SYSTEM "../params/phrase.propagates.style.xml"> <!ENTITY pixels.per.inch SYSTEM "../params/pixels.per.inch.xml"> <!ENTITY points.per.em SYSTEM "../params/points.per.em.xml"> <!ENTITY preface.autolabel SYSTEM "../params/preface.autolabel.xml"> +<!ENTITY preferred.mediaobject.role SYSTEM "../params/preferred.mediaobject.role.xml"> <!ENTITY process.empty.source.toc SYSTEM "../params/process.empty.source.toc.xml"> <!ENTITY process.source.toc SYSTEM "../params/process.source.toc.xml"> <!ENTITY profile.arch SYSTEM "../params/profile.arch.xml"> +<!ENTITY profile.attribute SYSTEM "../params/profile.attribute.xml"> <!ENTITY profile.condition SYSTEM "../params/profile.condition.xml"> <!ENTITY profile.conformance SYSTEM "../params/profile.conformance.xml"> <!ENTITY profile.lang SYSTEM "../params/profile.lang.xml"> @@ -111,11 +156,10 @@ <!ENTITY profile.revisionflag SYSTEM "../params/profile.revisionflag.xml"> <!ENTITY profile.role SYSTEM "../params/profile.role.xml"> <!ENTITY profile.security SYSTEM "../params/profile.security.xml"> +<!ENTITY profile.separator SYSTEM "../params/profile.separator.xml"> <!ENTITY profile.userlevel SYSTEM "../params/profile.userlevel.xml"> -<!ENTITY profile.vendor SYSTEM "../params/profile.vendor.xml"> -<!ENTITY profile.attribute SYSTEM "../params/profile.attribute.xml"> <!ENTITY profile.value SYSTEM "../params/profile.value.xml"> -<!ENTITY profile.separator SYSTEM "../params/profile.separator.xml"> +<!ENTITY profile.vendor SYSTEM "../params/profile.vendor.xml"> <!ENTITY punct.honorific SYSTEM "../params/punct.honorific.xml"> <!ENTITY qanda.defaultlabel SYSTEM "../params/qanda.defaultlabel.xml"> <!ENTITY qanda.inherit.numeration SYSTEM "../params/qanda.inherit.numeration.xml"> @@ -137,20 +181,53 @@ <!ENTITY show.comments SYSTEM "../params/show.comments.xml"> <!ENTITY show.revisionflag SYSTEM "../params/show.revisionflag.xml"> <!ENTITY spacing.paras SYSTEM "../params/spacing.paras.xml"> +<!ENTITY suppress.footer.navigation SYSTEM "../params/suppress.footer.navigation.xml"> +<!ENTITY suppress.header.navigation SYSTEM "../params/suppress.header.navigation.xml"> <!ENTITY suppress.navigation SYSTEM "../params/suppress.navigation.xml"> -<!ENTITY table.border.color SYSTEM "../params/table.border.color.xml"> -<!ENTITY table.border.style SYSTEM "../params/table.border.style.xml"> -<!ENTITY table.border.thickness SYSTEM "../params/table.border.thickness.xml"> <!ENTITY table.borders.with.css SYSTEM "../params/table.borders.with.css.xml"> <!ENTITY tablecolumns.extension SYSTEM "../params/tablecolumns.extension.xml"> -<!ENTITY textinsert.extension SYSTEM "../params/textinsert.extension.xml"> +<!ENTITY targets.filename SYSTEM "../params/targets.filename.xml"> +<!ENTITY target.database.document SYSTEM "../params/target.database.document.xml"> <!ENTITY tex.math.delims SYSTEM "../params/tex.math.delims.xml"> -<!ENTITY tex.math.in.alt SYSTEM "../params/tex.math.in.alt.xml"> <!ENTITY tex.math.file SYSTEM "../params/tex.math.file.xml"> +<!ENTITY tex.math.in.alt SYSTEM "../params/tex.math.in.alt.xml"> +<!ENTITY textinsert.extension SYSTEM "../params/textinsert.extension.xml"> <!ENTITY toc.list.type SYSTEM "../params/toc.list.type.xml"> <!ENTITY toc.section.depth SYSTEM "../params/toc.section.depth.xml"> <!ENTITY ulink.target SYSTEM "../params/ulink.target.xml"> +<!ENTITY use.embed.for.svg SYSTEM "../params/use.embed.for.svg.xml"> <!ENTITY use.extensions SYSTEM "../params/use.extensions.xml"> <!ENTITY use.id.as.filename SYSTEM "../params/use.id.as.filename.xml"> +<!ENTITY use.local.olink.style SYSTEM "../params/use.local.olink.style.xml"> +<!ENTITY use.role.as.xrefstyle SYSTEM "../params/use.role.as.xrefstyle.xml"> +<!ENTITY use.role.for.mediaobject SYSTEM "../params/use.role.for.mediaobject.xml"> <!ENTITY use.svg SYSTEM "../params/use.svg.xml"> <!ENTITY variablelist.as.table SYSTEM "../params/variablelist.as.table.xml"> +<!ENTITY para.propagates.style SYSTEM "../params/para.propagates.style.xml"> +<!ENTITY html.cellpadding SYSTEM "../params/html.cellpadding.xml"> +<!ENTITY html.cellspacing SYSTEM "../params/html.cellspacing.xml"> +<!ENTITY menuchoice.separator SYSTEM "../params/menuchoice.separator.xml"> +<!ENTITY menuchoice.menu.separator SYSTEM "../params/menuchoice.menu.separator.xml"> +<!ENTITY bibliography.numbered SYSTEM "../params/bibliography.numbered.xml"> +<!ENTITY chunk.tocs.and.lots SYSTEM "../params/chunk.tocs.and.lots.xml"> +<!ENTITY graphicsize.extension SYSTEM "../params/graphicsize.extension.xml"> +<!ENTITY l10n.gentext.language SYSTEM "../params/l10n.gentext.language.xml"> +<!ENTITY l10n.gentext.default.language SYSTEM "../params/l10n.gentext.default.language.xml"> +<!ENTITY l10n.gentext.use.xref.language SYSTEM "../params/l10n.gentext.use.xref.language.xml"> +<!ENTITY default.image.width SYSTEM "../params/default.image.width.xml"> +<!ENTITY default.float.class SYSTEM "../params/default.float.class.xml"> +<!ENTITY funcsynopsis.tabular.threshold SYSTEM "../params/funcsynopsis.tabular.threshold.xml"> +<!ENTITY table.cell.border.color SYSTEM "../params/table.cell.border.color.xml"> +<!ENTITY table.cell.border.style SYSTEM "../params/table.cell.border.style.xml"> +<!ENTITY table.cell.border.thickness SYSTEM "../params/table.cell.border.thickness.xml"> +<!ENTITY table.frame.border.color SYSTEM "../params/table.frame.border.color.xml"> +<!ENTITY table.frame.border.style SYSTEM "../params/table.frame.border.style.xml"> +<!ENTITY table.frame.border.thickness SYSTEM "../params/table.frame.border.thickness.xml"> +<!ENTITY ignore.image.scaling SYSTEM "../params/ignore.image.scaling.xml"> +<!ENTITY footnote.number.format SYSTEM "../params/footnote.number.format.xml"> +<!ENTITY table.footnote.number.format SYSTEM "../params/table.footnote.number.format.xml"> +<!ENTITY footnote.number.symbols SYSTEM "../params/footnote.number.symbols.xml"> +<!ENTITY table.footnote.number.symbols SYSTEM "../params/table.footnote.number.symbols.xml"> +<!ENTITY entry.propagates.style SYSTEM "../params/entry.propagates.style.xml"> +<!ENTITY glossentry.show.acronym SYSTEM "../params/glossentry.show.acronym.xml"> +<!ENTITY xref.with.number.and.title SYSTEM "../params/xref.with.number.and.title.xml"> Index: phpdoc/xsl/docbook/html/param.xml diff -u phpdoc/xsl/docbook/html/param.xml:1.1 phpdoc/xsl/docbook/html/param.xml:1.2 --- phpdoc/xsl/docbook/html/param.xml:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/param.xml Sun Mar 9 09:56:38 2003 @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8"?> -<!-- This file was generated by weave.xsl version 0.00+. Do not edit! --> +<!-- This file was generated by weave.xsl version 1.0. Do not edit! --> <!-- See http://sourceforge.net/projects/docbook/ --> <!DOCTYPE book PUBLIC "-//DocBook Open Repository//DTD DocBook Literate Programming V0.0//EN" "http://docbook.sourceforge.net/release/litprog/current/dtd/ldocbook.dtd"> @@ -7,7 +7,7 @@ <bookinfo> <title>HTML Parameter Reference</title> <releaseinfo role="meta"> -$Id: param.xml,v 1.1 2002/08/13 15:51:37 goba Exp $ +$Id: param.xml,v 1.2 2003/03/09 14:56:38 tom Exp $ </releaseinfo> <author> <surname>Walsh</surname> @@ -675,17 +675,23 @@ <refsynopsisdiv> <src:fragment id="generate.toc.frag"><xsl:param name="generate.toc"> -appendix toc -article toc -book toc,figure,table,example,equation -chapter toc -part toc -preface toc +appendix toc,title +article/appendix nop +article toc,title +book toc,title,figure,table,example,equation +chapter toc,title +part toc,title +preface toc,title qandadiv toc qandaset toc -reference toc +reference toc,title +sect1 toc +sect2 toc +sect3 toc +sect4 toc +sect5 toc section toc -set toc +set toc,title </xsl:param> </src:fragment> </refsynopsisdiv> @@ -735,6 +741,11 @@ without a matching value. That'd be just begging the silly little path/value parser to get confused.</para> +<para>Section ToCs are further controlled by the +<parameter moreinfo="none">generate.section.toc.level</parameter> parameter. +For a given section level to have a ToC, it must have both an entry in +<parameter moreinfo="none">generate.toc</parameter> and be within the range enabled by +<parameter moreinfo="none">generate.section.toc.level</parameter>.</para> </refsect1> </refentry> @@ -939,6 +950,31 @@ </refsect1> </refentry> +<refentry id="graphicsize.extension"> +<refmeta> +<refentrytitle>graphicsize.extension</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>graphicsize.extension</refname> +<refpurpose>Enable the getWidth()/getDepth() extension functions</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="graphicsize.extension.frag"><xsl:param name="graphicsize.extension" + select="1"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If non-zero (and if <parameter moreinfo="none">use.extensions</parameter> is non-zero +and if you're using a processor that supports extension functions), the +<function moreinfo="none">getWidth</function> and <function moreinfo="none">getDepth</function> functions +will be used to extract image sizes from graphics.</para> + +</refsect1> +</refentry> + <refentry id="use.extensions"> <refmeta> <refentrytitle>use.extensions</refentrytitle> @@ -1219,7 +1255,7 @@ </refmeta> <refnamediv> <refname>html.stylesheet</refname> -<refpurpose>Name of the stylesheet to use in the generated HTML</refpurpose> +<refpurpose>Name of the stylesheet(s) to use in the generated HTML</refpurpose> </refnamediv> <refsynopsisdiv> @@ -1229,9 +1265,15 @@ <refsect1><title>Description</title> -<para>The name of the stylesheet to place in the HTML <sgmltag>LINK</sgmltag> -tag, or the empty string to suppress the stylesheet <sgmltag>LINK</sgmltag>. -</para> +<para>The <parameter moreinfo="none">html.stylesheet</parameter> parameter is either empty, +indicating that no stylesheet <sgmltag>LINK</sgmltag> tag should be generated +in the HTML output, or it is a list of one or more stylesheets.</para> + +<para>Multiple stylesheets are space-delimited. If you need to +reference a stylesheet URI that includes a space, encode it with +<literal moreinfo="none">%20</literal>. A seprate HTML <sgmltag>LINK</sgmltag> element will +be generated for each stylesheet in the order they are listed in the +parameter.</para> </refsect1> </refentry> @@ -1272,7 +1314,8 @@ </refnamediv> <refsynopsisdiv> -<src:fragment id="css.decoration.frag"><xsl:param name="css.decoration">1</xsl:param></src:fragment> +<src:fragment id="css.decoration.frag"><xsl:param name="css.decoration" + select="1"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> @@ -1337,6 +1380,30 @@ </refsect1> </refentry> +<refentry id="para.propagates.style"> +<refmeta> +<refentrytitle>para.propagates.style</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>para.propagates.style</refname> +<refpurpose>Pass para role attribute through to HTML?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="para.propagates.style.frag"><xsl:param name="para.propagates.style" + select="1"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If true, the role attribute of <sgmltag>para</sgmltag> elements +will be passed through to the HTML as a class attribute on the +<sgmltag>p</sgmltag> generated for the paragraph.</para> + +</refsect1> +</refentry> + <refentry id="phrase.propagates.style"> <refmeta> <refentrytitle>phrase.propagates.style</refentrytitle> @@ -1361,6 +1428,31 @@ </refsect1> </refentry> +<refentry id="entry.propagates.style"> +<refmeta> +<refentrytitle>entry.propagates.style</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>entry.propagates.style</refname> +<refpurpose>Pass entry role attribute through to HTML?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="entry.propagates.style.frag"><xsl:param name="entry.propagates.style" + select="1"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If true, the role attribute of <sgmltag>entry</sgmltag> elements +will be passed through to the HTML as a class attribute on the +<sgmltag>td</sgmltag> or <sgmltag>th</sgmltag> generated for the table +cell.</para> + +</refsect1> +</refentry> + <refentry id="html.longdesc"> <refmeta> <refentrytitle>html.longdesc</refentrytitle> @@ -1552,6 +1644,29 @@ </refsect1> </refentry> +<refentry id="generate.meta.abstract"> +<refmeta> +<refentrytitle>generate.meta.abstract</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>generate.meta.abstract</refname> +<refpurpose>Generate HTML <sgmltag>META</sgmltag> element from <sgmltag>abstract</sgmltag>?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="generate.meta.abstract.frag"><xsl:param name="generate.meta.abstract" + select="1"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If non-zero, document abstracts will be reproduced in the HTML +<sgmltag>HEAD</sgmltag> with <sgmltag class="starttag">meta name="description" content="..."</sgmltag>.</para> + +</refsect1> +</refentry> + </reference> <reference><title>XSLT Processing</title> @@ -1607,6 +1722,96 @@ </refsect1> </refentry> +<refentry id="suppress.navigation"> +<refmeta> +<refentrytitle>suppress.header.navigation</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>suppress.header.navigation</refname> +<refpurpose>Disable header navigation</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="suppress.header.navigation.frag"><xsl:param name="suppress.header.navigation">0</xsl:param></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para> +If <literal moreinfo="none">suppress.header.navigation</literal> is turned on, header +navigation will be suppressed.</para> + +</refsect1> +</refentry> + +<refentry id="suppress.navigation"> +<refmeta> +<refentrytitle>suppress.footer.navigation</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>suppress.footer.navigation</refname> +<refpurpose>Disable footer navigation</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="suppress.footer.navigation.frag"><xsl:param name="suppress.footer.navigation">0</xsl:param></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para> +If <literal moreinfo="none">suppress.footer.navigation</literal> is turned on, footer +navigation will be suppressed.</para> + +</refsect1> +</refentry> + +<refentry id="header.rule"> +<refmeta> +<refentrytitle>header.rule</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>header.rule</refname> +<refpurpose>Rule under headers?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="header.rule.frag"><xsl:param name="header.rule" + select="1"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If non-zero, a rule will be drawn below the page headers.</para> + +</refsect1> +</refentry> + +<refentry id="footer.rule"> +<refmeta> +<refentrytitle>footer.rule</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>footer.rule</refname> +<refpurpose>Rule over footers?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="footer.rule.frag"><xsl:param name="footer.rule" + select="1"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If non-zero, a rule will be drawn above the page footers.</para> + +</refsect1> +</refentry> + </reference> <reference><title>Meta/*Info</title> @@ -1787,6 +1992,30 @@ </refsect1> </refentry> +<refentry id="funcsynopsis.tabular.threshold"> +<refmeta> +<refentrytitle>funcsynopsis.tabular.threshold</refentrytitle> +<refmiscinfo role="type">integer</refmiscinfo> +</refmeta> +<refnamediv> +<refname>funcsynopsis.tabular.threshold</refname> +<refpurpose>Width beyond which a tabular presentation will be used</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="funcsynopsis.tabular.threshold.frag"><xsl:param name="funcsynopsis.tabular.threshold" + select="40"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If <parameter moreinfo="none">funcsynopsis.tabular.threshold</parameter> is greater than +zero then if a <sgmltag>funcprototype</sgmltag> is wider than the threshold +value, it will be presented in a table.</para> + +</refsect1> +</refentry> + <refentry id="function.parens"> <refmeta> <refentrytitle>function.parens</refentrytitle> @@ -1830,7 +2059,10 @@ <para>If true (non-zero), a "NAME" section title is output before the list of 'RefName's. This parameter and -<parameter moreinfo="none">refentry.generate.title</parameter> are mutually exclusive. +<parameter moreinfo="none">refentry.generate.title</parameter> are mutually +exclusive. This means that if you change this parameter to zero, you +should set <parameter moreinfo="none">refentry.generate.title</parameter> to 1 unless +you want get quite strange output. </para> </refsect1> @@ -1856,7 +2088,9 @@ <para>If true (non-zero), the reference page title or first name is output before the list of 'RefName's. This parameter and <parameter moreinfo="none">refentry.generate.name</parameter> are mutually exclusive. -</para> +This means that if you change this parameter to 1, you +should set <parameter moreinfo="none">refentry.generate.name</parameter> to 0 unless +you want get quite strange output.</para> </refsect1> @@ -2012,18 +2246,18 @@ </refsect1> </refentry> -<refentry id="table.border.style"> +<refentry id="table.cell.border.style"> <refmeta> -<refentrytitle>table.border.style</refentrytitle> +<refentrytitle>table.cell.border.style</refentrytitle> <refmiscinfo role="type"/> </refmeta> <refnamediv> -<refname>table.border.style</refname> +<refname>table.cell.border.style</refname> <refpurpose/> </refnamediv> <refsynopsisdiv> -<src:fragment id="table.border.style.frag"><xsl:param name="table.border.style" +<src:fragment id="table.cell.border.style.frag"><xsl:param name="table.cell.border.style" select="'solid'"/></src:fragment> </refsynopsisdiv> @@ -2034,18 +2268,18 @@ </refsect1> </refentry> -<refentry id="table.border.thickness"> +<refentry id="table.cell.border.thickness"> <refmeta> -<refentrytitle>table.border.thickness</refentrytitle> +<refentrytitle>table.cell.border.thickness</refentrytitle> <refmiscinfo role="type"/> </refmeta> <refnamediv> -<refname>table.border.thickness</refname> +<refname>table.cell.border.thickness</refname> <refpurpose/> </refnamediv> <refsynopsisdiv> -<src:fragment id="table.border.thickness.frag"><xsl:param name="table.border.thickness" +<src:fragment id="table.cell.border.thickness.frag"><xsl:param name="table.cell.border.thickness" select="'0.5pt'"/></src:fragment> </refsynopsisdiv> @@ -2056,19 +2290,87 @@ </refsect1> </refentry> -<refentry id="table.border.color"> +<refentry id="table.cell.border.color"> +<refmeta> +<refentrytitle>table.cell.border.color</refentrytitle> +<refmiscinfo role="type"/> +</refmeta> +<refnamediv> +<refname>table.cell.border.color</refname> +<refpurpose/> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="table.cell.border.color.frag"><xsl:param name="table.cell.border.color" + select="''"/> +</src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>FIXME:</para> + +</refsect1> +</refentry> + +<refentry id="table.frame.border.style"> +<refmeta> +<refentrytitle>table.frame.border.style</refentrytitle> +<refmiscinfo role="type"/> +</refmeta> +<refnamediv> +<refname>table.frame.border.style</refname> +<refpurpose/> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="table.frame.border.style.frag"><xsl:param name="table.frame.border.style" + select="'solid'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>FIXME:</para> + +</refsect1> +</refentry> + +<refentry id="table.frame.border.thickness"> +<refmeta> +<refentrytitle>table.frame.border.thickness</refentrytitle> +<refmiscinfo role="type"/> +</refmeta> +<refnamediv> +<refname>table.frame.border.thickness</refname> +<refpurpose>Specifies the thickness of the frame border</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="table.frame.border.thickness.frag"><xsl:param name="table.frame.border.thickness" + select="'0.5pt'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Specifies the thickness of the border on the table's frame.</para> + +</refsect1> +</refentry> + +<refentry id="table.frame.border.color"> <refmeta> -<refentrytitle>table.border.color</refentrytitle> +<refentrytitle>table.frame.border.color</refentrytitle> <refmiscinfo role="type"/> </refmeta> <refnamediv> -<refname>table.border.color</refname> +<refname>table.frame.border.color</refname> <refpurpose/> </refnamediv> <refsynopsisdiv> -<src:fragment id="table.border.color.frag"><xsl:param name="table.border.color" - select="'black'"/></src:fragment> +<src:fragment id="table.frame.border.color.frag"><xsl:param name="table.frame.border.color" + select="''"/> +</src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> @@ -2078,6 +2380,52 @@ </refsect1> </refentry> +<refentry id="html.cellspacing"> +<refmeta> +<refentrytitle>html.cellspacing</refentrytitle> +<refmiscinfo role="type">integer</refmiscinfo> +</refmeta> +<refnamediv> +<refname>html.cellspacing</refname> +<refpurpose>Default value for cellspacing in HTML tables</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="html.cellspacing.frag"><xsl:param name="html.cellspacing" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If specified, this value will be used as the default cellspacing value +in HTML tables.</para> + +</refsect1> +</refentry> + +<refentry id="html.cellpadding"> +<refmeta> +<refentrytitle>html.cellpadding</refentrytitle> +<refmiscinfo role="type">integer</refmiscinfo> +</refmeta> +<refnamediv> +<refname>html.cellpadding</refname> +<refpurpose>Default value for cellpadding in HTML tables</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="html.cellpadding.frag"><xsl:param name="html.cellpadding" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If specified, this value will be used as the default cellpadding value +in HTML tables.</para> + +</refsect1> +</refentry> + </reference> <reference><title>QAndASet</title> @@ -2132,6 +2480,171 @@ </reference> <reference><title>Linking</title> +<refentry id="target.database.document"> +<refmeta> +<refentrytitle>target.database.document</refentrytitle> +<refmiscinfo role="type">uri</refmiscinfo> +</refmeta> +<refnamediv> +<refname>target.database.document</refname> +<refpurpose>Name of master database file for resolving +olinks</refpurpose> +</refnamediv> +<refsynopsisdiv> <src:fragment id="target.database.document.frag"><xsl:param name="target.database.document" + select="''"/></src:fragment> +</refsynopsisdiv> +<refsect1> +<title>Description</title> +<para> +To resolve olinks between documents, the stylesheets use +a master database document that identifies the target datafiles for all the documents within the scope +of the olinks. This parameter value is the URI of +the master document to be read during processing to resolve olinks. +The default value is <filename moreinfo="none">olinkdb.xml</filename>.</para> +<para>The data structure of the file is defined in the <filename moreinfo="none">targetdatabase.dtd</filename> DTD. The database file provides the high level elements to record the identifiers, locations, and relationships of documents. The cross reference data for individual documents is generally pulled into the database using system entity references or XIncludes. See also <parameter moreinfo="none">targets.filename</parameter>. + +</para> +</refsect1> +</refentry> + +<refentry id="targets.filename"> +<refmeta> +<refentrytitle>targets.filename</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>targets.filename</refname> +<refpurpose>Name of cross reference targets data file</refpurpose> +</refnamediv> +<refsynopsisdiv> <src:fragment id="targets.filename.frag"><xsl:param name="targets.filename" + select="'target.db'"/></src:fragment> +</refsynopsisdiv> +<refsect1> +<title>Description</title> +<para> +In order to resolve olinks efficiently, the stylesheets can +generate an external data file containing information about +all potential cross reference endpoints in a document. +This parameter lets you change the name of the generated +file from the default name <filename moreinfo="none">target.db</filename>. +The name must agree with that used in the target database +used to resolve olinks during processing. +See also <parameter moreinfo="none">target.database.document</parameter>. +</para> +</refsect1> +</refentry> + +<refentry id="collect.xref.targets"> +<refmeta> +<refentrytitle>collect.xref.targets</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>collect.xref.targets</refname> +<refpurpose>Controls whether cross reference data is +collected</refpurpose> +</refnamediv> +<refsynopsisdiv> <src:fragment id="collect.xref.targets.frag"><xsl:param name="collect.xref.targets" + select="'no'"/></src:fragment> +</refsynopsisdiv> +<refsect1> +<title>Description</title> +<para> +In order to resolve olinks efficiently, the stylesheets can +generate an external data file containing information about +all potential cross reference endpoints in a document. +This parameter determines whether the collection process is run when the document is processed by the stylesheet. The default value is <literal moreinfo="none">no</literal>, which means the data file is not generated during processing. The other choices are <literal moreinfo="none">yes</literal>, which means the data file is created and the document is processed for output, and <literal moreinfo="none">only</literal>, which means the data file is created but the document is not processed for output. +See also <parameter moreinfo="none">targets.filename</parameter>. +</para> +</refsect1> +</refentry> + +<refentry id="olink.base.uri"> +<refmeta> +<refentrytitle>olink.base.uri</refentrytitle> +<refmiscinfo role="type">uri</refmiscinfo> +</refmeta> +<refnamediv> +<refname>olink.base.uri</refname> +<refpurpose>Base URI used in olink hrefs</refpurpose> +</refnamediv> +<refsynopsisdiv> <src:fragment id="olink.base.uri.frag"><xsl:param name="olink.base.uri" + select="''"/> </src:fragment> +</refsynopsisdiv> +<refsect1> +<title>Description</title> +<para>When cross reference data is collected for resolving olinks, it may be necessary to prepend a base URI to each target's href. This parameter lets you set that base URI when cross reference data is collected. This feature is needed when you want to link to a document that is processed without chunking. The output filename for such a document is not known to the XSL stylesheet; the only target information consists of fragment identifiers such as <literal moreinfo="none">#idref</literal>. To enable the resolution of olinks between documents, you should pass the name of the HTML output file as the value of this parameter. Then the hrefs recorded in the cross reference data collection look like <literal moreinfo="none">outfile.html#idref</literal>, which can be reached as links from other documents.</para> +</refsect1> +</refentry> + +<refentry id="use.local.olink.style"> +<refmeta> +<refentrytitle>use.local.olink.style</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>use.local.olink.style</refname> +<refpurpose>Process olinks using xref style of current +document</refpurpose> +</refnamediv> +<refsynopsisdiv> <src:fragment id="use.local.olink.style.frag"><xsl:param name="use.local.olink.style" + select="0"/> </src:fragment> +</refsynopsisdiv> +<refsect1> +<title>Description</title> +<para>When cross reference data is collected for use by olinks, the data for each potential target includes one field containing a completely assembled cross reference string, as if it were an xref generated in that document. Other fields record the separate title, number, and element name of each target. When an olink is formed to a target from another document, the olink resolves to that preassembled string by default. If the <parameter moreinfo="none">use.local.olink.style</parameter> parameter is set to non-zero, then instead the cross +reference string is formed again from the target title, number, and +element name, using the stylesheet processing the targeting document. +Then olinks will match the xref style in the targeting document +rather than in the target document. If both documents are processed +with the same stylesheet, then the results will be the same.</para> +</refsect1> +</refentry> + +<refentry id="current.docid"> +<refmeta> +<refentrytitle>current.docid</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>current.docid</refname> +<refpurpose>targetdoc identifier for the document being +processed</refpurpose> +</refnamediv> +<refsynopsisdiv> <src:fragment id="current.docid.frag"><xsl:param name="current.docid" + select="''"/> </src:fragment> +</refsynopsisdiv> +<refsect1> +<title>Description</title> +<para>When olinks between documents are resolved for HTML output, the stylesheet can compute the relative path between the current document and the target document. The stylesheet needs to know the <literal moreinfo="none">targetdoc</literal> identifiers for both documents, as they appear in the <parameter moreinfo="none">target.database.document</parameter> database file. This parameter passes to the stylesheet +the targetdoc identifier of the current document, since that +identifier does not appear in the document itself. </para> +<para>This parameter can also be used for print output. If an olink's <literal moreinfo="none">targetdoc</literal> id differs from the <literal moreinfo="none">current.docid</literal>, then the stylesheet can append the target document's title to the generated olink text. That identifies to the reader that the link is to a different document, not the current document. See also <parameter moreinfo="none">olink.doctitle</parameter> to enable that feature.</para> +</refsect1> +</refentry> + +<refentry id="olink.doctitle"> +<refmeta> +<refentrytitle>olink.doctitle</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>olink.doctitle</refname> +<refpurpose>show the document title for external olinks?</refpurpose> + +</refnamediv> +<refsynopsisdiv> <src:fragment id="olink.doctitle.frag"><xsl:param name="olink.doctitle" + select="0"/> </src:fragment> +</refsynopsisdiv> +<refsect1> +<title>Description</title> +<para>When olinks between documents are resolved for print output, the generated text may not make it clear that the reference is to another document. It is possible for the stylesheets to append the other document's title to external olinks. For this to happen, two parameters must be set. The <parameter moreinfo="none">olink.doctitle</parameter> parameter should be set to nonzero to enable this +feature. And you should set the <parameter moreinfo="none">current.docid</parameter> parameter to the document id for the document currently +being processed for output. If an olink's <literal moreinfo="none">targetdoc</literal> id differs from the <literal moreinfo="none">current.docid</literal>, then the stylesheet can append the target document's +title to the generated olink text. </para> +</refsect1> +</refentry> + <refentry id="link.mailto.url"> <refmeta> <refentrytitle>link.mailto.url</refentrytitle> @@ -2412,6 +2925,28 @@ </refsect1> </refentry> +<refentry id="bibliography.numbered"> +<refmeta> +<refentrytitle>bibliography.numbered</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>bibliography.numbered</refname> +<refpurpose>Should bibliography entries be numbered?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="bibliography.numbered.frag"><xsl:param name="bibliography.numbered" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If non-zero bibliography entries will be numbered</para> + +</refsect1> +</refentry> + </reference> <reference><title>Glossary</title> @@ -2653,37 +3188,99 @@ <para>The stylesheets will format the glossary in your document as if all of the entries implicilty referenced appeared there literally.</para> </refsect2> -</refsect1> -</refentry> -</reference> +<refsect2><title>Limitations</title> -<reference><title>Miscellaneous</title> -<refentry id="graphic.default.extension"> +<para>Glossary cross-references <emphasis>within the glossary</emphasis> are +not supported. For example, this <emphasis>will not</emphasis> work:</para> + +<informalexample> +<programlisting format="linespecific"><glossentry> +<glossterm>gloss-1</glossterm> +<glossdef><para>A description that references <glossterm>gloss-2</glossterm>.</para> +<glossseealso>gloss-2</glossseealso> +</glossdef> +</glossentry></programlisting> +</informalexample> + +<para>If you put glossary cross-references in your glossary that way, +you'll get the cryptic error: <computeroutput moreinfo="none">Warning: +glossary.collection specified, but there are 0 automatic +glossaries</computeroutput>.</para> + +<para>Instead, you must do two things:</para> + +<orderedlist inheritnum="ignore" continuation="restarts"> +<listitem> +<para>Markup your glossary using <sgmltag>glossseealso</sgmltag>:</para> + +<informalexample> +<programlisting format="linespecific"><glossentry> +<glossterm>gloss-1</glossterm> +<glossdef><para>A description that references <glossterm>gloss-2</glossterm>.</para> +<glossseealso>gloss-2</glossseealso> +</glossdef> +</glossentry></programlisting> +</informalexample> +</listitem> + +<listitem> +<para>Make sure there is at least one <sgmltag>glossterm</sgmltag> reference to +<glossterm>gloss-2</glossterm> <emphasis>in your document</emphasis>. The +easiest way to do that is probably within a <sgmltag>remark</sgmltag> in your +automatic glossary:</para> + +<informalexample> +<programlisting format="linespecific"><glossary role="auto"> +<remark>Make sure there's a reference to <glossterm>gloss-2</glossterm>.</remark> +<glossentry> +<glossterm>Irrelevant</glossterm> +<glossdef> +<para>If you can see this, the document was processed incorrectly. Use +the <parameter>glossary.collection</parameter> parameter.</para> +</glossdef> +</glossentry> +</glossary></programlisting> +</informalexample> +</listitem> +</orderedlist> +</refsect2> + +</refsect1> +</refentry> + +<refentry id="glossentry.show.acronym"> <refmeta> -<refentrytitle>graphic.default.extension</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>glossentry.show.acronym</refentrytitle> +<refmiscinfo role="type">list</refmiscinfo> </refmeta> <refnamediv> -<refname>graphic.default.extension</refname> -<refpurpose>Default extension for graphic filenames</refpurpose> +<refname>glossentry.show.acronym</refname> +<refpurpose>Display <sgmltag>glossentry</sgmltag> acronyms?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="graphic.default.extension.frag"><xsl:param name="graphic.default.extension"/></src:fragment> +<src:fragment id="glossentry.show.acronym.frag"><xsl:param name="glossentry.show.acronym" + select="'no'"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>If a <sgmltag>graphic</sgmltag> or <sgmltag>mediaobject</sgmltag> -includes a reference to a filename that does not include an extension, -and the <sgmltag class="attribute">format</sgmltag> attribute is -<emphasis>unspecified</emphasis>, the default extension will be used. -</para> +<para>A setting of <quote>yes</quote> means they should be displayed; +<quote>no</quote> means they shouldn't. If <quote>primary</quote> is used, +then they are shown as the primary text for the entry.</para> + +<note> +<para>This setting controls both <sgmltag>acronym</sgmltag> and +<sgmltag>abbrev</sgmltag> elements in the <sgmltag>glossentry</sgmltag>.</para> +</note> </refsect1> </refentry> +</reference> + +<reference><title>Miscellaneous</title> <refentry id="formal.procedures"> <refmeta> <refentrytitle>formal.procedures</refentrytitle> @@ -3145,1261 +3742,2789 @@ </refsect1> </refentry> -</reference> - -<reference><title>Chunking</title> -<refentry id="html.ext"> +<refentry id="use.role.as.xrefstyle"> <refmeta> -<refentrytitle>html.ext</refentrytitle> - +<refentrytitle>use.role.as.xrefstyle</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>html.ext</refname> -<refpurpose>Identifies the extension of generated HTML files</refpurpose> +<refname>use.role.as.xrefstyle</refname> +<refpurpose>Use <sgmltag class="attribute">role</sgmltag> attribute for +<sgmltag class="attribute">xrefstyle</sgmltag> on <sgmltag>xref</sgmltag>?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="html.ext.frag"><xsl:param name="html.ext" - select="'.html'"/></src:fragment> +<src:fragment id="use.role.as.xrefstyle.frag"><xsl:param name="use.role.as.xrefstyle" + select="1"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>The extension identified by <parameter moreinfo="none">html.ext</parameter> will -be used as the filename extension for chunks created by this stylesheet. -</para> +<para>If non-zero, the <sgmltag class="attribute">role</sgmltag> attribute on +<sgmltag>xref</sgmltag> will be used to select the cross reference style. +The <ulink url="http://www.oasis-open.org/docbook/">DocBook +Technical Committee</ulink> recently added an +<sgmltag class="attribute">xrefstyle</sgmltag> attribute for this purpose. +If the <sgmltag class="attribute">xrefstyle</sgmltag> attribute +is present, <sgmltag class="attribute">role</sgmltag> will be ignored, regardless +of this setting.</para> + +<para>Until an official DocBook release that includes the new +attribute, this flag allows <sgmltag class="attribute">role</sgmltag> +to serve that purpose.</para> + +</refsect1> + +<refsect1><title>Example</title> +<para>The following small stylesheet shows how to configure the stylesheets to make +use of the cross reference style:</para> + +<programlisting format="linespecific"><?xml version="1.0"?> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + version="1.0"> + +<xsl:import href="../xsl/html/docbook.xsl"/> + +<xsl:output method="html"/> + +<xsl:param name="local.l10n.xml" select="document('')"/> +<l:i18n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0"> + <l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="en"> + <l:context name="xref"> + <l:template name="chapter" style="title" text="Chapter %n, %t"/> + <l:template name="chapter" text="Chapter %n"/> + </l:context> + </l:l10n> +</l:i18n> + +</xsl:stylesheet></programlisting> + +<para>With this stylesheet, the cross references in the following document:</para> + +<programlisting format="linespecific"><?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" + "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"> +<book id="book"><title>Book</title> + +<preface> +<title>Preface</title> + +<para>Normal: <xref linkend="ch1"/>.</para> +<para>Title: <xref xrefstyle="title" linkend="ch1"/>.</para> + +</preface> + +<chapter id="ch1"> +<title>First Chapter</title> + +<para>Irrelevant.</para> + +</chapter> +</book></programlisting> + +<para>will appear as:</para> + +<informalexample> +<para>Normal: Chapter 1.</para> +<para>Title: Chapter 1, <emphasis>First Chapter</emphasis>.</para> +</informalexample> </refsect1> + </refentry> -<refentry id="html.extra.head.links"> +<refentry id="menuchoice.separator"> <refmeta> -<refentrytitle>html.extra.head.links</refentrytitle> -<refmiscinfo role="type">boolean</refmiscinfo> +<refentrytitle>menuchoice.separator</refentrytitle> +<refmiscinfo role="type"/> </refmeta> <refnamediv> -<refname>html.extra.head.links</refname> -<refpurpose>Toggle extra HTML head link information</refpurpose> +<refname>menuchoice.separator</refname> +<refpurpose/> </refnamediv> <refsynopsisdiv> -<src:fragment id="html.extra.head.links.frag"><xsl:param name="html.extra.head.links" - select="1"/></src:fragment> +<src:fragment id="menuchoice.separator.frag"><xsl:param name="menuchoice.separator" + select="'+'"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>If non-zero, extra <sgmltag>link</sgmltag> elements will be -generated in the <sgmltag>head</sgmltag> of chunked HTML files. These -extra links point to chapters, appendixes, sections, etc. as supported -by the <quote>Site Navigation Bar</quote> in Mozilla 1.0 (as of CR1, at least). +<para>Separator used to connect items of a <sgmltag>menuchoice</sgmltag> other +than <sgmltag>guimenuitem</sgmltag> and <sgmltag>guisubmenu</sgmltag>. The latter +elements are linked with <parameter moreinfo="none">menuchoice.menu.separator</parameter>. </para> </refsect1> </refentry> -<refentry id="root.filename"> +<refentry id="menuchoice.menu.separator"> <refmeta> -<refentrytitle>root.filename</refentrytitle> - +<refentrytitle>menuchoice.menu.separator</refentrytitle> +<refmiscinfo role="type"/> </refmeta> <refnamediv> -<refname>root.filename</refname> -<refpurpose>Identifies the name of the root HTML file when chunking</refpurpose> +<refname>menuchoice.menu.separator</refname> +<refpurpose/> </refnamediv> <refsynopsisdiv> -<src:fragment id="root.filename.frag"><xsl:param name="root.filename" - select="'index'"/></src:fragment> +<src:fragment id="menuchoice.menu.separator.frag"><xsl:param name="menuchoice.menu.separator" + select="'->'"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>The <parameter moreinfo="none">root.filename</parameter> is the base filename for -the chunk created for the root of each document processed. +<para>Separator used to connect items of a <sgmltag>menuchoice</sgmltag> with +<sgmltag>guimenuitem</sgmltag> or <sgmltag>guisubmenu</sgmltag>. Other elements +are linked with <parameter moreinfo="none">menuchoice.separator</parameter>. </para> </refsect1> </refentry> -<refentry id="base.dir"> +<refentry id="default.float.class"> <refmeta> -<refentrytitle>base.dir</refentrytitle> - +<refentrytitle>default.float.class</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>base.dir</refname> -<refpurpose>The base directory of chunks</refpurpose> +<refname>default.float.class</refname> +<refpurpose>Specifies the default float class</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="base.dir.frag"><xsl:param name="base.dir" - select="''"/></src:fragment> +<src:fragment id="default.float.class.frag"><xsl:param name="default.float.class" + select="'before'"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>If specified, the <literal moreinfo="none">base.dir</literal> identifies -the output directory for chunks. (If not specified, the output directory -is system dependent.)</para> +<para>FIXME:</para> </refsect1> </refentry> -<refentry id="generate.manifest"> - <refmeta> - <refentrytitle>generate.manifest</refentrytitle> - <refmiscinfo role="type">boolean</refmiscinfo> - </refmeta> - <refnamediv> - <refname>generate.manifest</refname> - <refpurpose>Generate a 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>If non-zero, a list of HTML files generated by the - stylesheet transformation is written to the file named by - the <parameter moreinfo="none">manifest</parameter> parameter.</para> - - </refsect1> -</refentry> - -<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>The name of the file to which a manifest is written (if the - value of the <parameter moreinfo="none">generate.manifest</parameter> parameter - is non-zero).</para> - - </refsect1> -</refentry> - -<refentry id="chunk.toc"> +<refentry id="footnote.number.format"> <refmeta> -<refentrytitle>chunk.toc</refentrytitle> +<refentrytitle>footnote.number.format</refentrytitle> <refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>chunk.toc</refname> -<refpurpose>An explicit TOC to be used for chunking</refpurpose> +<refname>footnote.number.format</refname> +<refpurpose>Identifies the format used for footnote numbers</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="chunk.toc.frag"><xsl:param name="chunk.toc" - select="''"/></src:fragment> +<src:fragment id="footnote.number.format.frag"><xsl:param name="footnote.number.format" + select="'1'"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>The <parameter moreinfo="none">chunk.toc</parameter> identifies an explicit TOC that -will be used for chunking. This parameter is only used by the -<filename moreinfo="none">chunktoc.xsl</filename> stylesheet (and customization layers built -from it).</para> +<para>The <parameter moreinfo="none">footnote.number.format</parameter> specifies the format +to use for footnote numeration (1, i, I, a, or A).</para> </refsect1> </refentry> -<refentry id="chunk.section.depth"> +<refentry id="table.footnote.number.format"> <refmeta> -<refentrytitle>chunk.section.depth</refentrytitle> -<refmiscinfo role="type">integer</refmiscinfo> +<refentrytitle>table.footnote.number.format</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>chunk.section.depth</refname> -<refpurpose>Depth to which sections should be chunked</refpurpose> +<refname>table.footnote.number.format</refname> +<refpurpose>Identifies the format used for footnote numbers in tables</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="chunk.section.depth.frag"><xsl:param name="chunk.section.depth" - select="1"/></src:fragment> +<src:fragment id="table.footnote.number.format.frag"><xsl:param name="table.footnote.number.format" + select="'a'"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>This parameter sets the depth of section chunking.</para> +<para>The <parameter moreinfo="none">table.footnote.number.format</parameter> specifies the format +to use for footnote numeration (1, i, I, a, or A) in tables.</para> </refsect1> </refentry> -<refentry id="chunk.first.sections"> +<refentry id="footnote.number.symbols"> <refmeta> -<refentrytitle>chunk.first.sections</refentrytitle> - +<refentrytitle>footnote.number.symbols</refentrytitle> +<refmiscinfo role="type"/> </refmeta> <refnamediv> -<refname>chunk.first.sections</refname> -<refpurpose>Chunk the first top-level section?</refpurpose> +<refname>footnote.number.symbols</refname> +<refpurpose/> </refnamediv> <refsynopsisdiv> -<src:fragment id="chunk.first.sections.frag"><xsl:param name="chunk.first.sections" - select="0"/></src:fragment> +<src:fragment id="footnote.number.symbols.frag"><xsl:param name="footnote.number.symbols" + select="''"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>If non-zero, a chunk will be created for the first top-level -<sgmltag>sect1</sgmltag> or <sgmltag>section</sgmltag> elements in -each component. Otherwise, that section will be part of the chunk for -its parent. -</para> +<para>If <parameter moreinfo="none">footnote.number.symbols</parameter> is not the empty string, +footnotes will use the characters it contains as footnote symbols. For example, +<quote>*&#x2020;&#x2021;&#x25CA;&#x2720;</quote> will identify +footnotes with <quote>*</quote>, <quote>â </quote>, <quote>â¡</quote>, +<quote>â</quote>, and <quote>â </quote>. If there are more footnotes +than symbols, the stylesheets will fall back to numbered footnotes using +<parameter moreinfo="none">footnote.number.format</parameter>.</para> + +<para>The use of symbols for footnotes depends on the ability of your +processor (or browser) to render the symbols you select. Not all systems are +capable of displaying the full range of Unicode characters. If the quoted characters +in the preceding paragraph are not displayed properly, that's a good indicator +that you may have trouble using those symbols for footnotes.</para> </refsect1> </refentry> -<refentry id="chunk.quietly"> +<refentry id="table.footnote.number.symbols"> <refmeta> -<refentrytitle>chunk.quietly</refentrytitle> - +<refentrytitle>table.footnote.number.symbols</refentrytitle> +<refmiscinfo role="type"/> </refmeta> <refnamediv> -<refname>chunk.quietly</refname> -<refpurpose>Omit the chunked filename messages.</refpurpose> +<refname>table.footnote.number.symbols</refname> +<refpurpose/> </refnamediv> <refsynopsisdiv> -<src:fragment id="chunk.quietly.frag"><xsl:param name="chunk.quietly" - select="0"/></src:fragment> +<src:fragment id="table.footnote.number.symbols.frag"><xsl:param name="table.footnote.number.symbols" + select="''"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>If zero (the default), the XSL processor emits a message naming -each separate chunk filename as it is being output. -If nonzero, then the messages are suppressed. -</para> +<para>If <parameter moreinfo="none">table.footnote.number.symbols</parameter> is not the empty string, +table footnotes will use the characters it contains as footnote symbols. For example, +<quote>*&#x2020;&#x2021;&#x25CA;&#x2720;</quote> will identify +footnotes with <quote>*</quote>, <quote>â </quote>, <quote>â¡</quote>, +<quote>â</quote>, and <quote>â </quote>. If there are more footnotes +than symbols, the stylesheets will fall back to numbered footnotes using +<parameter moreinfo="none">table.footnote.number.format</parameter>.</para> + +<para>The use of symbols for footnotes depends on the ability of your +processor (or browser) to render the symbols you select. Not all systems are +capable of displaying the full range of Unicode characters. If the quoted characters +in the preceding paragraph are not displayed properly, that's a good indicator +that you may have trouble using those symbols for footnotes.</para> </refsect1> </refentry> -<refentry id="saxon.character.representation"> +<refentry id="xref.with.number.and.title"> <refmeta> -<refentrytitle>saxon.character.representation</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>xref.with.number.and.title</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>saxon.character.representation</refname> -<refpurpose>Saxon character representation used in generated HTML pages</refpurpose> +<refname>xref.with.number.and.title</refname> +<refpurpose>Use number and title in cross references</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="saxon.character.representation.frag"><xsl:param name="saxon.character.representation" - select="'entity;decimal'"/></src:fragment> +<src:fragment id="xref.with.number.and.title.frag"><xsl:param name="xref.with.number.and.title" + select="1"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>This character representation is used in files generated by chunking stylesheet. If -you want to suppress entity references for characters with direct representation -in default.encoding, set this parameter to value <literal moreinfo="none">native</literal>. -</para> +<para>FIXME:</para> </refsect1> </refentry> -<refentry id="default.encoding"> +</reference> + +<reference><title>Graphics</title> +<refentry id="graphic.default.extension"> <refmeta> -<refentrytitle>default.encoding</refentrytitle> +<refentrytitle>graphic.default.extension</refentrytitle> <refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>default.encoding</refname> -<refpurpose>Encoding used in generated HTML pages</refpurpose> +<refname>graphic.default.extension</refname> +<refpurpose>Default extension for graphic filenames</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="default.encoding.frag"><xsl:param name="default.encoding" - select="'ISO-8859-1'"/></src:fragment> +<src:fragment id="graphic.default.extension.frag"><xsl:param name="graphic.default.extension"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>This encoding is used in files generated by chunking stylesheet. Currently -only Saxon is able to change output encoding. +<para>If a <sgmltag>graphic</sgmltag> or <sgmltag>mediaobject</sgmltag> +includes a reference to a filename that does not include an extension, +and the <sgmltag class="attribute">format</sgmltag> attribute is +<emphasis>unspecified</emphasis>, the default extension will be used. </para> </refsect1> </refentry> -<refentry id="output.method"> +<refentry id="default.image.width"> <refmeta> -<refentrytitle>output.method</refentrytitle> -<refmiscinfo role="type">list</refmiscinfo> -<refmiscinfo role="value">html</refmiscinfo> -<refmiscinfo role="value">xml</refmiscinfo> +<refentrytitle>default.image.width</refentrytitle> +<refmiscinfo role="type">length</refmiscinfo> </refmeta> <refnamediv> -<refname>output.method</refname> -<refpurpose/> +<refname>default.image.width</refname> +<refpurpose>The default width of images</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="output.method.frag"><xsl:param name="output.method" - select="'html'"/></src:fragment> +<src:fragment id="default.image.width.frag"><xsl:param name="default.image.width" + select="''"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Selects the output method for chunked documents.</para> +<para>If specified, this value will be used for the +<sgmltag class="attribute">width</sgmltag> attribute on +images that do not specify any +<ulink url="http://docbook.org/tdg/en/html/imagedata.html#viewport.area">viewport +dimensions</ulink>.</para> </refsect1> </refentry> -<refentry id="chunk.datafile"> +<refentry id="nominal.image.width"> <refmeta> -<refentrytitle>chunk.datafile</refentrytitle> - +<refentrytitle>nominal.image.width</refentrytitle> +<refmiscinfo role="type">length</refmiscinfo> </refmeta> <refnamediv> -<refname>chunk.datafile</refname> -<refpurpose>Name of the temporary file used to hold chunking data</refpurpose> +<refname>nominal.image.width</refname> +<refpurpose>The nominal image width</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="chunk.datafile.frag"><xsl:param name="chunk.datafile" - select="'.chunks'"/></src:fragment> +<src:fragment id="nominal.image.width.frag"><xsl:param name="nominal.image.width" + select="6 * $pixels.per.inch"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Chunking is now a two-step process. The -<parameter moreinfo="none">chunk.datafile</parameter> is the name of the file used to -hold the chunking data. -</para> +<para>Graphic widths expressed as a percentage are problematic. In the +following discussion, we speak of width and contentwidth, but +the same issues apply to depth and contentdepth.</para> + +<para>A width of 50% means "half of the available space for the image." +That's fine. But note that in HTML, this is a dynamic property and +the image size will vary if the browser window is resized.</para> + +<para>A contentwidth of 50% means "half of the actual image width". +But what does that mean if the stylesheets cannot assess the image's +actual size? Treating this as a width of 50% is one possibility, but +it produces behavior (dynamic scaling) that seems entirely out of +character with the meaning.</para> + +<para>Instead, the stylesheets define a +<parameter moreinfo="none">nominal.image.width</parameter> and convert percentages to +actual values based on that nominal size.</para> </refsect1> </refentry> -<refentry id="navig.graphics"> +<refentry id="nominal.image.depth"> <refmeta> -<refentrytitle>navig.graphics</refentrytitle> -<refmiscinfo role="type">boolean</refmiscinfo> +<refentrytitle>nominal.image.depth</refentrytitle> +<refmiscinfo role="type">length</refmiscinfo> </refmeta> <refnamediv> -<refname>navig.graphics</refname> -<refpurpose>Use graphics in navigational headers and footers?</refpurpose> +<refname>nominal.image.depth</refname> +<refpurpose>Nominal image depth</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="navig.graphics.frag"><xsl:param name="navig.graphics" - select="0"/></src:fragment> +<src:fragment id="nominal.image.depth.frag"><xsl:param name="nominal.image.depth" + select="4 * $pixels.per.inch"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>If true (non-zero), the navigational headers and footers in chunked -HTML are presented in an alternate style that uses -graphical icons for Next, Previous, Up, and Home. -Default graphics are provided in the distribution. -</para> +<para>See <parameter moreinfo="none">nominal.image.width</parameter>.</para> </refsect1> </refentry> -<refentry id="navig.graphics.extension"> +<refentry id="use.embed.for.svg"> <refmeta> -<refentrytitle>navig.graphics.extension</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>use.embed.for.svg</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>navig.graphics.extension</refname> -<refpurpose>Extension for navigational graphics</refpurpose> +<refname>use.embed.for.svg</refname> +<refpurpose>Use HTML <sgmltag>embed</sgmltag> for SVG?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="navig.graphics.extension.frag"><xsl:param name="navig.graphics.extension" - select="'.gif'"/></src:fragment> +<src:fragment id="use.embed.for.svg.frag"><xsl:param name="use.embed.for.svg" + select="0"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Sets the filename extension to use on navigational graphics used -in the headers and footers of chunked HTML.</para> +<para>If non-zero, an <sgmltag>embed</sgmltag> element will be created for +SVG figures. An <sgmltag>object</sgmltag> is <emphasis>always</emphasis> created, +this parameter merely controls whether or not an additional <sgmltag>embed</sgmltag> +is generated inside the <sgmltag>object</sgmltag>.</para> + +<para>On the plus side, this may be more portable among browsers and plug-ins. +On the minus side, it isn't valid HTML.</para> </refsect1> </refentry> -<refentry id="navig.graphics.path"> +<refentry id="make.graphic.viewport"> <refmeta> -<refentrytitle>navig.graphics.path</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>make.graphic.viewport</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>navig.graphics.path</refname> -<refpurpose>Path to navigational graphics</refpurpose> +<refname>make.graphic.viewport</refname> +<refpurpose>Use tables in HTML to make viewports for graphics</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="navig.graphics.path.frag"><xsl:param name="navig.graphics.path">images/</xsl:param></src:fragment> +<src:fragment id="make.graphic.viewport.frag"><xsl:param name="make.graphic.viewport" + select="1"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Sets the path, probably relative to the directory where the HTML -files are created, to the navigational graphics used in the -headers and footers of chunked HTML. +<para>The HTML <sgmltag>img</sgmltag> element only supports the notion +of content-area scaling; it doesn't support the distinction between a +content-area and a viewport-area, so we have to make some compromises.</para> + +<para>If <parameter moreinfo="none">make.graphic.viewport</parameter> is non-zero, a table +will be used to frame the image. This creates an effective viewport-area. </para> +<para>Tables and alignment don't work together, so this parameter is ignored +if alignment is specified on an image.</para> </refsect1> </refentry> -<refentry id="navig.showtitles"> +<refentry id="preferred.mediaobject.role"> <refmeta> -<refentrytitle>navig.showtitles</refentrytitle> -<refmiscinfo role="type">boolean</refmiscinfo> +<refentrytitle>preferred.mediaobject.role</refentrytitle> </refmeta> <refnamediv> -<refname>navig.showtitles</refname> -<refpurpose>Display titles in HTML headers and footers?</refpurpose> +<refname>preferred.mediaobject.role</refname> +<refpurpose>Select which mediaobject to use based on +this value of an object's <sgmltag class="attribute">role</sgmltag> attribute. +</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="navig.showtitles.frag"><xsl:param name="navig.showtitles">1</xsl:param></src:fragment> +<src:fragment id="preferred.mediaobject.role.frag"><xsl:param name="preferred.mediaobject.role"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>If true (non-zero), -the headers and footers of chunked HTML -display the titles of the next and previous chunks, -along with the words 'Next' and 'Previous' (or the -equivalent graphical icons if navig.graphics is true). -If false (zero), then only the words 'Next' and 'Previous' -(or the icons) are displayed. +<para>A mediaobject may contain several objects such as imageobjects. +If the parameter <parameter moreinfo="none">use.role.for.mediaobject</parameter> +is non-zero, then the <sgmltag class="attribute">role</sgmltag> attribute on +<sgmltag>imageobject</sgmltag>s and other objects within a <sgmltag>mediaobject</sgmltag> container will be used to select which object will be +used. If one of the objects has a role value that matches the +preferred.mediaobject.role parameter, then it has first +priority for selection. If more than one has such a +role value, the first one is used. </para> - +<para> +See the <parameter moreinfo="none">use.role.for.mediaobject</parameter> parameter +for the sequence of selection.</para> </refsect1> </refentry> -</reference> - -<reference><title>Profiling</title> -<partintro> -<para>Following parameters can be used for attribute value based -profiling of your document. For more info about profiling look at -<ulink url="http://docbook.sourceforge.net/projects/xsl/doc/tools/profiling.html">http://docbook.sourceforge.net/projects/xsl/doc/tools/profiling.html</ulink>.</para> -</partintro> -<refentry id="profile.arch"> +<refentry id="use.role.for.mediaobject"> <refmeta> -<refentrytitle>profile.arch</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>use.role.for.mediaobject</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.arch</refname> -<refpurpose>Target profile for <sgmltag class="attribute">arch</sgmltag> -attribute</refpurpose> +<refname>use.role.for.mediaobject</refname> +<refpurpose>Use <sgmltag class="attribute">role</sgmltag> attribute +value for selecting which of several objects within a mediaobject to use. +</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="profile.arch.frag"><xsl:param name="profile.arch" - select="''"/></src:fragment> +<src:fragment id="use.role.for.mediaobject.frag"><xsl:param name="use.role.for.mediaobject" + select="1"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Value of this parameter specifies profiles which should be -included in the output. You can specify multiple profiles by -separating them by semicolon. You can change separator character by -<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> -parameter.</para> - -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> - +<para>If non-zero, the <sgmltag class="attribute">role</sgmltag> attribute on +<sgmltag>imageobject</sgmltag>s or other objects within a <sgmltag>mediaobject</sgmltag> container will be used to select which object will be +used. +</para> +<para> +The order of selection when then parameter is non-zero is: +</para> +<orderedlist inheritnum="ignore" continuation="restarts"> +<listitem> + <para>If the stylesheet parameter <parameter moreinfo="none">preferred.mediaojbect.role</parameter> has a value, then the object whose role equals that value is selected.</para> +</listitem> +<listitem> +<para>Else if an object's role attribute has a value of +<literal moreinfo="none">html</literal> for HTML processing or +<literal moreinfo="none">fo</literal> for FO output, then the first +of such objects is selected. +</para> +</listitem> +<listitem> +<para>Else the first suitable object is selected.</para> +</listitem> +</orderedlist> +<para> +If the value of +<parameter moreinfo="none">use.role.for.mediaobject</parameter> +is zero, then role attributes are not considered +and the first suitable object +with or without a role value is used. +</para> </refsect1> </refentry> -<refentry id="profile.condition"> +<refentry id="ignore.image.scaling"> <refmeta> -<refentrytitle>profile.condition</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>ignore.image.scaling</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.condition</refname> -<refpurpose>Target profile for <sgmltag class="attribute">condition</sgmltag> -attribute</refpurpose> +<refname>ignore.image.scaling</refname> +<refpurpose>Tell the stylesheets to ignore the author's image scaling attributes</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="profile.condition.frag"><xsl:param name="profile.condition" - select="''"/></src:fragment> +<src:fragment id="ignore.image.scaling.frag"><xsl:param name="ignore.image.scaling" + select="0"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Value of this parameter specifies profiles which should be -included in the output. You can specify multiple profiles by -separating them by semicolon. You can change separator character by -<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> -parameter.</para> - -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> +<para>If non-zero, the scaling attributes on graphics and media objects are +ignored.</para> </refsect1> </refentry> -<refentry id="profile.conformance"> +</reference> + +<reference><title>Chunking</title> +<refentry id="chunker.output.cdata-section-elements"> <refmeta> -<refentrytitle>profile.conformance</refentrytitle> +<refentrytitle>chunker.output.cdata-section-elements</refentrytitle> <refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.conformance</refname> -<refpurpose>Target profile for <sgmltag class="attribute">conformance</sgmltag> -attribute</refpurpose> +<refname>chunker.output.cdata-section-elements</refname> +<refpurpose>List of elements to escape with CDATA sections</refpurpose> </refnamediv> -<refsynopsisdiv> -<src:fragment id="profile.conformance.frag"><xsl:param name="profile.conformance" - select="''"/></src:fragment> +<refsynopsisdiv><xsl:param name="chunker.output.cdata-section-elements" select="''"/> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Value of this parameter specifies profiles which should be -included in the output. You can specify multiple profiles by -separating them by semicolon. You can change separator character by -<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> -parameter.</para> +<para>This parameter specifies the list of elements that should be escaped +as CDATA sections by the chunking stylesheet. Not all processors support +specification of this parameter. +</para> -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> +<note> +<para>This parameter is documented here, but the declaration is actually +in the <filename moreinfo="none">chunker.xsl</filename> stylesheet module.</para> +</note> </refsect1> </refentry> -<refentry id="profile.lang"> +<refentry id="chunker.output.doctype-public"> <refmeta> -<refentrytitle>profile.lang</refentrytitle> +<refentrytitle>chunker.output.doctype-public</refentrytitle> <refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.lang</refname> -<refpurpose>Target profile for <sgmltag class="attribute">lang</sgmltag> -attribute</refpurpose> +<refname>chunker.output.doctype-public</refname> +<refpurpose>Public identifer to use in the document type of generated pages</refpurpose> </refnamediv> -<refsynopsisdiv> -<src:fragment id="profile.lang.frag"><xsl:param name="profile.lang" - select="''"/></src:fragment> +<refsynopsisdiv><xsl:param name="chunker.output.doctype-public" select="''"/> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Value of this parameter specifies profiles which should be -included in the output. You can specify multiple profiles by -separating them by semicolon. You can change separator character by -<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> -parameter.</para> +<para>This parameter specifies the public identifier that should be used by +the chunking stylesheet in the document type declaration of chunked pages. +Not all processors support specification of +this parameter. +</para> -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> +<note> +<para>This parameter is documented here, but the declaration is actually +in the <filename moreinfo="none">chunker.xsl</filename> stylesheet module.</para> +</note> </refsect1> </refentry> -<refentry id="profile.os"> +<refentry id="chunker.output.doctype-system"> <refmeta> -<refentrytitle>profile.os</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>chunker.output.doctype-system</refentrytitle> +<refmiscinfo role="type">uri</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.os</refname> -<refpurpose>Target profile for <sgmltag class="attribute">os</sgmltag> -attribute</refpurpose> +<refname>chunker.output.doctype-system</refname> +<refpurpose>System identifier to use for the document type in generated pages</refpurpose> </refnamediv> -<refsynopsisdiv> -<src:fragment id="profile.os.frag"><xsl:param name="profile.os" - select="''"/></src:fragment> +<refsynopsisdiv><xsl:param name="chunker.output.doctype-system" select="''"/> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Value of this parameter specifies profiles which should be -included in the output. You can specify multiple profiles by -separating them by semicolon. You can change separator character by -<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> -parameter.</para> +<para>This parameter specifies the system identifier that should be used by +the chunking stylesheet in the document type declaration of chunked pages. +Not all processors support specification of +this parameter. +</para> -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> +<note> +<para>This parameter is documented here, but the declaration is actually +in the <filename moreinfo="none">chunker.xsl</filename> stylesheet module.</para> +</note> </refsect1> </refentry> -<refentry id="profile.revision"> +<refentry id="chunker.output.encoding"> <refmeta> -<refentrytitle>profile.revision</refentrytitle> +<refentrytitle>chunker.output.encoding</refentrytitle> <refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.revision</refname> -<refpurpose>Target profile for <sgmltag class="attribute">revision</sgmltag> -attribute</refpurpose> +<refname>chunker.output.encoding</refname> +<refpurpose>Encoding used in generated pages</refpurpose> </refnamediv> -<refsynopsisdiv> -<src:fragment id="profile.revision.frag"><xsl:param name="profile.revision" - select="''"/></src:fragment> +<refsynopsisdiv><xsl:param name="chunker.output.encoding" select="'ISO-8859-1'"/> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Value of this parameter specifies profiles which should be -included in the output. You can specify multiple profiles by -separating them by semicolon. You can change separator character by -<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> -parameter.</para> +<para>This parameter specifies the encoding to be used in files +generated by the chunking stylesheet. Not all processors support +specification of this parameter. +</para> -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> +<para>This parameter used to be named <literal moreinfo="none">default.encoding</literal>.</para> + +<note> +<para>This parameter is documented here, but the declaration is actually +in the <filename moreinfo="none">chunker.xsl</filename> stylesheet module.</para> +</note> </refsect1> </refentry> -<refentry id="profile.revisionflag"> +<refentry id="chunker.output.indent"> <refmeta> -<refentrytitle>profile.revisionflag</refentrytitle> +<refentrytitle>chunker.output.indent</refentrytitle> <refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.revisionflag</refname> -<refpurpose>Target profile for <sgmltag class="attribute">revisionflag</sgmltag> -attribute</refpurpose> +<refname>chunker.output.indent</refname> +<refpurpose>Specification of indentation on generated pages</refpurpose> </refnamediv> -<refsynopsisdiv> -<src:fragment id="profile.revisionflag.frag"><xsl:param name="profile.revisionflag" - select="''"/></src:fragment> +<refsynopsisdiv><xsl:param name="chunker.output.indent" select="'no'"/> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Value of this parameter specifies profiles which should be -included in the output. You can specify multiple profiles by -separating them by semicolon. You can change separator character by -<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> -parameter.</para> +<para>This parameter specifies the value of the indent +specification for generated pages. Not all processors support +specification of this parameter. +</para> -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> +<note> +<para>This parameter is documented here, but the declaration is actually +in the <filename moreinfo="none">chunker.xsl</filename> stylesheet module.</para> +</note> </refsect1> </refentry> -<refentry id="profile.role"> +<refentry id="chunker.output.media-type"> <refmeta> -<refentrytitle>profile.role</refentrytitle> +<refentrytitle>chunker.output.media-type</refentrytitle> <refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.role</refname> -<refpurpose>Target profile for <sgmltag class="attribute">role</sgmltag> -attribute</refpurpose> +<refname>chunker.output.media-type</refname> +<refpurpose>Media type to use in generated pages</refpurpose> </refnamediv> -<refsynopsisdiv> -<src:fragment id="profile.role.frag"><xsl:param name="profile.role" - select="''"/></src:fragment> +<refsynopsisdiv><xsl:param name="chunker.output.media-type" select="''"/> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Value of this parameter specifies profiles which should be -included in the output. You can specify multiple profiles by -separating them by semicolon. You can change separator character by -<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> -parameter.</para> +<para>This parameter specifies the media type that should be used by +the chunking stylesheet. Not all processors support specification of +this parameter. +</para> -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> +<note> +<para>This parameter is documented here, but the declaration is actually +in the <filename moreinfo="none">chunker.xsl</filename> stylesheet module.</para> +</note> </refsect1> </refentry> -<refentry id="profile.security"> +<refentry id="chunker.output.method"> <refmeta> -<refentrytitle>profile.security</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>chunker.output.method</refentrytitle> +<refmiscinfo role="type">list</refmiscinfo> +<refmiscinfo role="value">html</refmiscinfo> +<refmiscinfo role="value">xml</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.security</refname> -<refpurpose>Target profile for <sgmltag class="attribute">security</sgmltag> -attribute</refpurpose> +<refname>chunker.output.method</refname> +<refpurpose>Method used in generated pages</refpurpose> </refnamediv> -<refsynopsisdiv> -<src:fragment id="profile.security.frag"><xsl:param name="profile.security" - select="''"/></src:fragment> +<refsynopsisdiv><xsl:param name="chunker.output.method" select="'html'"/> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Value of this parameter specifies profiles which should be -included in the output. You can specify multiple profiles by -separating them by semicolon. You can change separator character by -<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> -parameter.</para> +<para>This parameter specifies the output method to be used in files +generated by the chunking stylesheet. +</para> -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> +<para>This parameter used to be named <literal moreinfo="none">output.method</literal>.</para> + +<note> +<para>This parameter is documented here, but the declaration is actually +in the <filename moreinfo="none">chunker.xsl</filename> stylesheet module.</para> +</note> </refsect1> </refentry> -<refentry id="profile.userlevel"> +<refentry id="chunker.output.omit-xml-declaration"> <refmeta> -<refentrytitle>profile.userlevel</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>chunker.output.omit-xml-declaration</refentrytitle> +<refmiscinfo role="type"/> </refmeta> <refnamediv> -<refname>profile.userlevel</refname> +<refname>chunker.output.omit-xml-declaration</refname> +<refpurpose>Omit-xml-declaration for generated pages</refpurpose> +</refnamediv> + +<refsynopsisdiv><xsl:param name="chunker.output.omit-xml-declaration" select="'no'"/> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>This parameter specifies the value of the omit-xml-declaration +specification for generated pages. Not all processors support +specification of this parameter. +</para> + +<note> +<para>This parameter is documented here, but the declaration is actually +in the <filename moreinfo="none">chunker.xsl</filename> stylesheet module.</para> +</note> + +</refsect1> +</refentry> + +<refentry id="chunker.output.standalone"> +<refmeta> +<refentrytitle>chunker.output.standalone</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>chunker.output.standalone</refname> +<refpurpose>Standalone declaration for generated pages</refpurpose> +</refnamediv> + +<refsynopsisdiv><xsl:param name="chunker.output.standalone" select="'no'"/> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>This parameter specifies the value of the standalone +specification for generated pages. Not all processors support +specification of this parameter. +</para> + +<note> +<para>This parameter is documented here, but the declaration is actually +in the <filename moreinfo="none">chunker.xsl</filename> stylesheet module.</para> +</note> + +</refsect1> +</refentry> + +<refentry id="saxon.character.representation"> +<refmeta> +<refentrytitle>saxon.character.representation</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>saxon.character.representation</refname> +<refpurpose>Saxon character representation used in generated HTML pages</refpurpose> +</refnamediv> + +<refsynopsisdiv><xsl:param name="saxon.character.representation" select="'entity;decimal'"/> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>This character representation is used in files generated by chunking stylesheet. If +you want to suppress entity references for characters with direct representation +in default.encoding, set this parameter to value <literal moreinfo="none">native</literal>. +</para> + +<note> +<para>This parameter is documented here, but the declaration is actually +in the <filename moreinfo="none">chunker.xsl</filename> stylesheet module.</para> +</note> + +</refsect1> +</refentry> + +<refentry id="html.ext"> +<refmeta> +<refentrytitle>html.ext</refentrytitle> + +</refmeta> +<refnamediv> +<refname>html.ext</refname> +<refpurpose>Identifies the extension of generated HTML files</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="html.ext.frag"><xsl:param name="html.ext" + select="'.html'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>The extension identified by <parameter moreinfo="none">html.ext</parameter> will +be used as the filename extension for chunks created by this stylesheet. +</para> + +</refsect1> +</refentry> + +<refentry id="html.extra.head.links"> +<refmeta> +<refentrytitle>html.extra.head.links</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>html.extra.head.links</refname> +<refpurpose>Toggle extra HTML head link information</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="html.extra.head.links.frag"><xsl:param name="html.extra.head.links" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If non-zero, extra <sgmltag>link</sgmltag> elements will be +generated in the <sgmltag>head</sgmltag> of chunked HTML files. These +extra links point to chapters, appendixes, sections, etc. as supported +by the <quote>Site Navigation Bar</quote> in Mozilla 1.0 (as of CR1, at least). +</para> + +</refsect1> +</refentry> + +<refentry id="root.filename"> +<refmeta> +<refentrytitle>root.filename</refentrytitle> + +</refmeta> +<refnamediv> +<refname>root.filename</refname> +<refpurpose>Identifies the name of the root HTML file when chunking</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="root.filename.frag"><xsl:param name="root.filename" + select="'index'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>The <parameter moreinfo="none">root.filename</parameter> is the base filename for +the chunk created for the root of each document processed. +</para> + +</refsect1> +</refentry> + +<refentry id="base.dir"> +<refmeta> +<refentrytitle>base.dir</refentrytitle> + +</refmeta> +<refnamediv> +<refname>base.dir</refname> +<refpurpose>The base directory of chunks</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="base.dir.frag"><xsl:param name="base.dir" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If specified, the <literal moreinfo="none">base.dir</literal> identifies +the output directory for chunks. (If not specified, the output directory +is system dependent.)</para> + +</refsect1> +</refentry> + +<refentry id="generate.manifest"> + <refmeta> + <refentrytitle>generate.manifest</refentrytitle> + <refmiscinfo role="type">boolean</refmiscinfo> + </refmeta> + <refnamediv> + <refname>generate.manifest</refname> + <refpurpose>Generate a 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>If non-zero, a list of HTML files generated by the + stylesheet transformation is written to the file named by + the <parameter moreinfo="none">manifest</parameter> parameter.</para> + + </refsect1> +</refentry> + +<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>The name of the file to which a manifest is written (if the + value of the <parameter moreinfo="none">generate.manifest</parameter> parameter + is non-zero).</para> + + </refsect1> +</refentry> + +<refentry id="chunk.toc"> +<refmeta> +<refentrytitle>chunk.toc</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>chunk.toc</refname> +<refpurpose>An explicit TOC to be used for chunking</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="chunk.toc.frag"><xsl:param name="chunk.toc" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>The <parameter moreinfo="none">chunk.toc</parameter> identifies an explicit TOC that +will be used for chunking. This parameter is only used by the +<filename moreinfo="none">chunktoc.xsl</filename> stylesheet (and customization layers built +from it).</para> + +</refsect1> +</refentry> + +<refentry id="chunk.tocs.and.lots"> +<refmeta> +<refentrytitle>chunk.tocs.and.lots</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>chunk.tocs.and.lots</refname> +<refpurpose>Should ToC and LoTs be in separate chunks?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="chunk.tocs.and.lots.frag"><xsl:param name="chunk.tocs.and.lots" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If non-zero, ToC and LoT (List of Examples, List of Figures, etc.) +will be put in a separate chunk. At the moment, this chunk is not in the +normal forward/backward navigation list. Instead, a new link is added to the +navigation footer.</para> + +<para>This feature is still somewhat experimental. Feedback welcome.</para> + +</refsect1> +</refentry> + +<refentry id="chunk.section.depth"> +<refmeta> +<refentrytitle>chunk.section.depth</refentrytitle> +<refmiscinfo role="type">integer</refmiscinfo> +</refmeta> +<refnamediv> +<refname>chunk.section.depth</refname> +<refpurpose>Depth to which sections should be chunked</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="chunk.section.depth.frag"><xsl:param name="chunk.section.depth" + select="1"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>This parameter sets the depth of section chunking.</para> + +</refsect1> +</refentry> + +<refentry id="chunk.first.sections"> +<refmeta> +<refentrytitle>chunk.first.sections</refentrytitle> + +</refmeta> +<refnamediv> +<refname>chunk.first.sections</refname> +<refpurpose>Chunk the first top-level section?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="chunk.first.sections.frag"><xsl:param name="chunk.first.sections" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If non-zero, a chunk will be created for the first top-level +<sgmltag>sect1</sgmltag> or <sgmltag>section</sgmltag> elements in +each component. Otherwise, that section will be part of the chunk for +its parent. +</para> + +</refsect1> +</refentry> + +<refentry id="chunk.quietly"> +<refmeta> +<refentrytitle>chunk.quietly</refentrytitle> + +</refmeta> +<refnamediv> +<refname>chunk.quietly</refname> +<refpurpose>Omit the chunked filename messages.</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="chunk.quietly.frag"><xsl:param name="chunk.quietly" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If zero (the default), the XSL processor emits a message naming +each separate chunk filename as it is being output. +If nonzero, then the messages are suppressed. +</para> + +</refsect1> +</refentry> + +<refentry id="navig.graphics"> +<refmeta> +<refentrytitle>navig.graphics</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>navig.graphics</refname> +<refpurpose>Use graphics in navigational headers and footers?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="navig.graphics.frag"><xsl:param name="navig.graphics" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If true (non-zero), the navigational headers and footers in chunked +HTML are presented in an alternate style that uses +graphical icons for Next, Previous, Up, and Home. +Default graphics are provided in the distribution. +</para> + +</refsect1> +</refentry> + +<refentry id="navig.graphics.extension"> +<refmeta> +<refentrytitle>navig.graphics.extension</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>navig.graphics.extension</refname> +<refpurpose>Extension for navigational graphics</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="navig.graphics.extension.frag"><xsl:param name="navig.graphics.extension" + select="'.gif'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Sets the filename extension to use on navigational graphics used +in the headers and footers of chunked HTML.</para> + +</refsect1> +</refentry> + +<refentry id="navig.graphics.path"> +<refmeta> +<refentrytitle>navig.graphics.path</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>navig.graphics.path</refname> +<refpurpose>Path to navigational graphics</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="navig.graphics.path.frag"><xsl:param name="navig.graphics.path">images/</xsl:param></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Sets the path, probably relative to the directory where the HTML +files are created, to the navigational graphics used in the +headers and footers of chunked HTML. +</para> + +</refsect1> +</refentry> + +<refentry id="navig.showtitles"> +<refmeta> +<refentrytitle>navig.showtitles</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>navig.showtitles</refname> +<refpurpose>Display titles in HTML headers and footers?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="navig.showtitles.frag"><xsl:param name="navig.showtitles">1</xsl:param></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If true (non-zero), +the headers and footers of chunked HTML +display the titles of the next and previous chunks, +along with the words 'Next' and 'Previous' (or the +equivalent graphical icons if navig.graphics is true). +If false (zero), then only the words 'Next' and 'Previous' +(or the icons) are displayed. +</para> + +</refsect1> +</refentry> + +</reference> + +<reference><title>Profiling</title> +<partintro> +<para>Following parameters can be used for attribute value based +profiling of your document. For more info about profiling look at +<ulink url="http://docbook.sourceforge.net/projects/xsl/doc/tools/profiling.html">http://docbook.sourceforge.net/projects/xsl/doc/tools/profiling.html</ulink>.</para> +</partintro> +<refentry id="profile.arch"> +<refmeta> +<refentrytitle>profile.arch</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.arch</refname> +<refpurpose>Target profile for <sgmltag class="attribute">arch</sgmltag> +attribute</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.arch.frag"><xsl:param name="profile.arch" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Value of this parameter specifies profiles which should be +included in the output. You can specify multiple profiles by +separating them by semicolon. You can change separator character by +<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> +parameter.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +</refsect1> +</refentry> + +<refentry id="profile.condition"> +<refmeta> +<refentrytitle>profile.condition</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.condition</refname> +<refpurpose>Target profile for <sgmltag class="attribute">condition</sgmltag> +attribute</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.condition.frag"><xsl:param name="profile.condition" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Value of this parameter specifies profiles which should be +included in the output. You can specify multiple profiles by +separating them by semicolon. You can change separator character by +<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> +parameter.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +</refsect1> +</refentry> + +<refentry id="profile.conformance"> +<refmeta> +<refentrytitle>profile.conformance</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.conformance</refname> +<refpurpose>Target profile for <sgmltag class="attribute">conformance</sgmltag> +attribute</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.conformance.frag"><xsl:param name="profile.conformance" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Value of this parameter specifies profiles which should be +included in the output. You can specify multiple profiles by +separating them by semicolon. You can change separator character by +<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> +parameter.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +</refsect1> +</refentry> + +<refentry id="profile.lang"> +<refmeta> +<refentrytitle>profile.lang</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.lang</refname> +<refpurpose>Target profile for <sgmltag class="attribute">lang</sgmltag> +attribute</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.lang.frag"><xsl:param name="profile.lang" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Value of this parameter specifies profiles which should be +included in the output. You can specify multiple profiles by +separating them by semicolon. You can change separator character by +<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> +parameter.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +</refsect1> +</refentry> + +<refentry id="profile.os"> +<refmeta> +<refentrytitle>profile.os</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.os</refname> +<refpurpose>Target profile for <sgmltag class="attribute">os</sgmltag> +attribute</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.os.frag"><xsl:param name="profile.os" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Value of this parameter specifies profiles which should be +included in the output. You can specify multiple profiles by +separating them by semicolon. You can change separator character by +<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> +parameter.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +</refsect1> +</refentry> + +<refentry id="profile.revision"> +<refmeta> +<refentrytitle>profile.revision</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.revision</refname> +<refpurpose>Target profile for <sgmltag class="attribute">revision</sgmltag> +attribute</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.revision.frag"><xsl:param name="profile.revision" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Value of this parameter specifies profiles which should be +included in the output. You can specify multiple profiles by +separating them by semicolon. You can change separator character by +<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> +parameter.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +</refsect1> +</refentry> + +<refentry id="profile.revisionflag"> +<refmeta> +<refentrytitle>profile.revisionflag</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.revisionflag</refname> +<refpurpose>Target profile for <sgmltag class="attribute">revisionflag</sgmltag> +attribute</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.revisionflag.frag"><xsl:param name="profile.revisionflag" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Value of this parameter specifies profiles which should be +included in the output. You can specify multiple profiles by +separating them by semicolon. You can change separator character by +<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> +parameter.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +</refsect1> +</refentry> + +<refentry id="profile.role"> +<refmeta> +<refentrytitle>profile.role</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.role</refname> +<refpurpose>Target profile for <sgmltag class="attribute">role</sgmltag> +attribute</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.role.frag"><xsl:param name="profile.role" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Value of this parameter specifies profiles which should be +included in the output. You can specify multiple profiles by +separating them by semicolon. You can change separator character by +<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> +parameter.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +<warning> +<para>Note that <sgmltag class="attribute">role</sgmltag> is often +used for other purposes than profiling. For example it is commonly +used to get emphasize in bold font:</para> + +<programlisting format="linespecific"><emphasis role="bold">very important</emphasis></programlisting> + +<para>If you are using <sgmltag class="attribute">role</sgmltag> for +these purposes do not forget to add values like <literal moreinfo="none">bold</literal> to +value of this parameter. If you forgot you will get document with +small pieces missing which are very hard to track.</para> + +<para>For this reason it is not recommended to use <sgmltag class="attribute">role</sgmltag> attribute for profiling. You should +rather use profiling specific attributes like <sgmltag class="attribute">userlevel</sgmltag>, <sgmltag class="attribute">os</sgmltag>, <sgmltag class="attribute">arch</sgmltag>, <sgmltag class="attribute">condition</sgmltag>, etc.</para> +</warning> + +</refsect1> +</refentry> + +<refentry id="profile.security"> +<refmeta> +<refentrytitle>profile.security</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.security</refname> +<refpurpose>Target profile for <sgmltag class="attribute">security</sgmltag> +attribute</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.security.frag"><xsl:param name="profile.security" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Value of this parameter specifies profiles which should be +included in the output. You can specify multiple profiles by +separating them by semicolon. You can change separator character by +<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> +parameter.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +</refsect1> +</refentry> + +<refentry id="profile.userlevel"> +<refmeta> +<refentrytitle>profile.userlevel</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.userlevel</refname> <refpurpose>Target profile for <sgmltag class="attribute">userlevel</sgmltag> attribute</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="profile.userlevel.frag"><xsl:param name="profile.userlevel" +<src:fragment id="profile.userlevel.frag"><xsl:param name="profile.userlevel" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Value of this parameter specifies profiles which should be +included in the output. You can specify multiple profiles by +separating them by semicolon. You can change separator character by +<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> +parameter.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +</refsect1> +</refentry> + +<refentry id="profile.vendor"> +<refmeta> +<refentrytitle>profile.vendor</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.vendor</refname> +<refpurpose>Target profile for <sgmltag class="attribute">vendor</sgmltag> +attribute</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.vendor.frag"><xsl:param name="profile.vendor" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Value of this parameter specifies profiles which should be +included in the output. You can specify multiple profiles by +separating them by semicolon. You can change separator character by +<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> +parameter.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +</refsect1> +</refentry> + +<refentry id="profile.attribute"> +<refmeta> +<refentrytitle>profile.attribute</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.attribute</refname> +<refpurpose>Name of user-specified profiling attribute</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.attribute.frag"><xsl:param name="profile.attribute" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>This parameter is used in conjuction with <link linkend="profile.value"><parameter moreinfo="none">profile.value</parameter></link>.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +</refsect1> +</refentry> + +<refentry id="profile.value"> +<refmeta> +<refentrytitle>profile.value</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.value</refname> +<refpurpose>Target profile for user-specified attribute</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.value.frag"><xsl:param name="profile.value" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>When you are using this parameter you must also specify name of +profiling attribute with parameter <link linkend="profile.attribute"><parameter moreinfo="none">profile.attribute</parameter></link>.</para> + +<para>Value of this parameter specifies profiles which should be +included in the output. You can specify multiple profiles by +separating them by semicolon. You can change separator character by +<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> +parameter.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +</refsect1> +</refentry> + +<refentry id="profile.separator"> +<refmeta> +<refentrytitle>profile.separator</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.separator</refname> +<refpurpose>Separator character for compound profile values</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.separator.frag"><xsl:param name="profile.separator" + select="';'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Separator character for compound profile values.</para> + +</refsect1> +</refentry> + +</reference> + +<reference><title>HTML Help</title> +<refentry id="htmlhelp.encoding"> +<refmeta> +<refentrytitle>htmlhelp.encoding</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.encoding</refname> +<refpurpose>Character encoding to use in files for HTML Help compiler.</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.encoding.frag"><xsl:param name="htmlhelp.encoding" + select="'iso-8859-1'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>HTML Help Compiler is not UTF-8 aware, so you should always use +apropriate single-byte encoding here.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.autolabel"> +<refmeta> +<refentrytitle>htmlhelp.autolabel</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.autolabel</refname> +<refpurpose>Should tree-like ToC use autonumbering feature?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.autolabel.frag"><xsl:param name="htmlhelp.autolabel" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If you want to include chapter and section numbers into ToC in +the left panel, set this parameter to 1.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.chm"> +<refmeta> +<refentrytitle>htmlhelp.chm</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.chm</refname> +<refpurpose>Filename of output HTML Help file.</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.chm.frag"><xsl:param name="htmlhelp.chm" + select="'htmlhelp.chm'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Change this parameter if you want different name of result +CHM file than htmlhelp.chm.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.default.topic"> +<refmeta> +<refentrytitle>htmlhelp.default.topic</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.default.topic</refname> +<refpurpose>Name of file with default topic</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.default.topic.frag"><xsl:param name="htmlhelp.default.topic" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Normally first chunk of document is displayed when you open HTML +Help file. If you want to display another topic, simply set its +filename by this parameter.</para> + +<para>This is useful especially if you don't generate ToC in front of +your document and you also hide root element in ToC. E.g.:</para> + +<programlisting format="linespecific"><xsl:param name="generate.book.toc" select="0"/> +<xsl:param name="htmlhelp.hhc.show.root" select="0"/> +<xsl:param name="htmlhelp.default.topic" select="'pr01.html'"/></programlisting> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.hhp"> +<refmeta> +<refentrytitle>htmlhelp.hhp</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.hhp</refname> +<refpurpose>Filename of project file.</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.hhp.frag"><xsl:param name="htmlhelp.hhp" + select="'htmlhelp.hhp'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Change this parameter if you want different name of project +file than htmlhelp.hhp.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.hhc"> +<refmeta> +<refentrytitle>htmlhelp.hhc</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.hhc</refname> +<refpurpose>Filename of TOC file.</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.hhc.frag"><xsl:param name="htmlhelp.hhc" + select="'toc.hhc'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Change this parameter if you want different name of TOC file +than toc.hhc.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.hhk"> +<refmeta> +<refentrytitle>htmlhelp.hhk</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.hhk</refname> +<refpurpose>Filename of index file.</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.hhk.frag"><xsl:param name="htmlhelp.hhk" + select="'index.hhk'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Change this parameter if you want different name of index file +than index.hhk.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.hhp.tail"> +<refmeta> +<refentrytitle>htmlhelp.hhp.tail</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.hhp.tail</refname> +<refpurpose>Additional content for project file.</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.hhp.tail.frag"><xsl:param name="htmlhelp.hhp.tail"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If you want to include some additional parameters into project file, +store appropriate part of project file into this parameter.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.hhp.window"> +<refmeta> +<refentrytitle>htmlhelp.hhp.window</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.hhp.window</refname> +<refpurpose>Name of default window.</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.hhp.window.frag"><xsl:param name="htmlhelp.hhp.window" + select="'Main'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Name of default window. If empty no [WINDOWS] section will be +added to project file.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.enumerate.images"> +<refmeta> +<refentrytitle>htmlhelp.enumerate.images</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.enumerate.images</refname> +<refpurpose>Should be paths to all used images added to project file?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.enumerate.images.frag"><xsl:param name="htmlhelp.enumerate.images" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>You should turn on this flag, if you insert images into your documents +as external binary entities or if you are using absolute path in image names.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.force.map.and.alias"> +<refmeta> +<refentrytitle>htmlhelp.force.map.and.alias</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.force.map.and.alias</refname> +<refpurpose>Should be [MAP] and [ALIAS] section added to project file unconditionaly?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.force.map.and.alias.frag"><xsl:param name="htmlhelp.force.map.and.alias" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>You should turn on this flag, if you have your own +<filename moreinfo="none">alias.h</filename> and <filename moreinfo="none">contex.h</filename> files +and you want include reference to them in project file.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.map.file"> +<refmeta> +<refentrytitle>htmlhelp.map.file</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.map.file</refname> +<refpurpose>Filename of map file.</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.map.file.frag"><xsl:param name="htmlhelp.map.file" + select="'context.h'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Change this parameter if you want different name of map file +than <filename moreinfo="none">context.h</filename>.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.alias.file"> +<refmeta> +<refentrytitle>htmlhelp.alias.file</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.alias.file</refname> +<refpurpose>Filename of map file.</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.alias.file.frag"><xsl:param name="htmlhelp.alias.file" + select="'alias.h'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Change this parameter if you want different name of map file +than <filename moreinfo="none">alias.h</filename>.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.hhc.section.depth"> +<refmeta> +<refentrytitle>htmlhelp.hhc.section.depth</refentrytitle> +<refmiscinfo role="type">integer</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.hhc.section.depth</refname> +<refpurpose>Depth of TOC for sections in a left pane.</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.hhc.section.depth.frag"><xsl:param name="htmlhelp.hhc.section.depth" + select="5"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Change this parameter if you want shallower ToC in a left pane +of HTML Help viewer.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.hhc.show.root"> +<refmeta> +<refentrytitle>htmlhelp.hhc.show.root</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.hhc.show.root</refname> +<refpurpose>Should be entry for root element shown in ToC?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.hhc.show.root.frag"><xsl:param name="htmlhelp.hhc.show.root" + select="1"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If set to 0, there will be no entry for root element in +ToC. This is useful when you want provide user with expanded ToC as +a default.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.hhc.folders.instead.books"> +<refmeta> +<refentrytitle>htmlhelp.hhc.folders.instead.books</refentrytitle> +<refmiscinfo role="type"/> +</refmeta> +<refnamediv> +<refname>htmlhelp.hhc.folders.instead.books</refname> +<refpurpose/> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.hhc.folders.instead.books.frag"><xsl:param name="htmlhelp.hhc.folders.instead.books" + select="1"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>This parameter controls whether there should be folder-like +icons (1) or book-like icons (0) in ToC.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.hhc.binary"> +<refmeta> +<refentrytitle>htmlhelp.hhc.binary</refentrytitle> +<refmiscinfo role="type"/> +</refmeta> +<refnamediv> +<refname>htmlhelp.hhc.binary</refname> +<refpurpose/> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.hhc.binary.frag"><xsl:param name="htmlhelp.hhc.binary" + select="1"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>This parametr controls whether binary TOC will be generated. You +must create binary TOC if you want to add Prev/Next buttons to toolbar +(which is default behaviour). Files with binary TOC can't be merged.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.title"> +<refmeta> +<refentrytitle>htmlhelp.title</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.title</refname> +<refpurpose>Title of HTML Help</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.title.frag"><xsl:param name="htmlhelp.title" select="''"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Value of this parameter specifies profiles which should be -included in the output. You can specify multiple profiles by -separating them by semicolon. You can change separator character by -<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> -parameter.</para> - -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> +<para>Content of this parameter will be used as a title for generated +HTML Help. If empty, title will be automatically taken from document.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.show.menu"> +<refmeta> +<refentrytitle>htmlhelp.show.menu</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.show.menu</refname> +<refpurpose>Should be menu shown?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.show.menu.frag"><xsl:param name="htmlhelp.show.menu" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If you want application menu in your HTML Help file, turn this +parameter to 1.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.show.advanced.search"> +<refmeta> +<refentrytitle>htmlhelp.show.advanced.search</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.show.advanced.search</refname> +<refpurpose>Should be advanced search available?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.show.advanced.search.frag"><xsl:param name="htmlhelp.show.advanced.search" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If you want advanced search features in your help, turn this +parameter to 1.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.show.favorities"> +<refmeta> +<refentrytitle>htmlhelp.show.favorities</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.show.favorities</refname> +<refpurpose>Should be favorities tab shown?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.show.favorities.frag"><xsl:param name="htmlhelp.show.favorities" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If you want favorities tab shown in your help, turn this +parameter to 1.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.button.hideshow"> +<refmeta> +<refentrytitle>htmlhelp.button.hideshow</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.button.hideshow</refname> +<refpurpose>Should be Hide/Show button shown?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.button.hideshow.frag"><xsl:param name="htmlhelp.button.hideshow" + select="1"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If you want Hide/Show button shown on toolbar, turn this +parameter to 1.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.button.back"> +<refmeta> +<refentrytitle>htmlhelp.button.back</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.button.back</refname> +<refpurpose>Should be Back button shown?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.button.back.frag"><xsl:param name="htmlhelp.button.back" + select="1"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If you want Back button shown on toolbar, turn this +parameter to 1.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.button.forward"> +<refmeta> +<refentrytitle>htmlhelp.button.forward</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.button.forward</refname> +<refpurpose>Should be Forward button shown?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.button.forward.frag"><xsl:param name="htmlhelp.button.forward" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If you want Forward button shown on toolbar, turn this +parameter to 1.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.button.stop"> +<refmeta> +<refentrytitle>htmlhelp.button.stop</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.button.stop</refname> +<refpurpose>Should be Stop button shown?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.button.stop.frag"><xsl:param name="htmlhelp.button.stop" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If you want Stop button shown on toolbar, turn this +parameter to 1.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.button.refresh"> +<refmeta> +<refentrytitle>htmlhelp.button.refresh</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.button.refresh</refname> +<refpurpose>Should be Refresh button shown?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.button.refresh.frag"><xsl:param name="htmlhelp.button.refresh" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If you want Refresh button shown on toolbar, turn this +parameter to 1.</para> </refsect1> </refentry> -<refentry id="profile.vendor"> +<refentry id="htmlhelp.button.home"> <refmeta> -<refentrytitle>profile.vendor</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>htmlhelp.button.home</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.vendor</refname> -<refpurpose>Target profile for <sgmltag class="attribute">vendor</sgmltag> -attribute</refpurpose> +<refname>htmlhelp.button.home</refname> +<refpurpose>Should be Home button shown?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="profile.vendor.frag"><xsl:param name="profile.vendor" - select="''"/></src:fragment> +<src:fragment id="htmlhelp.button.home.frag"><xsl:param name="htmlhelp.button.home" + select="0"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Value of this parameter specifies profiles which should be -included in the output. You can specify multiple profiles by -separating them by semicolon. You can change separator character by -<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> -parameter.</para> - -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> +<para>If you want Home button shown on toolbar, turn this +parameter to 1.</para> </refsect1> </refentry> -<refentry id="profile.attribute"> +<refentry id="htmlhelp.button.home.url"> <refmeta> -<refentrytitle>profile.attribute</refentrytitle> +<refentrytitle>htmlhelp.button.home.url</refentrytitle> <refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.attribute</refname> -<refpurpose>Name of user-specified profiling attribute</refpurpose> +<refname>htmlhelp.button.home.url</refname> +<refpurpose>URL address of page accessible by Home button</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="profile.attribute.frag"><xsl:param name="profile.attribute" - select="''"/></src:fragment> +<src:fragment id="htmlhelp.button.home.url.frag"><xsl:param name="htmlhelp.button.home.url"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>This parameter is used in conjuction with <link linkend="profile.value"><parameter moreinfo="none">profile.value</parameter></link>.</para> - -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> +<para>URL address of page accessible by Home button.</para> </refsect1> </refentry> -<refentry id="profile.value"> +<refentry id="htmlhelp.button.options"> <refmeta> -<refentrytitle>profile.value</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>htmlhelp.button.options</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.value</refname> -<refpurpose>Target profile for user-specified attribute</refpurpose> +<refname>htmlhelp.button.options</refname> +<refpurpose>Should be Options button shown?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="profile.value.frag"><xsl:param name="profile.value" - select="''"/></src:fragment> +<src:fragment id="htmlhelp.button.options.frag"><xsl:param name="htmlhelp.button.options" + select="1"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>When you are using this parameter you must also specify name of -profiling attribute with parameter <link linkend="profile.attribute"><parameter moreinfo="none">profile.attribute</parameter></link>.</para> - -<para>Value of this parameter specifies profiles which should be -included in the output. You can specify multiple profiles by -separating them by semicolon. You can change separator character by -<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> -parameter.</para> - -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> +<para>If you want Options button shown on toolbar, turn this +parameter to 1.</para> </refsect1> </refentry> -<refentry id="profile.separator"> +<refentry id="htmlhelp.button.print"> <refmeta> -<refentrytitle>profile.separator</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>htmlhelp.button.print</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.separator</refname> -<refpurpose>Separator character for compound profile values</refpurpose> +<refname>htmlhelp.button.print</refname> +<refpurpose>Should be Print button shown?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="profile.separator.frag"><xsl:param name="profile.separator" - select="';'"/></src:fragment> +<src:fragment id="htmlhelp.button.print.frag"><xsl:param name="htmlhelp.button.print" + select="1"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Separator character for compound profile values.</para> +<para>If you want Print button shown on toolbar, turn this +parameter to 1.</para> </refsect1> </refentry> -</reference> - -<reference><title>HTML Help</title> -<refentry id="htmlhelp.encoding"> +<refentry id="htmlhelp.button.locate"> <refmeta> -<refentrytitle>htmlhelp.encoding</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>htmlhelp.button.locate</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.encoding</refname> -<refpurpose>Character encoding to use in files for HTML Help compiler.</refpurpose> +<refname>htmlhelp.button.locate</refname> +<refpurpose>Should be Locate button shown?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.encoding.frag"><xsl:param name="htmlhelp.encoding" - select="'iso-8859-1'"/></src:fragment> +<src:fragment id="htmlhelp.button.locate.frag"><xsl:param name="htmlhelp.button.locate" + select="0"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>HTML Help Compiler is not UTF-8 aware, so you should always use -apropriate single-byte encoding here.</para> +<para>If you want Locate button shown on toolbar, turn this +parameter to 1.</para> </refsect1> </refentry> -<refentry id="htmlhelp.autolabel"> +<refentry id="htmlhelp.button.jump1"> <refmeta> -<refentrytitle>htmlhelp.autolabel</refentrytitle> +<refentrytitle>htmlhelp.button.jump1</refentrytitle> <refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.autolabel</refname> -<refpurpose>Should tree-like ToC use autonumbering feature?</refpurpose> +<refname>htmlhelp.button.jump1</refname> +<refpurpose>Should be Jump1 button shown?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.autolabel.frag"><xsl:param name="htmlhelp.autolabel" +<src:fragment id="htmlhelp.button.jump1.frag"><xsl:param name="htmlhelp.button.jump1" select="0"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>If you want to include chapter and section numbers into ToC in -the left panel, set this parameter to 1.</para> +<para>If you want Jump1 button shown on toolbar, turn this +parameter to 1.</para> </refsect1> </refentry> -<refentry id="htmlhelp.chm"> +<refentry id="htmlhelp.button.jump1.url"> <refmeta> -<refentrytitle>htmlhelp.chm</refentrytitle> +<refentrytitle>htmlhelp.button.jump1.url</refentrytitle> <refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.chm</refname> -<refpurpose>Filename of output HTML Help file.</refpurpose> +<refname>htmlhelp.button.jump1.url</refname> +<refpurpose>URL address of page accessible by Jump1 button</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.chm.frag"><xsl:param name="htmlhelp.chm" - select="'htmlhelp.chm'"/></src:fragment> +<src:fragment id="htmlhelp.button.jump1.url.frag"><xsl:param name="htmlhelp.button.jump1.url"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Change this parameter if you want different name of result -CHM file than htmlhelp.chm.</para> +<para>URL address of page accessible by Jump1 button.</para> </refsect1> </refentry> -<refentry id="htmlhelp.default.topic"> +<refentry id="htmlhelp.button.jump1.title"> <refmeta> -<refentrytitle>htmlhelp.default.topic</refentrytitle> +<refentrytitle>htmlhelp.button.jump1.title</refentrytitle> <refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.default.topic</refname> -<refpurpose>Name of file with default topic</refpurpose> +<refname>htmlhelp.button.jump1.title</refname> +<refpurpose>Title of Jump1 button</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.default.topic.frag"><xsl:param name="htmlhelp.default.topic" - select="''"/></src:fragment> +<src:fragment id="htmlhelp.button.jump1.title.frag"><xsl:param name="htmlhelp.button.jump1.title" + select="'User1'"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Normally first chunk of document is displayed when you open HTML -Help file. If you want to display another topic, simply set its -filename by this parameter.</para> - -<para>This is useful especially if you don't generate ToC in front of -your document and you also hide root element in ToC. E.g.:</para> - -<programlisting format="linespecific"><xsl:param name="generate.book.toc" select="0"/> -<xsl:param name="htmlhelp.hhc.show.root" select="0"/> -<xsl:param name="htmlhelp.default.topic" select="'pr01.html'"/></programlisting> +<para>Title of Jump1 button.</para> </refsect1> </refentry> -<refentry id="htmlhelp.hhp"> +<refentry id="htmlhelp.button.jump2"> <refmeta> -<refentrytitle>htmlhelp.hhp</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>htmlhelp.button.jump2</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.hhp</refname> -<refpurpose>Filename of project file.</refpurpose> +<refname>htmlhelp.button.jump2</refname> +<refpurpose>Should be Jump2 button shown?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.hhp.frag"><xsl:param name="htmlhelp.hhp" - select="'htmlhelp.hhp'"/></src:fragment> +<src:fragment id="htmlhelp.button.jump2.frag"><xsl:param name="htmlhelp.button.jump2" + select="0"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Change this parameter if you want different name of project -file than htmlhelp.hhp.</para> +<para>If you want Jump2 button shown on toolbar, turn this +parameter to 1.</para> </refsect1> </refentry> -<refentry id="htmlhelp.hhc"> +<refentry id="htmlhelp.button.jump2.url"> <refmeta> -<refentrytitle>htmlhelp.hhc</refentrytitle> +<refentrytitle>htmlhelp.button.jump2.url</refentrytitle> <refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.hhc</refname> -<refpurpose>Filename of TOC file.</refpurpose> +<refname>htmlhelp.button.jump2.url</refname> +<refpurpose>URL address of page accessible by Jump2 button</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.hhc.frag"><xsl:param name="htmlhelp.hhc" - select="'toc.hhc'"/></src:fragment> +<src:fragment id="htmlhelp.button.jump2.url.frag"><xsl:param name="htmlhelp.button.jump2.url"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Change this parameter if you want different name of TOC file -than toc.hhc.</para> +<para>URL address of page accessible by Jump2 button.</para> </refsect1> </refentry> -<refentry id="htmlhelp.hhp.tail"> +<refentry id="htmlhelp.button.jump2.title"> <refmeta> -<refentrytitle>htmlhelp.hhp.tail</refentrytitle> +<refentrytitle>htmlhelp.button.jump2.title</refentrytitle> <refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.hhp.tail</refname> -<refpurpose>Additional content for project file.</refpurpose> +<refname>htmlhelp.button.jump2.title</refname> +<refpurpose>Title of Jump2 button</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.hhp.tail.frag"><xsl:param name="htmlhelp.hhp.tail"/></src:fragment> +<src:fragment id="htmlhelp.button.jump2.title.frag"><xsl:param name="htmlhelp.button.jump2.title" + select="'User2'"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>If you want to include some additional parameters into project file, -store appropriate part of project file into this parameter.</para> +<para>Title of Jump2 button.</para> </refsect1> </refentry> -<refentry id="htmlhelp.enumerate.images"> +<refentry id="htmlhelp.button.next"> <refmeta> -<refentrytitle>htmlhelp.enumerate.images</refentrytitle> +<refentrytitle>htmlhelp.button.next</refentrytitle> <refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.enumerate.images</refname> -<refpurpose>Should be paths to all used images added to project file?</refpurpose> +<refname>htmlhelp.button.next</refname> +<refpurpose>Should be Next button shown?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.enumerate.images.frag"><xsl:param name="htmlhelp.enumerate.images" - select="0"/></src:fragment> +<src:fragment id="htmlhelp.button.next.frag"><xsl:param name="htmlhelp.button.next" + select="1"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>You should turn on this flag, if you insert images into your documents -as external binary entities or if you are using absolute path in image names.</para> +<para>If you want Next button shown on toolbar, turn this +parameter to 1.</para> </refsect1> </refentry> -<refentry id="htmlhelp.force.map.and.alias"> +<refentry id="htmlhelp.button.prev"> <refmeta> -<refentrytitle>htmlhelp.force.map.and.alias</refentrytitle> +<refentrytitle>htmlhelp.button.prev</refentrytitle> <refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.force.map.and.alias</refname> -<refpurpose>Should be [MAP] and [ALIAS] section added to project file unconditionaly?</refpurpose> +<refname>htmlhelp.button.prev</refname> +<refpurpose>Should be Prev button shown?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.force.map.and.alias.frag"><xsl:param name="htmlhelp.force.map.and.alias" - select="0"/></src:fragment> +<src:fragment id="htmlhelp.button.prev.frag"><xsl:param name="htmlhelp.button.prev" + select="1"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>You should turn on this flag, if you have your own -<filename moreinfo="none">alias.h</filename> and <filename moreinfo="none">contex.h</filename> files -and you want include reference to them in project file.</para> +<para>If you want Prev button shown on toolbar, turn this +parameter to 1.</para> </refsect1> </refentry> -<refentry id="htmlhelp.map.file"> +<refentry id="htmlhelp.button.zoom"> <refmeta> -<refentrytitle>htmlhelp.map.file</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>htmlhelp.button.zoom</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.map.file</refname> -<refpurpose>Filename of map file.</refpurpose> +<refname>htmlhelp.button.zoom</refname> +<refpurpose>Should be Zoom button shown?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.map.file.frag"><xsl:param name="htmlhelp.map.file" - select="'context.h'"/></src:fragment> +<src:fragment id="htmlhelp.button.zoom.frag"><xsl:param name="htmlhelp.button.zoom" + select="0"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Change this parameter if you want different name of map file -than <filename moreinfo="none">context.h</filename>.</para> +<para>If you want Zoom button shown on toolbar, turn this +parameter to 1.</para> </refsect1> </refentry> -<refentry id="htmlhelp.alias.file"> +<refentry id="htmlhelp.use.hhk"> <refmeta> -<refentrytitle>htmlhelp.alias.file</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>htmlhelp.use.hhk</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.alias.file</refname> -<refpurpose>Filename of map file.</refpurpose> +<refname>htmlhelp.use.hhk</refname> +<refpurpose>Should be index built using HHK file?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.alias.file.frag"><xsl:param name="htmlhelp.alias.file" - select="'alias.h'"/></src:fragment> +<src:fragment id="htmlhelp.use.hhk.frag"><xsl:param name="htmlhelp.use.hhk" + select="0"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Change this parameter if you want different name of map file -than <filename moreinfo="none">alias.h</filename>.</para> +<para>If non-zero, index is created using HHK file. This provides some +new features.</para> </refsect1> </refentry> -<refentry id="htmlhelp.hhc.section.depth"> +<refentry id="htmlhelp.only"> <refmeta> -<refentrytitle>htmlhelp.hhc.section.depth</refentrytitle> -<refmiscinfo role="type">integer</refmiscinfo> +<refentrytitle>htmlhelp.only</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.hhc.section.depth</refname> -<refpurpose>Depth of TOC for sections in a left pane.</refpurpose> +<refname>htmlhelp.only</refname> +<refpurpose>Should be only project files generated?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.hhc.section.depth.frag"><xsl:param name="htmlhelp.hhc.section.depth" - select="5"/></src:fragment> +<src:fragment id="htmlhelp.only.frag"><xsl:param name="htmlhelp.only" + select="0"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Change this parameter if you want shallower ToC in a left pane -of HTML Help viewer.</para> +<para>If you want to play with various HTML Help parameters and you +don't need to regenerate all HTML files, you can set this parameter to +1. This setting will not process whole document, only project files +(hhp, hhc, hhk,...) will be generated.</para> </refsect1> </refentry> -<refentry id="htmlhelp.hhc.show.root"> +</reference> + +<reference><title>Localization</title> +<refentry id="l10n.gentext.language"> <refmeta> -<refentrytitle>htmlhelp.hhc.show.root</refentrytitle> -<refmiscinfo role="type">boolean</refmiscinfo> +<refentrytitle>l10n.gentext.language</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.hhc.show.root</refname> -<refpurpose>Should be entry for root element shown in ToC?</refpurpose> +<refname>l10n.gentext.language</refname> +<refpurpose>Sets the gentext language</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.hhc.show.root.frag"><xsl:param name="htmlhelp.hhc.show.root" - select="1"/></src:fragment> +<src:fragment id="l10n.gentext.language.frag"><xsl:param name="l10n.gentext.language" + select="''"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>If set to 0, there will be no entry for root element in -ToC. This is useful when you want provide user with expanded ToC as -a default.</para> +<para>If this parameter is set to any value other than the empty string, its +value will be used as the value for the language when generating text. Setting +<parameter moreinfo="none">l10n.gentext.language</parameter> overrides any settings within the +document being formatted.</para> + +<para>It's much more likely that you might want to set the +<parameter moreinfo="none">l10n.gentext.default.language</parameter> parameter.</para> </refsect1> </refentry> -<refentry id="htmlhelp.hhc.folders.instead.books"> +<refentry id="l10n.gentext.default.language"> <refmeta> -<refentrytitle>htmlhelp.hhc.folders.instead.books</refentrytitle> -<refmiscinfo role="type"/> +<refentrytitle>l10n.gentext.default.language</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.hhc.folders.instead.books</refname> -<refpurpose/> +<refname>l10n.gentext.default.language</refname> +<refpurpose>Sets the default language for generated text</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.hhc.folders.instead.books.frag"><xsl:param name="htmlhelp.hhc.folders.instead.books" - select="1"/></src:fragment> +<src:fragment id="l10n.gentext.default.language.frag"><xsl:param name="l10n.gentext.default.language" + select="'en'"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>This parameter controls whether there should be folder-like -icons (1) or book-like icons (0) in ToC.</para> +<para>The value of the <parameter moreinfo="none">l10n.gentext.default.language</parameter> +parameter is used as the language for generated text if no setting is provided +in the source document.</para> </refsect1> </refentry> -<refentry id="htmlhelp.title"> +<refentry id="l10n.gentext.use.xref.language"> <refmeta> -<refentrytitle>htmlhelp.title</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>l10n.gentext.use.xref.language</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.title</refname> -<refpurpose>Title of HTML Help</refpurpose> +<refname>l10n.gentext.use.xref.language</refname> +<refpurpose>Use the language of target when generating cross-reference text?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.title.frag"><xsl:param name="htmlhelp.title" - select="''"/></src:fragment> +<src:fragment id="l10n.gentext.use.xref.language.frag"><xsl:param name="l10n.gentext.use.xref.language" + select="0"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Content of this parameter will be used as a title for generated -HTML Help. If empty, title will be automatically taken from document.</para> +<para>If non-zero, the language of the target will be used when +generating cross reference text. Usually, the <quote>current</quote> +language is used when generating text (that is, the language of the +element that contains the cross-reference element). But setting this parameter +allows the language of the element <emphasis>pointed to</emphasis> to control +the generated text.</para> + +<para>Consider the following example:</para> + +<informalexample> +<programlisting format="linespecific"><para lang="en">See also <xref linkend="chap3"/>.</para> +</programlisting> +</informalexample> + +<para>Suppose that Chapter 3 happens to be written in German. +If <parameter moreinfo="none">l10n.gentext.use.xref.language</parameter> is non-zero, the +resulting text will be something like this:</para> + +<blockquote> +<para>See also Kapital 3.</para> +</blockquote> + +<para>Where the more traditional rendering would be:</para> + +<blockquote> +<para>See also Chapter 3.</para> +</blockquote> </refsect1> </refentry> @@ -4419,7 +6544,7 @@ version="1.0"> <!-- ******************************************************************** - $Id: param.xml,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: param.xml,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -4439,6 +6564,7 @@ <src:fragref linkend="base.dir.frag"/> <src:fragref linkend="biblioentry.item.separator.frag"/> <src:fragref linkend="bibliography.collection.frag"/> +<src:fragref linkend="bibliography.numbered.frag"/> <src:fragref linkend="bridgehead.in.toc.frag"/> <src:fragref linkend="callout.defaultcolumn.frag"/> <src:fragref linkend="callout.graphics.extension.frag"/> @@ -4451,35 +6577,49 @@ <src:fragref linkend="callout.unicode.start.character.frag"/> <src:fragref linkend="callouts.extension.frag"/> <src:fragref linkend="chapter.autolabel.frag"/> -<src:fragref linkend="chunk.datafile.frag"/> <src:fragref linkend="chunk.first.sections.frag"/> <src:fragref linkend="chunk.quietly.frag"/> <src:fragref linkend="chunk.section.depth.frag"/> <src:fragref linkend="chunk.toc.frag"/> +<src:fragref linkend="chunk.tocs.and.lots.frag"/> <src:fragref linkend="citerefentry.link.frag"/> +<src:fragref linkend="collect.xref.targets.frag"/> <src:fragref linkend="css.decoration.frag"/> -<src:fragref linkend="default.encoding.frag"/> +<src:fragref linkend="current.docid.frag"/> +<src:fragref linkend="default.float.class.frag"/> +<src:fragref linkend="default.image.width.frag"/> <src:fragref linkend="default.table.width.frag"/> <src:fragref linkend="draft.watermark.image.frag"/> <src:fragref linkend="ebnf.table.bgcolor.frag"/> <src:fragref linkend="ebnf.table.border.frag"/> <src:fragref linkend="emphasis.propagates.style.frag"/> +<src:fragref linkend="entry.propagates.style.frag"/> <src:fragref linkend="firstterm.only.link.frag"/> +<src:fragref linkend="footer.rule.frag"/> +<src:fragref linkend="footnote.number.format.frag"/> +<src:fragref linkend="footnote.number.symbols.frag"/> <src:fragref linkend="formal.procedures.frag"/> <src:fragref linkend="formal.title.placement.frag"/> <src:fragref linkend="funcsynopsis.decoration.frag"/> <src:fragref linkend="funcsynopsis.style.frag"/> +<src:fragref linkend="funcsynopsis.tabular.threshold.frag"/> <src:fragref linkend="function.parens.frag"/> <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.meta.abstract.frag"/> <src:fragref linkend="generate.section.toc.level.frag"/> <src:fragref linkend="generate.toc.frag"/> <src:fragref linkend="glossary.collection.frag"/> +<src:fragref linkend="glossentry.show.acronym.frag"/> <src:fragref linkend="glossterm.auto.link.frag"/> <src:fragref linkend="graphic.default.extension.frag"/> +<src:fragref linkend="graphicsize.extension.frag"/> +<src:fragref linkend="header.rule.frag"/> <src:fragref linkend="html.base.frag"/> +<src:fragref linkend="html.cellpadding.frag"/> +<src:fragref linkend="html.cellspacing.frag"/> <src:fragref linkend="html.cleanup.frag"/> <src:fragref linkend="html.ext.frag"/> <src:fragref linkend="html.extra.head.links.frag"/> @@ -4489,50 +6629,90 @@ <src:fragref linkend="html.stylesheet.type.frag"/> <src:fragref linkend="htmlhelp.alias.file.frag"/> <src:fragref linkend="htmlhelp.autolabel.frag"/> +<src:fragref linkend="htmlhelp.button.back.frag"/> +<src:fragref linkend="htmlhelp.button.forward.frag"/> +<src:fragref linkend="htmlhelp.button.hideshow.frag"/> +<src:fragref linkend="htmlhelp.button.home.frag"/> +<src:fragref linkend="htmlhelp.button.home.url.frag"/> +<src:fragref linkend="htmlhelp.button.jump1.frag"/> +<src:fragref linkend="htmlhelp.button.jump1.title.frag"/> +<src:fragref linkend="htmlhelp.button.jump1.url.frag"/> +<src:fragref linkend="htmlhelp.button.jump2.frag"/> +<src:fragref linkend="htmlhelp.button.jump2.title.frag"/> +<src:fragref linkend="htmlhelp.button.jump2.url.frag"/> +<src:fragref linkend="htmlhelp.button.locate.frag"/> +<src:fragref linkend="htmlhelp.button.next.frag"/> +<src:fragref linkend="htmlhelp.button.options.frag"/> +<src:fragref linkend="htmlhelp.button.prev.frag"/> +<src:fragref linkend="htmlhelp.button.print.frag"/> +<src:fragref linkend="htmlhelp.button.refresh.frag"/> +<src:fragref linkend="htmlhelp.button.stop.frag"/> +<src:fragref linkend="htmlhelp.button.zoom.frag"/> <src:fragref linkend="htmlhelp.chm.frag"/> <src:fragref linkend="htmlhelp.default.topic.frag"/> <src:fragref linkend="htmlhelp.encoding.frag"/> <src:fragref linkend="htmlhelp.enumerate.images.frag"/> <src:fragref linkend="htmlhelp.force.map.and.alias.frag"/> -<src:fragref linkend="htmlhelp.hhc.frag"/> +<src:fragref linkend="htmlhelp.hhc.binary.frag"/> <src:fragref linkend="htmlhelp.hhc.folders.instead.books.frag"/> +<src:fragref linkend="htmlhelp.hhc.frag"/> <src:fragref linkend="htmlhelp.hhc.section.depth.frag"/> <src:fragref linkend="htmlhelp.hhc.show.root.frag"/> +<src:fragref linkend="htmlhelp.hhk.frag"/> <src:fragref linkend="htmlhelp.hhp.frag"/> <src:fragref linkend="htmlhelp.hhp.tail.frag"/> +<src:fragref linkend="htmlhelp.hhp.window.frag"/> <src:fragref linkend="htmlhelp.map.file.frag"/> +<src:fragref linkend="htmlhelp.only.frag"/> +<src:fragref linkend="htmlhelp.show.advanced.search.frag"/> +<src:fragref linkend="htmlhelp.show.favorities.frag"/> +<src:fragref linkend="htmlhelp.show.menu.frag"/> <src:fragref linkend="htmlhelp.title.frag"/> +<src:fragref linkend="htmlhelp.use.hhk.frag"/> +<src:fragref linkend="ignore.image.scaling.frag"/> <src:fragref linkend="inherit.keywords.frag"/> +<src:fragref linkend="l10n.gentext.default.language.frag"/> +<src:fragref linkend="l10n.gentext.language.frag"/> +<src:fragref linkend="l10n.gentext.use.xref.language.frag"/> <src:fragref linkend="label.from.part.frag"/> <src:fragref linkend="linenumbering.everyNth.frag"/> <src:fragref linkend="linenumbering.extension.frag"/> <src:fragref linkend="linenumbering.separator.frag"/> <src:fragref linkend="linenumbering.width.frag"/> <src:fragref linkend="link.mailto.url.frag"/> +<src:fragref linkend="make.graphic.viewport.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="menuchoice.menu.separator.frag"/> +<src:fragref linkend="menuchoice.separator.frag"/> <src:fragref linkend="navig.graphics.extension.frag"/> <src:fragref linkend="navig.graphics.frag"/> <src:fragref linkend="navig.graphics.path.frag"/> <src:fragref linkend="navig.showtitles.frag"/> +<src:fragref linkend="nominal.image.depth.frag"/> +<src:fragref linkend="nominal.image.width.frag"/> <src:fragref linkend="nominal.table.width.frag"/> +<src:fragref linkend="olink.base.uri.frag"/> +<src:fragref linkend="olink.doctitle.frag"/> <src:fragref linkend="olink.fragid.frag"/> <src:fragref linkend="olink.outline.ext.frag"/> <src:fragref linkend="olink.pubid.frag"/> <src:fragref linkend="olink.resolver.frag"/> <src:fragref linkend="olink.sysid.frag"/> -<src:fragref linkend="output.method.frag"/> +<src:fragref linkend="para.propagates.style.frag"/> <src:fragref linkend="part.autolabel.frag"/> <src:fragref linkend="phrase.propagates.style.frag"/> <src:fragref linkend="pixels.per.inch.frag"/> <src:fragref linkend="points.per.em.frag"/> <src:fragref linkend="preface.autolabel.frag"/> +<src:fragref linkend="preferred.mediaobject.role.frag"/> <src:fragref linkend="process.empty.source.toc.frag"/> <src:fragref linkend="process.source.toc.frag"/> <src:fragref linkend="profile.arch.frag"/> +<src:fragref linkend="profile.attribute.frag"/> <src:fragref linkend="profile.condition.frag"/> <src:fragref linkend="profile.conformance.frag"/> <src:fragref linkend="profile.lang.frag"/> @@ -4541,11 +6721,10 @@ <src:fragref linkend="profile.revisionflag.frag"/> <src:fragref linkend="profile.role.frag"/> <src:fragref linkend="profile.security.frag"/> +<src:fragref linkend="profile.separator.frag"/> <src:fragref linkend="profile.userlevel.frag"/> -<src:fragref linkend="profile.vendor.frag"/> -<src:fragref linkend="profile.attribute.frag"/> <src:fragref linkend="profile.value.frag"/> -<src:fragref linkend="profile.separator.frag"/> +<src:fragref linkend="profile.vendor.frag"/> <src:fragref linkend="punct.honorific.frag"/> <src:fragref linkend="qanda.defaultlabel.frag"/> <src:fragref linkend="qanda.inherit.numeration.frag"/> @@ -4558,7 +6737,6 @@ <src:fragref linkend="rootid.frag"/> <src:fragref linkend="runinhead.default.title.end.punct.frag"/> <src:fragref linkend="runinhead.title.end.punct.frag"/> -<src:fragref linkend="saxon.character.representation.frag"/> <src:fragref linkend="section.autolabel.frag"/> <src:fragref linkend="section.label.includes.component.label.frag"/> <src:fragref linkend="segmentedlist.as.table.frag"/> @@ -4567,23 +6745,37 @@ <src:fragref linkend="show.comments.frag"/> <src:fragref linkend="show.revisionflag.frag"/> <src:fragref linkend="spacing.paras.frag"/> +<src:fragref linkend="suppress.footer.navigation.frag"/> +<src:fragref linkend="suppress.header.navigation.frag"/> <src:fragref linkend="suppress.navigation.frag"/> -<src:fragref linkend="table.border.color.frag"/> -<src:fragref linkend="table.border.style.frag"/> -<src:fragref linkend="table.border.thickness.frag"/> <src:fragref linkend="table.borders.with.css.frag"/> +<src:fragref linkend="table.cell.border.color.frag"/> +<src:fragref linkend="table.cell.border.style.frag"/> +<src:fragref linkend="table.cell.border.thickness.frag"/> +<src:fragref linkend="table.footnote.number.format.frag"/> +<src:fragref linkend="table.footnote.number.symbols.frag"/> +<src:fragref linkend="table.frame.border.color.frag"/> +<src:fragref linkend="table.frame.border.style.frag"/> +<src:fragref linkend="table.frame.border.thickness.frag"/> <src:fragref linkend="tablecolumns.extension.frag"/> -<src:fragref linkend="textinsert.extension.frag"/> +<src:fragref linkend="target.database.document.frag"/> +<src:fragref linkend="targets.filename.frag"/> +<src:fragref linkend="tex.math.delims.frag"/> <src:fragref linkend="tex.math.file.frag"/> <src:fragref linkend="tex.math.in.alt.frag"/> -<src:fragref linkend="tex.math.delims.frag"/> +<src:fragref linkend="textinsert.extension.frag"/> <src:fragref linkend="toc.list.type.frag"/> <src:fragref linkend="toc.section.depth.frag"/> <src:fragref linkend="ulink.target.frag"/> +<src:fragref linkend="use.embed.for.svg.frag"/> <src:fragref linkend="use.extensions.frag"/> <src:fragref linkend="use.id.as.filename.frag"/> +<src:fragref linkend="use.local.olink.style.frag"/> +<src:fragref linkend="use.role.as.xrefstyle.frag"/> +<src:fragref linkend="use.role.for.mediaobject.frag"/> <src:fragref linkend="use.svg.frag"/> <src:fragref linkend="variablelist.as.table.frag"/> +<src:fragref linkend="xref.with.number.and.title.frag"/> </xsl:stylesheet></src:fragment> Index: phpdoc/xsl/docbook/html/param.xsl diff -u phpdoc/xsl/docbook/html/param.xsl:1.1 phpdoc/xsl/docbook/html/param.xsl:1.2 --- phpdoc/xsl/docbook/html/param.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/param.xsl Sun Mar 9 09:56:38 2003 @@ -1,11 +1,10 @@ <?xml version="1.0" encoding="utf-8"?> - <!-- This file is generated from param.xweb; do not edit this file! --> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:src="http://nwalsh.com/xmlns/litprog/fragment" exclude-result-prefixes="src" version="1.0"> <!-- ******************************************************************** - $Id: param.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: param.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -27,6 +26,7 @@ <xsl:param name="base.dir" select="''"/> <xsl:param name="biblioentry.item.separator">. </xsl:param> <xsl:param name="bibliography.collection" select="'http://docbook.sourceforge.net/release/bibliography/bibliography.xml'"/> +<xsl:param name="bibliography.numbered" select="0"/> <xsl:param name="bridgehead.in.toc" select="0"/> <xsl:param name="callout.defaultcolumn" select="'60'"/> <xsl:param name="callout.graphics.extension" select="'.png'"/> @@ -39,40 +39,28 @@ <xsl:param name="callout.unicode.start.character" select="10102"/> <xsl:param name="callouts.extension" select="'1'"/> <xsl:param name="chapter.autolabel" select="1"/> - -<xsl:param name="chunk.datafile" select="'.chunks'"/> - - <xsl:param name="chunk.first.sections" select="0"/> - - <xsl:param name="chunk.quietly" select="0"/> - - <xsl:param name="chunk.section.depth" select="1"/> - - <xsl:param name="chunk.toc" select="''"/> - +<xsl:param name="chunk.tocs.and.lots" select="0"/> <xsl:param name="citerefentry.link" select="'0'"/> -<xsl:param name="css.decoration">1</xsl:param> -<xsl:param name="default.encoding" select="'ISO-8859-1'"/> +<xsl:param name="collect.xref.targets" select="'no'"/> +<xsl:param name="css.decoration" select="1"/> +<xsl:param name="current.docid" select="''"/> +<xsl:param name="default.float.class" select="'before'"/> +<xsl:param name="default.image.width" select="''"/> <xsl:param name="default.table.width" select="''"/> - <xsl:param name="draft.watermark.image" select="'http://docbook.sourceforge.net/release/images/draft.png'"/> - <xsl:param name="ebnf.table.bgcolor" select="'#F5DCB3'"/> <xsl:param name="ebnf.table.border" select="1"/> - <xsl:param name="emphasis.propagates.style" select="1"/> - - +<xsl:param name="entry.propagates.style" select="1"/> <xsl:param name="firstterm.only.link" select="0"/> - - +<xsl:param name="footer.rule" select="1"/> +<xsl:param name="footnote.number.format" select="'1'"/> +<xsl:param name="footnote.number.symbols" select="''"/> <xsl:param name="formal.procedures" select="1"/> - - <xsl:param name="formal.title.placement"> figure before example before @@ -80,250 +68,206 @@ table before procedure before </xsl:param> - <xsl:param name="funcsynopsis.decoration" select="1"/> <xsl:param name="funcsynopsis.style">kr</xsl:param> +<xsl:param name="funcsynopsis.tabular.threshold" select="40"/> <xsl:param name="function.parens">0</xsl:param> - <xsl:param name="generate.id.attributes" select="0"/> - <xsl:param name="generate.index" select="1"/> <xsl:param name="generate.legalnotice.link" select="0"/> <xsl:param name="generate.manifest" select="0"/> +<xsl:param name="generate.meta.abstract" select="1"/> <xsl:param name="generate.section.toc.level" select="0"/> - <xsl:param name="generate.toc"> -appendix toc -article toc -book toc,figure,table,example,equation -chapter toc -part toc -preface toc +appendix toc,title +article/appendix nop +article toc,title +book toc,title,figure,table,example,equation +chapter toc,title +part toc,title +preface toc,title qandadiv toc qandaset toc -reference toc +reference toc,title +sect1 toc +sect2 toc +sect3 toc +sect4 toc +sect5 toc section toc -set toc +set toc,title </xsl:param> - - <xsl:param name="glossary.collection" select="''"/> - +<xsl:param name="glossentry.show.acronym" select="'no'"/> <xsl:param name="glossterm.auto.link" select="'0'"/> <xsl:param name="graphic.default.extension"/> +<xsl:param name="graphicsize.extension" select="1"/> +<xsl:param name="header.rule" select="1"/> <xsl:param name="html.base"/> - +<xsl:param name="html.cellpadding" select="''"/> +<xsl:param name="html.cellspacing" select="''"/> <xsl:param name="html.cleanup" select="1"/> - - <xsl:param name="html.ext" select="'.html'"/> - - -<xsl:param name="html.extra.head.links" select="1"/> - - +<xsl:param name="html.extra.head.links" select="0"/> <xsl:param name="html.longdesc" select="1"/> - - <xsl:param name="html.longdesc.link" select="$html.longdesc"/> - <xsl:param name="html.stylesheet" select="''"/> <xsl:param name="html.stylesheet.type">text/css</xsl:param> - <xsl:param name="htmlhelp.alias.file" select="'alias.h'"/> - - <xsl:param name="htmlhelp.autolabel" select="0"/> - - +<xsl:param name="htmlhelp.button.back" select="1"/> +<xsl:param name="htmlhelp.button.forward" select="0"/> +<xsl:param name="htmlhelp.button.hideshow" select="1"/> +<xsl:param name="htmlhelp.button.home" select="0"/> +<xsl:param name="htmlhelp.button.home.url"/> +<xsl:param name="htmlhelp.button.jump1" select="0"/> +<xsl:param name="htmlhelp.button.jump1.title" select="'User1'"/> +<xsl:param name="htmlhelp.button.jump1.url"/> +<xsl:param name="htmlhelp.button.jump2" select="0"/> +<xsl:param name="htmlhelp.button.jump2.title" select="'User2'"/> +<xsl:param name="htmlhelp.button.jump2.url"/> +<xsl:param name="htmlhelp.button.locate" select="0"/> +<xsl:param name="htmlhelp.button.next" select="1"/> +<xsl:param name="htmlhelp.button.options" select="1"/> +<xsl:param name="htmlhelp.button.prev" select="1"/> +<xsl:param name="htmlhelp.button.print" select="1"/> +<xsl:param name="htmlhelp.button.refresh" select="0"/> +<xsl:param name="htmlhelp.button.stop" select="0"/> +<xsl:param name="htmlhelp.button.zoom" select="0"/> <xsl:param name="htmlhelp.chm" select="'htmlhelp.chm'"/> - - <xsl:param name="htmlhelp.default.topic" select="''"/> - - <xsl:param name="htmlhelp.encoding" select="'iso-8859-1'"/> - - <xsl:param name="htmlhelp.enumerate.images" select="0"/> - - <xsl:param name="htmlhelp.force.map.and.alias" select="0"/> - - -<xsl:param name="htmlhelp.hhc" select="'toc.hhc'"/> - - +<xsl:param name="htmlhelp.hhc.binary" select="1"/> <xsl:param name="htmlhelp.hhc.folders.instead.books" select="1"/> - - +<xsl:param name="htmlhelp.hhc" select="'toc.hhc'"/> <xsl:param name="htmlhelp.hhc.section.depth" select="5"/> - - <xsl:param name="htmlhelp.hhc.show.root" select="1"/> - - +<xsl:param name="htmlhelp.hhk" select="'index.hhk'"/> <xsl:param name="htmlhelp.hhp" select="'htmlhelp.hhp'"/> - - <xsl:param name="htmlhelp.hhp.tail"/> - - +<xsl:param name="htmlhelp.hhp.window" select="'Main'"/> <xsl:param name="htmlhelp.map.file" select="'context.h'"/> - - +<xsl:param name="htmlhelp.only" select="0"/> +<xsl:param name="htmlhelp.show.advanced.search" select="0"/> +<xsl:param name="htmlhelp.show.favorities" select="0"/> +<xsl:param name="htmlhelp.show.menu" select="0"/> <xsl:param name="htmlhelp.title" select="''"/> - +<xsl:param name="htmlhelp.use.hhk" select="0"/> +<xsl:param name="ignore.image.scaling" select="0"/> <xsl:param name="inherit.keywords" select="'1'"/> +<xsl:param name="l10n.gentext.default.language" select="'en'"/> +<xsl:param name="l10n.gentext.language" select="''"/> +<xsl:param name="l10n.gentext.use.xref.language" select="0"/> <xsl:param name="label.from.part" select="'0'"/> <xsl:param name="linenumbering.everyNth" select="'5'"/> <xsl:param name="linenumbering.extension" select="'1'"/> <xsl:param name="linenumbering.separator" select="' '"/> <xsl:param name="linenumbering.width" select="'3'"/> <xsl:param name="link.mailto.url"/> +<xsl:param name="make.graphic.viewport" select="1"/> <xsl:param name="make.single.year.ranges" select="0"/> - <xsl:param name="make.valid.html" select="0"/> - <xsl:param name="make.year.ranges" select="0"/> <xsl:param name="manifest" select="'HTML.manifest'"/> - <xsl:param name="manual.toc" select="''"/> - +<xsl:param name="menuchoice.menu.separator" select="'->'"/> +<xsl:param name="menuchoice.separator" select="'+'"/> <xsl:param name="navig.graphics.extension" select="'.gif'"/> <xsl:param name="navig.graphics" select="0"/> <xsl:param name="navig.graphics.path">images/</xsl:param> <xsl:param name="navig.showtitles">1</xsl:param> +<xsl:param name="nominal.image.depth" select="4 * $pixels.per.inch"/> +<xsl:param name="nominal.image.width" select="6 * $pixels.per.inch"/> <xsl:param name="nominal.table.width" select="'6in'"/> +<xsl:param name="olink.base.uri" select="''"/> +<xsl:param name="olink.doctitle" select="0"/> <xsl:param name="olink.fragid" select="'fragid='"/> <xsl:param name="olink.outline.ext" select="'.olink'"/> <xsl:param name="olink.pubid" select="'pubid='"/> <xsl:param name="olink.resolver" select="'/cgi-bin/olink'"/> <xsl:param name="olink.sysid" select="'sysid='"/> - -<xsl:param name="output.method" select="'html'"/> - +<xsl:param name="para.propagates.style" select="1"/> <xsl:param name="part.autolabel" select="1"/> <xsl:param name="phrase.propagates.style" select="1"/> - <xsl:param name="pixels.per.inch" select="90"/> - - <xsl:param name="points.per.em" select="10"/> - <xsl:param name="preface.autolabel" select="0"/> +<xsl:param name="preferred.mediaobject.role"/> <xsl:param name="process.empty.source.toc" select="0"/> <xsl:param name="process.source.toc" select="0"/> - <xsl:param name="profile.arch" select="''"/> - - +<xsl:param name="profile.attribute" select="''"/> <xsl:param name="profile.condition" select="''"/> - - <xsl:param name="profile.conformance" select="''"/> - - <xsl:param name="profile.lang" select="''"/> - - <xsl:param name="profile.os" select="''"/> - - <xsl:param name="profile.revision" select="''"/> - - <xsl:param name="profile.revisionflag" select="''"/> - - <xsl:param name="profile.role" select="''"/> - - <xsl:param name="profile.security" select="''"/> - - +<xsl:param name="profile.separator" select="';'"/> <xsl:param name="profile.userlevel" select="''"/> - - -<xsl:param name="profile.vendor" select="''"/> - - -<xsl:param name="profile.attribute" select="''"/> - - <xsl:param name="profile.value" select="''"/> - - -<xsl:param name="profile.separator" select="';'"/> - - +<xsl:param name="profile.vendor" select="''"/> <xsl:param name="punct.honorific" select="'.'"/> - <xsl:param name="qanda.defaultlabel">number</xsl:param> <xsl:param name="qanda.inherit.numeration" select="1"/> <xsl:param name="qandadiv.autolabel" select="1"/> <xsl:param name="refentry.generate.name" select="1"/> - <xsl:param name="refentry.generate.title" select="0"/> - <xsl:param name="refentry.separator" select="'1'"/> <xsl:param name="refentry.xref.manvolnum" select="1"/> <xsl:param name="root.filename" select="'index'"/> <xsl:param name="rootid" select="''"/> <xsl:param name="runinhead.default.title.end.punct" select="'.'"/> <xsl:param name="runinhead.title.end.punct" select="'.!?:'"/> -<xsl:param name="saxon.character.representation" select="'entity;decimal'"/> <xsl:param name="section.autolabel" select="0"/> <xsl:param name="section.label.includes.component.label" select="0"/> - <xsl:param name="segmentedlist.as.table" select="0"/> - <xsl:param name="shade.verbatim" select="0"/> - <xsl:attribute-set name="shade.verbatim.style"> <xsl:attribute name="border">0</xsl:attribute> <xsl:attribute name="bgcolor">#E0E0E0</xsl:attribute> </xsl:attribute-set> - <xsl:param name="show.comments">1</xsl:param> <xsl:param name="show.revisionflag">0</xsl:param> <xsl:param name="spacing.paras" select="'0'"/> +<xsl:param name="suppress.footer.navigation">0</xsl:param> +<xsl:param name="suppress.header.navigation">0</xsl:param> <xsl:param name="suppress.navigation">0</xsl:param> - -<xsl:param name="table.border.color" select="'black'"/> - - -<xsl:param name="table.border.style" select="'solid'"/> - - -<xsl:param name="table.border.thickness" select="'0.5pt'"/> - - <xsl:param name="table.borders.with.css" select="0"/> +<xsl:param name="table.cell.border.color" select="''"/> -<xsl:param name="tablecolumns.extension" select="'1'"/> -<xsl:param name="textinsert.extension" select="'1'"/> +<xsl:param name="table.cell.border.style" select="'solid'"/> +<xsl:param name="table.cell.border.thickness" select="'0.5pt'"/> +<xsl:param name="table.footnote.number.format" select="'a'"/> +<xsl:param name="table.footnote.number.symbols" select="''"/> +<xsl:param name="table.frame.border.color" select="''"/> +<xsl:param name="table.frame.border.style" select="'solid'"/> +<xsl:param name="table.frame.border.thickness" select="'0.5pt'"/> +<xsl:param name="tablecolumns.extension" select="'1'"/> +<xsl:param name="target.database.document" select="''"/> +<xsl:param name="targets.filename" select="'target.db'"/> +<xsl:param name="tex.math.delims" select="'1'"/> <xsl:param name="tex.math.file" select="'tex-math-equations.tex'"/> - - <xsl:param name="tex.math.in.alt" select="''"/> - - -<xsl:param name="tex.math.delims" select="'1'"/> - +<xsl:param name="textinsert.extension" select="'1'"/> <xsl:param name="toc.list.type">dl</xsl:param> <xsl:param name="toc.section.depth">2</xsl:param> <xsl:param name="ulink.target" select="'_top'"/> +<xsl:param name="use.embed.for.svg" select="0"/> <xsl:param name="use.extensions" select="'0'"/> <xsl:param name="use.id.as.filename" select="'0'"/> - +<xsl:param name="use.local.olink.style" select="0"/> +<xsl:param name="use.role.as.xrefstyle" select="1"/> +<xsl:param name="use.role.for.mediaobject" select="1"/> <xsl:param name="use.svg" select="1"/> - - <xsl:param name="variablelist.as.table" select="0"/> +<xsl:param name="xref.with.number.and.title" select="1"/> - -</xsl:stylesheet> +</xsl:stylesheet> \ No newline at end of file Index: phpdoc/xsl/docbook/html/param.xweb diff -u phpdoc/xsl/docbook/html/param.xweb:1.1 phpdoc/xsl/docbook/html/param.xweb:1.2 --- phpdoc/xsl/docbook/html/param.xweb:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/param.xweb Sun Mar 9 09:56:38 2003 @@ -7,7 +7,7 @@ <bookinfo> <title>HTML Parameter Reference</title> <releaseinfo role="meta"> -$Id: param.xweb,v 1.1 2002/08/13 15:51:37 goba Exp $ +$Id: param.xweb,v 1.2 2003/03/09 14:56:38 tom Exp $ </releaseinfo> <author> <surname>Walsh</surname> @@ -106,6 +106,7 @@ &linenumbering.width; &tablecolumns.extension; &textinsert.extension; +&graphicsize.extension; &use.extensions; </reference> @@ -133,18 +134,25 @@ &css.decoration; &spacing.paras; &emphasis.propagates.style; +¶.propagates.style; &phrase.propagates.style; +&entry.propagates.style; &html.longdesc; &html.longdesc.link; &make.valid.html; &html.cleanup; &draft.watermark.image; &generate.id.attributes; +&generate.meta.abstract; </reference> <reference><title>XSLT Processing</title> &rootid; &suppress.navigation; +&suppress.header.navigation; +&suppress.footer.navigation; +&header.rule; +&footer.rule; </reference> <reference><title>Meta/*Info</title> @@ -158,6 +166,7 @@ <reference><title>Reference Pages</title> &funcsynopsis.decoration; &funcsynopsis.style; +&funcsynopsis.tabular.threshold; &function.parens; &refentry.generate.name; &refentry.generate.title; @@ -170,9 +179,14 @@ &default.table.width; &nominal.table.width; &table.borders.with.css; -&table.border.style; -&table.border.thickness; -&table.border.color; +&table.cell.border.style; +&table.cell.border.thickness; +&table.cell.border.color; +&table.frame.border.style; +&table.frame.border.thickness; +&table.frame.border.color; +&html.cellspacing; +&html.cellpadding; </reference> <reference><title>QAndASet</title> @@ -181,6 +195,13 @@ </reference> <reference><title>Linking</title> +&target.database.document; +&targets.filename; +&collect.xref.targets; +&olink.base.uri; +&use.local.olink.style; +¤t.docid; +&olink.doctitle; &link.mailto.url; &ulink.target; &olink.fragid; @@ -193,16 +214,17 @@ <reference><title>Bibliography</title> &biblioentry.item.separator; &bibliography.collection; +&bibliography.numbered; </reference> <reference><title>Glossary</title> &glossterm.auto.link; &firstterm.only.link; &glossary.collection; +&glossentry.show.acronym; </reference> <reference><title>Miscellaneous</title> -&graphic.default.extension; &formal.procedures; &formal.title.placement; &runinhead.default.title.end.punct; @@ -220,9 +242,40 @@ &pixels.per.inch; &points.per.em; &use.svg; +&use.role.as.xrefstyle; +&menuchoice.separator; +&menuchoice.menu.separator; +&default.float.class; +&footnote.number.format; +&table.footnote.number.format; +&footnote.number.symbols; +&table.footnote.number.symbols; +&xref.with.number.and.title; +</reference> + +<reference><title>Graphics</title> +&graphic.default.extension; +&default.image.width; +&nominal.image.width; +&nominal.image.depth; +&use.embed.for.svg; +&make.graphic.viewport; +&preferred.mediaobject.role; +&use.role.for.mediaobject; +&ignore.image.scaling; </reference> <reference><title>Chunking</title> +&chunker.output.cdata-section-elements; +&chunker.output.doctype-public; +&chunker.output.doctype-system; +&chunker.output.encoding; +&chunker.output.indent; +&chunker.output.media-type; +&chunker.output.method; +&chunker.output.omit-xml-declaration; +&chunker.output.standalone; +&saxon.character.representation; &html.ext; &html.extra.head.links; &root.filename; @@ -230,13 +283,10 @@ &generate.manifest; &manifest; &chunk.toc; +&chunk.tocs.and.lots; &chunk.section.depth; &chunk.first.sections; &chunk.quietly; -&saxon.character.representation; -&default.encoding; -&output.method; -&chunk.datafile; &navig.graphics; &navig.graphics.extension; &navig.graphics.path; @@ -273,7 +323,9 @@ &htmlhelp.default.topic; &htmlhelp.hhp; &htmlhelp.hhc; +&htmlhelp.hhk; &htmlhelp.hhp.tail; +&htmlhelp.hhp.window; &htmlhelp.enumerate.images; &htmlhelp.force.map.and.alias; &htmlhelp.map.file; @@ -281,7 +333,38 @@ &htmlhelp.hhc.section.depth; &htmlhelp.hhc.show.root; &htmlhelp.hhc.folders.instead.books; +&htmlhelp.hhc.binary; &htmlhelp.title; +&htmlhelp.show.menu; +&htmlhelp.show.advanced.search; +&htmlhelp.show.favorities; +&htmlhelp.button.hideshow; +&htmlhelp.button.back; +&htmlhelp.button.forward; +&htmlhelp.button.stop; +&htmlhelp.button.refresh; +&htmlhelp.button.home; +&htmlhelp.button.home.url; +&htmlhelp.button.options; +&htmlhelp.button.print; +&htmlhelp.button.locate; +&htmlhelp.button.jump1; +&htmlhelp.button.jump1.url; +&htmlhelp.button.jump1.title; +&htmlhelp.button.jump2; +&htmlhelp.button.jump2.url; +&htmlhelp.button.jump2.title; +&htmlhelp.button.next; +&htmlhelp.button.prev; +&htmlhelp.button.zoom; +&htmlhelp.use.hhk; +&htmlhelp.only; +</reference> + +<reference><title>Localization</title> +&l10n.gentext.language; +&l10n.gentext.default.language; +&l10n.gentext.use.xref.language; </reference> <appendix><title>The Stylesheet</title> @@ -298,7 +381,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: param.xweb,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: param.xweb,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -318,6 +401,7 @@ <src:fragref linkend="base.dir.frag"/> <src:fragref linkend="biblioentry.item.separator.frag"/> <src:fragref linkend="bibliography.collection.frag"/> +<src:fragref linkend="bibliography.numbered.frag"/> <src:fragref linkend="bridgehead.in.toc.frag"/> <src:fragref linkend="callout.defaultcolumn.frag"/> <src:fragref linkend="callout.graphics.extension.frag"/> @@ -330,35 +414,49 @@ <src:fragref linkend="callout.unicode.start.character.frag"/> <src:fragref linkend="callouts.extension.frag"/> <src:fragref linkend="chapter.autolabel.frag"/> -<src:fragref linkend="chunk.datafile.frag"/> <src:fragref linkend="chunk.first.sections.frag"/> <src:fragref linkend="chunk.quietly.frag"/> <src:fragref linkend="chunk.section.depth.frag"/> <src:fragref linkend="chunk.toc.frag"/> +<src:fragref linkend="chunk.tocs.and.lots.frag"/> <src:fragref linkend="citerefentry.link.frag"/> +<src:fragref linkend="collect.xref.targets.frag"/> <src:fragref linkend="css.decoration.frag"/> -<src:fragref linkend="default.encoding.frag"/> +<src:fragref linkend="current.docid.frag"/> +<src:fragref linkend="default.float.class.frag"/> +<src:fragref linkend="default.image.width.frag"/> <src:fragref linkend="default.table.width.frag"/> <src:fragref linkend="draft.watermark.image.frag"/> <src:fragref linkend="ebnf.table.bgcolor.frag"/> <src:fragref linkend="ebnf.table.border.frag"/> <src:fragref linkend="emphasis.propagates.style.frag"/> +<src:fragref linkend="entry.propagates.style.frag"/> <src:fragref linkend="firstterm.only.link.frag"/> +<src:fragref linkend="footer.rule.frag"/> +<src:fragref linkend="footnote.number.format.frag"/> +<src:fragref linkend="footnote.number.symbols.frag"/> <src:fragref linkend="formal.procedures.frag"/> <src:fragref linkend="formal.title.placement.frag"/> <src:fragref linkend="funcsynopsis.decoration.frag"/> <src:fragref linkend="funcsynopsis.style.frag"/> +<src:fragref linkend="funcsynopsis.tabular.threshold.frag"/> <src:fragref linkend="function.parens.frag"/> <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.meta.abstract.frag"/> <src:fragref linkend="generate.section.toc.level.frag"/> <src:fragref linkend="generate.toc.frag"/> <src:fragref linkend="glossary.collection.frag"/> +<src:fragref linkend="glossentry.show.acronym.frag"/> <src:fragref linkend="glossterm.auto.link.frag"/> <src:fragref linkend="graphic.default.extension.frag"/> +<src:fragref linkend="graphicsize.extension.frag"/> +<src:fragref linkend="header.rule.frag"/> <src:fragref linkend="html.base.frag"/> +<src:fragref linkend="html.cellpadding.frag"/> +<src:fragref linkend="html.cellspacing.frag"/> <src:fragref linkend="html.cleanup.frag"/> <src:fragref linkend="html.ext.frag"/> <src:fragref linkend="html.extra.head.links.frag"/> @@ -368,50 +466,90 @@ <src:fragref linkend="html.stylesheet.type.frag"/> <src:fragref linkend="htmlhelp.alias.file.frag"/> <src:fragref linkend="htmlhelp.autolabel.frag"/> +<src:fragref linkend="htmlhelp.button.back.frag"/> +<src:fragref linkend="htmlhelp.button.forward.frag"/> +<src:fragref linkend="htmlhelp.button.hideshow.frag"/> +<src:fragref linkend="htmlhelp.button.home.frag"/> +<src:fragref linkend="htmlhelp.button.home.url.frag"/> +<src:fragref linkend="htmlhelp.button.jump1.frag"/> +<src:fragref linkend="htmlhelp.button.jump1.title.frag"/> +<src:fragref linkend="htmlhelp.button.jump1.url.frag"/> +<src:fragref linkend="htmlhelp.button.jump2.frag"/> +<src:fragref linkend="htmlhelp.button.jump2.title.frag"/> +<src:fragref linkend="htmlhelp.button.jump2.url.frag"/> +<src:fragref linkend="htmlhelp.button.locate.frag"/> +<src:fragref linkend="htmlhelp.button.next.frag"/> +<src:fragref linkend="htmlhelp.button.options.frag"/> +<src:fragref linkend="htmlhelp.button.prev.frag"/> +<src:fragref linkend="htmlhelp.button.print.frag"/> +<src:fragref linkend="htmlhelp.button.refresh.frag"/> +<src:fragref linkend="htmlhelp.button.stop.frag"/> +<src:fragref linkend="htmlhelp.button.zoom.frag"/> <src:fragref linkend="htmlhelp.chm.frag"/> <src:fragref linkend="htmlhelp.default.topic.frag"/> <src:fragref linkend="htmlhelp.encoding.frag"/> <src:fragref linkend="htmlhelp.enumerate.images.frag"/> <src:fragref linkend="htmlhelp.force.map.and.alias.frag"/> -<src:fragref linkend="htmlhelp.hhc.frag"/> +<src:fragref linkend="htmlhelp.hhc.binary.frag"/> <src:fragref linkend="htmlhelp.hhc.folders.instead.books.frag"/> +<src:fragref linkend="htmlhelp.hhc.frag"/> <src:fragref linkend="htmlhelp.hhc.section.depth.frag"/> <src:fragref linkend="htmlhelp.hhc.show.root.frag"/> +<src:fragref linkend="htmlhelp.hhk.frag"/> <src:fragref linkend="htmlhelp.hhp.frag"/> <src:fragref linkend="htmlhelp.hhp.tail.frag"/> +<src:fragref linkend="htmlhelp.hhp.window.frag"/> <src:fragref linkend="htmlhelp.map.file.frag"/> +<src:fragref linkend="htmlhelp.only.frag"/> +<src:fragref linkend="htmlhelp.show.advanced.search.frag"/> +<src:fragref linkend="htmlhelp.show.favorities.frag"/> +<src:fragref linkend="htmlhelp.show.menu.frag"/> <src:fragref linkend="htmlhelp.title.frag"/> +<src:fragref linkend="htmlhelp.use.hhk.frag"/> +<src:fragref linkend="ignore.image.scaling.frag"/> <src:fragref linkend="inherit.keywords.frag"/> +<src:fragref linkend="l10n.gentext.default.language.frag"/> +<src:fragref linkend="l10n.gentext.language.frag"/> +<src:fragref linkend="l10n.gentext.use.xref.language.frag"/> <src:fragref linkend="label.from.part.frag"/> <src:fragref linkend="linenumbering.everyNth.frag"/> <src:fragref linkend="linenumbering.extension.frag"/> <src:fragref linkend="linenumbering.separator.frag"/> <src:fragref linkend="linenumbering.width.frag"/> <src:fragref linkend="link.mailto.url.frag"/> +<src:fragref linkend="make.graphic.viewport.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="menuchoice.menu.separator.frag"/> +<src:fragref linkend="menuchoice.separator.frag"/> <src:fragref linkend="navig.graphics.extension.frag"/> <src:fragref linkend="navig.graphics.frag"/> <src:fragref linkend="navig.graphics.path.frag"/> <src:fragref linkend="navig.showtitles.frag"/> +<src:fragref linkend="nominal.image.depth.frag"/> +<src:fragref linkend="nominal.image.width.frag"/> <src:fragref linkend="nominal.table.width.frag"/> +<src:fragref linkend="olink.base.uri.frag"/> +<src:fragref linkend="olink.doctitle.frag"/> <src:fragref linkend="olink.fragid.frag"/> <src:fragref linkend="olink.outline.ext.frag"/> <src:fragref linkend="olink.pubid.frag"/> <src:fragref linkend="olink.resolver.frag"/> <src:fragref linkend="olink.sysid.frag"/> -<src:fragref linkend="output.method.frag"/> +<src:fragref linkend="para.propagates.style.frag"/> <src:fragref linkend="part.autolabel.frag"/> <src:fragref linkend="phrase.propagates.style.frag"/> <src:fragref linkend="pixels.per.inch.frag"/> <src:fragref linkend="points.per.em.frag"/> <src:fragref linkend="preface.autolabel.frag"/> +<src:fragref linkend="preferred.mediaobject.role.frag"/> <src:fragref linkend="process.empty.source.toc.frag"/> <src:fragref linkend="process.source.toc.frag"/> <src:fragref linkend="profile.arch.frag"/> +<src:fragref linkend="profile.attribute.frag"/> <src:fragref linkend="profile.condition.frag"/> <src:fragref linkend="profile.conformance.frag"/> <src:fragref linkend="profile.lang.frag"/> @@ -420,11 +558,10 @@ <src:fragref linkend="profile.revisionflag.frag"/> <src:fragref linkend="profile.role.frag"/> <src:fragref linkend="profile.security.frag"/> +<src:fragref linkend="profile.separator.frag"/> <src:fragref linkend="profile.userlevel.frag"/> -<src:fragref linkend="profile.vendor.frag"/> -<src:fragref linkend="profile.attribute.frag"/> <src:fragref linkend="profile.value.frag"/> -<src:fragref linkend="profile.separator.frag"/> +<src:fragref linkend="profile.vendor.frag"/> <src:fragref linkend="punct.honorific.frag"/> <src:fragref linkend="qanda.defaultlabel.frag"/> <src:fragref linkend="qanda.inherit.numeration.frag"/> @@ -437,7 +574,6 @@ <src:fragref linkend="rootid.frag"/> <src:fragref linkend="runinhead.default.title.end.punct.frag"/> <src:fragref linkend="runinhead.title.end.punct.frag"/> -<src:fragref linkend="saxon.character.representation.frag"/> <src:fragref linkend="section.autolabel.frag"/> <src:fragref linkend="section.label.includes.component.label.frag"/> <src:fragref linkend="segmentedlist.as.table.frag"/> @@ -446,23 +582,37 @@ <src:fragref linkend="show.comments.frag"/> <src:fragref linkend="show.revisionflag.frag"/> <src:fragref linkend="spacing.paras.frag"/> +<src:fragref linkend="suppress.footer.navigation.frag"/> +<src:fragref linkend="suppress.header.navigation.frag"/> <src:fragref linkend="suppress.navigation.frag"/> -<src:fragref linkend="table.border.color.frag"/> -<src:fragref linkend="table.border.style.frag"/> -<src:fragref linkend="table.border.thickness.frag"/> <src:fragref linkend="table.borders.with.css.frag"/> +<src:fragref linkend="table.cell.border.color.frag"/> +<src:fragref linkend="table.cell.border.style.frag"/> +<src:fragref linkend="table.cell.border.thickness.frag"/> +<src:fragref linkend="table.footnote.number.format.frag"/> +<src:fragref linkend="table.footnote.number.symbols.frag"/> +<src:fragref linkend="table.frame.border.color.frag"/> +<src:fragref linkend="table.frame.border.style.frag"/> +<src:fragref linkend="table.frame.border.thickness.frag"/> <src:fragref linkend="tablecolumns.extension.frag"/> -<src:fragref linkend="textinsert.extension.frag"/> +<src:fragref linkend="target.database.document.frag"/> +<src:fragref linkend="targets.filename.frag"/> +<src:fragref linkend="tex.math.delims.frag"/> <src:fragref linkend="tex.math.file.frag"/> <src:fragref linkend="tex.math.in.alt.frag"/> -<src:fragref linkend="tex.math.delims.frag"/> +<src:fragref linkend="textinsert.extension.frag"/> <src:fragref linkend="toc.list.type.frag"/> <src:fragref linkend="toc.section.depth.frag"/> <src:fragref linkend="ulink.target.frag"/> +<src:fragref linkend="use.embed.for.svg.frag"/> <src:fragref linkend="use.extensions.frag"/> <src:fragref linkend="use.id.as.filename.frag"/> +<src:fragref linkend="use.local.olink.style.frag"/> +<src:fragref linkend="use.role.as.xrefstyle.frag"/> +<src:fragref linkend="use.role.for.mediaobject.frag"/> <src:fragref linkend="use.svg.frag"/> <src:fragref linkend="variablelist.as.table.frag"/> +<src:fragref linkend="xref.with.number.and.title.frag"/> </xsl:stylesheet> </src:fragment> Index: phpdoc/xsl/docbook/html/pi.xsl diff -u phpdoc/xsl/docbook/html/pi.xsl:1.1 phpdoc/xsl/docbook/html/pi.xsl:1.2 --- phpdoc/xsl/docbook/html/pi.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/pi.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: pi.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: pi.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. Index: phpdoc/xsl/docbook/html/profile-chunk.xsl diff -u phpdoc/xsl/docbook/html/profile-chunk.xsl:1.1 phpdoc/xsl/docbook/html/profile-chunk.xsl:1.2 --- phpdoc/xsl/docbook/html/profile-chunk.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/profile-chunk.xsl Sun Mar 9 09:56:38 2003 @@ -1,20 +1,108 @@ <?xml version="1.0" encoding="US-ASCII"?> <!--This file was created automatically by xml2profile--> <!--from the DocBook XSL stylesheets. Do not edit this file.--> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" xmlns:exslt="http://exslt.org/common" exslt:dummy="dummy" extension-element-prefixes="exslt" version="1.0" exclude-result-prefixes="doc exslt"> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:exsl="http://exslt.org/common" xmlns:exslt="http://exslt.org/common" exslt:dummy="dummy" extension-element-prefixes="exslt" version="1.0" exclude-result-prefixes="exsl exslt"> <xsl:import href="docbook.xsl"/> <xsl:import href="chunk-common.xsl"/> +<xsl:include href="manifest.xsl"/> + +<xsl:param name="onechunk" select="0"/> +<xsl:param name="refentry.separator" select="0"/> +<xsl:param name="chunk.fast" select="0"/> + +<xsl:key name="genid" match="*" use="generate-id()"/> + +<!-- ==================================================================== --> + +<xsl:variable name="chunk.hierarchy"> + <xsl:if test="$chunk.fast != 0"> + <xsl:choose> + <xsl:when test="function-available('exsl:node-set')"> + <xsl:message>Computing chunks...</xsl:message> + <xsl:apply-templates select="/*" mode="find.chunks"/> + </xsl:when> + <xsl:otherwise> + <xsl:message> + <xsl:text>Fast chunking requires exsl:node-set(). </xsl:text> + <xsl:text>Using "slow" chunking.</xsl:text> + </xsl:message> + </xsl:otherwise> + </xsl:choose> + </xsl:if> +</xsl:variable> + +<xsl:template match="*" mode="find.chunks"> + <xsl:variable name="chunk"> + <xsl:call-template name="chunk"/> + </xsl:variable> + + <xsl:choose> + <xsl:when test="$chunk != 0"> + <div class="{local-name(.)}" id="{generate-id()}"> + <xsl:apply-templates select="*" mode="find.chunks"/> + </div> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="*" mode="find.chunks"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> <!-- ==================================================================== --> <xsl:template name="process-chunk-element"> + <xsl:param name="content"> + <xsl:apply-imports/> + </xsl:param> + <xsl:choose> - <xsl:when test="$chunk.first.sections = 0"> - <xsl:call-template name="chunk-first-section-with-parent"/> + <xsl:when test="$chunk.fast != 0 and function-available('exsl:node-set')"> + <xsl:variable name="chunks" select="exsl:node-set($chunk.hierarchy)//div"/> + <xsl:variable name="genid" select="generate-id()"/> + + <xsl:variable name="div" select="$chunks[@id=$genid]"/> + + <xsl:variable name="prevdiv" select="($div/preceding-sibling::div|$div/preceding::div|$div/parent::div)[last()]"/> + <xsl:variable name="prev" select="key('genid', $prevdiv/@id)"/> + + <xsl:variable name="nextdiv" select="($div/following-sibling::div|$div/following::div|$div/div)[1]"/> + <xsl:variable name="next" select="key('genid', $nextdiv/@id)"/> + + <xsl:choose> + <xsl:when test="$onechunk != 0 and parent::*"> + <xsl:copy-of select="$content"/> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="process-chunk"> + <xsl:with-param name="prev" select="$prev"/> + <xsl:with-param name="next" select="$next"/> + <xsl:with-param name="content" select="$content"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> </xsl:when> <xsl:otherwise> - <xsl:call-template name="chunk-all-sections"/> + <xsl:choose> + <xsl:when test="$onechunk != 0 and not(parent::*)"> + <xsl:call-template name="chunk-all-sections"> + <xsl:with-param name="content" select="$content"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$onechunk != 0"> + <xsl:copy-of select="$content"/> + </xsl:when> + <xsl:when test="$chunk.first.sections = 0"> + <xsl:call-template name="chunk-first-section-with-parent"> + <xsl:with-param name="content" select="$content"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="chunk-all-sections"> + <xsl:with-param name="content" select="$content"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> </xsl:otherwise> </xsl:choose> </xsl:template> @@ -22,6 +110,9 @@ <xsl:template name="process-chunk"> <xsl:param name="prev" select="."/> <xsl:param name="next" select="."/> + <xsl:param name="content"> + <xsl:apply-imports/> + </xsl:param> <xsl:variable name="ischunk"> <xsl:call-template name="chunk"/> @@ -54,33 +145,64 @@ <xsl:call-template name="chunk-element-content"> <xsl:with-param name="prev" select="$prev"/> <xsl:with-param name="next" select="$next"/> + <xsl:with-param name="content" select="$content"/> </xsl:call-template> </xsl:with-param> + <xsl:with-param name="quiet" select="$chunk.quietly"/> </xsl:call-template> </xsl:template> <xsl:template name="chunk-first-section-with-parent"> + <xsl:param name="content"> + <xsl:apply-imports/> + </xsl:param> + <!-- These xpath expressions are really hairy. The trick is to pick sections --> <!-- that are not first children and are not the children of first children --> - <xsl:variable name="prev" select="(preceding::book[1] |preceding::preface[1] |preceding::chapter[1] |preceding::appendix[1] |preceding::part[1] |preceding::reference[1] |preceding::refentry[1] |preceding::colophon[1] |preceding::sect1[$chunk.section.depth > 0 and preceding-sibling::sect1][1] |preceding::sect2[$chunk.section.depth > 1 and preceding-sibling::sect2 and parent::sect1[preceding-sibling::sect1]][1] |preceding::sect3[$chunk.section.depth > 2 and preceding-sibling::sect3 and parent::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |preceding::sect4[$chunk.section.depth > 3 and preceding-sibling::sect4 and parent::sect3[preceding-sibling::sect2] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |preceding::sect5[$chunk.section.depth > 4 and preceding-sibling::sect5 and parent::sect4[preceding-sibling::sect4] and ancestor::sect3[preceding-sibling::sect3] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |preceding::section[$chunk.section.depth > count(ancestor::section) and preceding-sibling::section and not(ancestor::section[not(preceding-sibling::section)])][1] |preceding::article[1] |preceding::bibliography[1] |preceding::glossary[1] |preceding::index[1] |preceding::setindex[1] |ancestor::set |ancestor::book[1] |ancestor::preface[1] |ancestor::chapter[1] |ancestor::appendix[1] |ancestor::sect1[$chunk.section.depth > 0 and preceding-sibling::sect1][1] |ancestor::sect2[$chunk.section.depth > 1 and preceding-sibling::sect2 and parent::sect1[preceding-sibling::sect1]][1] |ancestor::sect3[$chunk.section.depth > 2 and preceding-sibling::sect3 and parent::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |ancestor::sect4[$chunk.section.depth > 3 and preceding-sibling::sect4 and parent::sect3[preceding-sibling::sect2] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |ancestor::sect5[$chunk.section.depth > 4 and preceding-sibling::sect5 and parent::sect4[preceding-sibling::sect4] and ancestor::sect3[preceding-sibling::sect3] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |ancestor::section[$chunk.section.depth > count(ancestor::section) and not(ancestor::section[not(preceding-sibling::section)])][1] |ancestor::part[1] |ancestor::reference[1] |ancestor::article[1])[last()]"/> + <!-- Break these variables into pieces to work around + http://nagoya.apache.org/bugzilla/show_bug.cgi?id=6063 --> + + <xsl:variable name="prev-v1" select="(ancestor::sect1[$chunk.section.depth > 0 and preceding-sibling::sect1][1] |ancestor::sect2[$chunk.section.depth > 1 and preceding-sibling::sect2 and parent::sect1[preceding-sibling::sect1]][1] |ancestor::sect3[$chunk.section.depth > 2 and preceding-sibling::sect3 and parent::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |ancestor::sect4[$chunk.section.depth > 3 and preceding-sibling::sect4 and parent::sect3[preceding-sibling::sect2] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |ancestor::sect5[$chunk.section.depth > 4 and preceding-sibling::sect5 and parent::sect4[preceding-sibling::sect4] and ancestor::sect3[preceding-sibling::sect3] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |ancestor::section[$chunk.section.depth > count(ancestor::section) and not(ancestor::section[not(preceding-sibling::section)])][1])[last()]"/> + + <xsl:variable name="prev-v2" select="(preceding::sect1[$chunk.section.depth > 0 and preceding-sibling::sect1][1] |preceding::sect2[$chunk.section.depth > 1 and preceding-sibling::sect2 and parent::sect1[preceding-sibling::sect1]][1] |preceding::sect3[$chunk.section.depth > 2 and preceding-sibling::sect3 and parent::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |preceding::sect4[$chunk.section.depth > 3 and preceding-sibling::sect4 and parent::sect3[preceding-sibling::sect2] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |preceding::sect5[$chunk.section.depth > 4 and preceding-sibling::sect5 and parent::sect4[preceding-sibling::sect4] and ancestor::sect3[preceding-sibling::sect3] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |preceding::section[$chunk.section.depth > count(ancestor::section) and preceding-sibling::section and not(ancestor::section[not(preceding-sibling::section)])][1])[last()]"/> - <xsl:variable name="next" select="(following::book[1] |following::preface[1] |following::chapter[1] |following::appendix[1] |following::part[1] |following::reference[1] |following::refentry[1] |following::colophon[1] |following::sect1[$chunk.section.depth > 0 and preceding-sibling::sect1][1] |following::sect2[$chunk.section.depth > 1 and preceding-sibling::sect2 and parent::sect1[preceding-sibling::sect1]][1] |following::sect3[$chunk.section.depth > 2 and preceding-sibling::sect3 and parent::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |following::sect4[$chunk.section.depth > 3 and preceding-sibling::sect4 and parent::sect3[preceding-sibling::sect2] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |following::sect5[$chunk.section.depth > 4 and preceding-sibling::sect5 and parent::sect4[preceding-sibling::sect4] and ancestor::sect3[preceding-sibling::sect3] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |following::section[$chunk.section.depth > count(ancestor::section) and preceding-sibling::section and not(ancestor::section[not(preceding-sibling::section)])][1] |following::bibliography[1] |following::glossary[1] |following::index[1] |following::article[1] |following::setindex[1] |descendant::book[1] |descendant::preface[1] |descendant::chapter[1] |descendant::appendix[1] |descendant::article[1] |descendant::bibliography[1] |descendant::glossary[1] |descendant::index[1] |descendant::colophon[1] |descendant::setindex[1] |descendant::part[1] |descendant::reference[1] |descendant::refentry[1] |descendant::sect1[$chunk.section.depth > 0 and preceding-sibling::sect1][1] |descendant::sect2[$chunk.section.depth > 1 and preceding-sibling::sect2 and parent::sect1[preceding-sibling::sect1]][1] |descendant::sect3[$chunk.section.depth > 2 and preceding-sibling::sect3 and parent::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |descendant::sect4[$chunk.section.depth > 3 and preceding-sibling::sect4 and parent::sect3[preceding-sibling::sect2] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |descendant::sect5[$chunk.section.depth > 4 and preceding-sibling::sect5 and parent::sect4[preceding-sibling::sect4] and ancestor::sect3[preceding-sibling::sect3] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |descendant::section[$chunk.section.depth > count(ancestor::section) and preceding-sibling::section and not(ancestor::section[not(preceding-sibling::section)])])[1] "/> + <xsl:variable name="prev" select="(preceding::book[1] |preceding::preface[1] |preceding::chapter[1] |preceding::appendix[1] |preceding::part[1] |preceding::reference[1] |preceding::refentry[1] |preceding::colophon[1] |preceding::article[1] |preceding::bibliography[1] |preceding::glossary[1] |preceding::index[1] |preceding::setindex[1] |ancestor::set |ancestor::book[1] |ancestor::preface[1] |ancestor::chapter[1] |ancestor::appendix[1] |ancestor::part[1] |ancestor::reference[1] |ancestor::article[1] |$prev-v1 |$prev-v2)[last()]"/> + + <xsl:variable name="next-v1" select="(following::sect1[$chunk.section.depth > 0 and preceding-sibling::sect1][1] |following::sect2[$chunk.section.depth > 1 and preceding-sibling::sect2 and parent::sect1[preceding-sibling::sect1]][1] |following::sect3[$chunk.section.depth > 2 and preceding-sibling::sect3 and parent::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |following::sect4[$chunk.section.depth > 3 and preceding-sibling::sect4 and parent::sect3[preceding-sibling::sect2] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |following::sect5[$chunk.section.depth > 4 and preceding-sibling::sect5 and parent::sect4[preceding-sibling::sect4] and ancestor::sect3[preceding-sibling::sect3] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |following::section[$chunk.section.depth > count(ancestor::section) and preceding-sibling::section and not(ancestor::section[not(preceding-sibling::section)])][1])[1]"/> + + <xsl:variable name="next-v2" select="(descendant::sect1[$chunk.section.depth > 0 and preceding-sibling::sect1][1] |descendant::sect2[$chunk.section.depth > 1 and preceding-sibling::sect2 and parent::sect1[preceding-sibling::sect1]][1] |descendant::sect3[$chunk.section.depth > 2 and preceding-sibling::sect3 and parent::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |descendant::sect4[$chunk.section.depth > 3 and preceding-sibling::sect4 and parent::sect3[preceding-sibling::sect2] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |descendant::sect5[$chunk.section.depth > 4 and preceding-sibling::sect5 and parent::sect4[preceding-sibling::sect4] and ancestor::sect3[preceding-sibling::sect3] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |descendant::section[$chunk.section.depth > count(ancestor::section) and preceding-sibling::section and not(ancestor::section[not(preceding-sibling::section)])])[1]"/> + + <xsl:variable name="next" select="(following::book[1] |following::preface[1] |following::chapter[1] |following::appendix[1] |following::part[1] |following::reference[1] |following::refentry[1] |following::colophon[1] |following::bibliography[1] |following::glossary[1] |following::index[1] |following::article[1] |following::setindex[1] |descendant::book[1] |descendant::preface[1] |descendant::chapter[1] |descendant::appendix[1] |descendant::article[1] |descendant::bibliography[1] |descendant::glossary[1] |descendant::index[1] |descendant::colophon[1] |descendant::setindex[1] |descendant::part[1] |descendant::reference[1] |descendant::refentry[1] |$next-v1 |$next-v2)[1]"/> <xsl:call-template name="process-chunk"> <xsl:with-param name="prev" select="$prev"/> <xsl:with-param name="next" select="$next"/> + <xsl:with-param name="content" select="$content"/> </xsl:call-template> </xsl:template> <xsl:template name="chunk-all-sections"> - <xsl:variable name="prev" select="(preceding::book[1] |preceding::preface[1] |preceding::chapter[1] |preceding::appendix[1] |preceding::part[1] |preceding::reference[1] |preceding::refentry[1] |preceding::colophon[1] |preceding::sect1[$chunk.section.depth > 0][1] |preceding::sect2[$chunk.section.depth > 1][1] |preceding::sect3[$chunk.section.depth > 2][1] |preceding::sect4[$chunk.section.depth > 3][1] |preceding::sect5[$chunk.section.depth > 4][1] |preceding::section[$chunk.section.depth > count(ancestor::section)][1] |preceding::article[1] |preceding::bibliography[1] |preceding::glossary[1] |preceding::index[1] |preceding::setindex[1] |ancestor::set |ancestor::book[1] |ancestor::preface[1] |ancestor::chapter[1] |ancestor::appendix[1] |ancestor::part[1] |ancestor::reference[1] |ancestor::article[1] |ancestor::sect1[$chunk.section.depth > 0][1] |ancestor::sect2[$chunk.section.depth > 1][1] |ancestor::sect3[$chunk.section.depth > 2][1] |ancestor::sect4[$chunk.section.depth > 3][1] |ancestor::sect5[$chunk.section.depth > 4][1] |ancestor::section[$chunk.section.depth > count(ancestor::section)][1])[last()]"/> + <xsl:param name="content"> + <xsl:apply-imports/> + </xsl:param> + + <xsl:variable name="prev-v1" select="(preceding::sect1[$chunk.section.depth > 0][1] |preceding::sect2[$chunk.section.depth > 1][1] |preceding::sect3[$chunk.section.depth > 2][1] |preceding::sect4[$chunk.section.depth > 3][1] |preceding::sect5[$chunk.section.depth > 4][1] |preceding::section[$chunk.section.depth > count(ancestor::section)][1])[last()]"/> + + <xsl:variable name="prev-v2" select="(ancestor::sect1[$chunk.section.depth > 0][1] |ancestor::sect2[$chunk.section.depth > 1][1] |ancestor::sect3[$chunk.section.depth > 2][1] |ancestor::sect4[$chunk.section.depth > 3][1] |ancestor::sect5[$chunk.section.depth > 4][1] |ancestor::section[$chunk.section.depth > count(ancestor::section)][1])[last()]"/> - <xsl:variable name="next" select="(following::book[1] |following::preface[1] |following::chapter[1] |following::appendix[1] |following::part[1] |following::reference[1] |following::refentry[1] |following::colophon[1] |following::sect1[$chunk.section.depth > 0][1] |following::sect2[$chunk.section.depth > 1][1] |following::sect3[$chunk.section.depth > 2][1] |following::sect4[$chunk.section.depth > 3][1] |following::sect5[$chunk.section.depth > 4][1] |following::section[$chunk.section.depth > count(ancestor::section)][1] |following::bibliography[1] |following::glossary[1] |following::index[1] |following::article[1] |following::setindex[1] |descendant::book[1] |descendant::preface[1] |descendant::chapter[1] |descendant::appendix[1] |descendant::article[1] |descendant::bibliography[1] |descendant::glossary[1] |descendant::index[1] |descendant::colophon[1] |descendant::setindex[1] |descendant::part[1] |descendant::reference[1] |descendant::refentry[1] |descendant::sect1[$chunk.section.depth > 0][1] |descendant::sect2[$chunk.section.depth > 1][1] |descendant::sect3[$chunk.section.depth > 2][1] |descendant::sect4[$chunk.section.depth > 3][1] |descendant::sect5[$chunk.section.depth > 4][1] |descendant::section[$chunk.section.depth > count(ancestor::section)][1])[1]"/> + <xsl:variable name="prev" select="(preceding::book[1] |preceding::preface[1] |preceding::chapter[1] |preceding::appendix[1] |preceding::part[1] |preceding::reference[1] |preceding::refentry[1] |preceding::colophon[1] |preceding::article[1] |preceding::bibliography[1] |preceding::glossary[1] |preceding::index[1] |preceding::setindex[1] |ancestor::set |ancestor::book[1] |ancestor::preface[1] |ancestor::chapter[1] |ancestor::appendix[1] |ancestor::part[1] |ancestor::reference[1] |ancestor::article[1] |$prev-v1 |$prev-v2)[last()]"/> + + <xsl:variable name="next-v1" select="(following::sect1[$chunk.section.depth > 0][1] |following::sect2[$chunk.section.depth > 1][1] |following::sect3[$chunk.section.depth > 2][1] |following::sect4[$chunk.section.depth > 3][1] |following::sect5[$chunk.section.depth > 4][1] |following::section[$chunk.section.depth > count(ancestor::section)][1])[1]"/> + + <xsl:variable name="next-v2" select="(descendant::sect1[$chunk.section.depth > 0][1] |descendant::sect2[$chunk.section.depth > 1][1] |descendant::sect3[$chunk.section.depth > 2][1] |descendant::sect4[$chunk.section.depth > 3][1] |descendant::sect5[$chunk.section.depth > 4][1] |descendant::section[$chunk.section.depth > count(ancestor::section)][1])[1]"/> + + <xsl:variable name="next" select="(following::book[1] |following::preface[1] |following::chapter[1] |following::appendix[1] |following::part[1] |following::reference[1] |following::refentry[1] |following::colophon[1] |following::bibliography[1] |following::glossary[1] |following::index[1] |following::article[1] |following::setindex[1] |descendant::book[1] |descendant::preface[1] |descendant::chapter[1] |descendant::appendix[1] |descendant::article[1] |descendant::bibliography[1] |descendant::glossary[1] |descendant::index[1] |descendant::colophon[1] |descendant::setindex[1] |descendant::part[1] |descendant::reference[1] |descendant::refentry[1] |$next-v1 |$next-v2)[1]"/> <xsl:call-template name="process-chunk"> <xsl:with-param name="prev" select="$prev"/> <xsl:with-param name="next" select="$next"/> + <xsl:with-param name="content" select="$content"/> </xsl:call-template> </xsl:template> @@ -98,17 +220,35 @@ </xsl:message> </xsl:when> <xsl:otherwise> - <xsl:apply-templates select="$profiled-nodes//*[@id=$rootid]"/> - <xsl:if test="$tex.math.in.alt != ''"> - <xsl:apply-templates select="$profiled-nodes//*[@id=$rootid]" mode="collect.tex.math"/> + <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="$profiled-nodes//*[@id=$rootid]" mode="process.root"/> + <xsl:if test="$tex.math.in.alt != ''"> + <xsl:apply-templates select="$profiled-nodes//*[@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:apply-templates select="$profiled-nodes" mode="process.root"/> - <xsl:if test="$tex.math.in.alt != ''"> - <xsl:apply-templates select="$profiled-nodes" mode="collect.tex.math"/> + <xsl:if test="$collect.xref.targets = 'yes' or $collect.xref.targets = 'only'"> + <xsl:apply-templates select="$profiled-nodes" mode="collect.targets"/> + </xsl:if> + <xsl:if test="$collect.xref.targets != 'only'"> + <xsl:apply-templates select="$profiled-nodes" mode="process.root"/> + <xsl:if test="$tex.math.in.alt != ''"> + <xsl:apply-templates select="$profiled-nodes" mode="collect.tex.math"/> + </xsl:if> + <xsl:if test="$generate.manifest != 0"> + <xsl:call-template name="generate.manifest"/> + </xsl:if> </xsl:if> </xsl:otherwise> </xsl:choose> @@ -118,8 +258,17 @@ <xsl:apply-templates select="."/> </xsl:template> +<!-- ====================================================================== --> + <xsl:template match="set|book|part|preface|chapter|appendix |article |reference|refentry |book/glossary|article/glossary |book/bibliography|article/bibliography |colophon"> - <xsl:call-template name="process-chunk-element"/> + <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"> @@ -151,6 +300,84 @@ <!-- ==================================================================== --> +<xsl:template name="make.lots"> + <xsl:param name="toc.params" select="''"/> + <xsl:param name="toc"/> + + <xsl:variable name="lots"> + <xsl:if test="contains($toc.params, 'toc')"> + <xsl:copy-of select="$toc"/> + </xsl:if> + + <xsl:if test="contains($toc.params, 'figure')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'figure'"/> + <xsl:with-param name="nodes" select=".//figure"/> + </xsl:call-template> + </xsl:if> + + <xsl:if test="contains($toc.params, 'table')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'table'"/> + <xsl:with-param name="nodes" select=".//table"/> + </xsl:call-template> + </xsl:if> + + <xsl:if test="contains($toc.params, 'example')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'example'"/> + <xsl:with-param name="nodes" select=".//example"/> + </xsl:call-template> + </xsl:if> + + <xsl:if test="contains($toc.params, 'equation')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'equation'"/> + <xsl:with-param name="nodes" select=".//equation[title]"/> + </xsl:call-template> + </xsl:if> + </xsl:variable> + + <xsl:if test="string($lots) != ''"> + <xsl:choose> + <xsl:when test="$chunk.tocs.and.lots != 0 and not(parent::*)"> + <xsl:call-template name="write.chunk"> + <xsl:with-param name="filename"> + <xsl:call-template name="make-relative-filename"> + <xsl:with-param name="base.dir" select="$base.dir"/> + <xsl:with-param name="base.name"> + <xsl:call-template name="dbhtml-dir"/> + <xsl:apply-templates select="." mode="recursive-chunk-filename"/> + <xsl:text>-toc</xsl:text> + <xsl:value-of select="$html.ext"/> + </xsl:with-param> + </xsl:call-template> + </xsl:with-param> + <xsl:with-param name="content"> + <xsl:call-template name="chunk-element-content"> + <xsl:with-param name="prev" select="/foo"/> + <xsl:with-param name="next" select="/foo"/> + <xsl:with-param name="nav.context" select="'toc'"/> + <xsl:with-param name="content"> + <h1> + <xsl:apply-templates select="." mode="object.title.markup"/> + </h1> + <xsl:copy-of select="$lots"/> + </xsl:with-param> + </xsl:call-template> + </xsl:with-param> + <xsl:with-param name="quiet" select="$chunk.quietly"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:copy-of select="$lots"/> + </xsl:otherwise> + </xsl:choose> + </xsl:if> +</xsl:template> + +<!-- ==================================================================== --> + <xsl:template name="in.other.chunk"> <xsl:param name="chunk" select="."/> <xsl:param name="node" select="."/> @@ -321,5 +548,7 @@ <xsl:call-template name="process.footnotes"/> </xsl:if> </xsl:template> + +<!-- ====================================================================== --> </xsl:stylesheet> Index: phpdoc/xsl/docbook/html/profile-docbook.xsl diff -u phpdoc/xsl/docbook/html/profile-docbook.xsl:1.1 phpdoc/xsl/docbook/html/profile-docbook.xsl:1.2 --- phpdoc/xsl/docbook/html/profile-docbook.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/profile-docbook.xsl Sun Mar 9 09:56:38 2003 @@ -6,7 +6,7 @@ <xsl:output method="html" encoding="ISO-8859-1" indent="no"/> <!-- ******************************************************************** - $Id: profile-docbook.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: profile-docbook.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -26,6 +26,7 @@ <xsl:include href="../common/titles.xsl"/> <xsl:include href="../common/subtitles.xsl"/> <xsl:include href="../common/gentext.xsl"/> +<xsl:include href="../common/targets.xsl"/> <xsl:include href="autotoc.xsl"/> <xsl:include href="autoidx.xsl"/> <xsl:include href="lists.xsl"/> @@ -72,6 +73,10 @@ <xsl:message> <xsl:text>No template matches </xsl:text> <xsl:value-of select="name(.)"/> + <xsl:if test="parent::*"> + <xsl:text> in </xsl:text> + <xsl:value-of select="name(parent::*)"/> + </xsl:if> <xsl:text>.</xsl:text> </xsl:message> @@ -100,13 +105,18 @@ <xsl:template name="head.content"> <xsl:param name="node" select="."/> + <xsl:param name="title"> + <xsl:apply-templates select="$node" mode="object.title.markup.textonly"/> + </xsl:param> <title> - <xsl:apply-templates select="$node" mode="object.title.markup.textonly"/> + <xsl:copy-of select="$title"/> </title> - <xsl:if test="$html.stylesheet"> - <link rel="stylesheet" href="{$html.stylesheet}" type="{$html.stylesheet.type}"/> + <xsl:if test="$html.stylesheet != ''"> + <xsl:call-template name="output.html.stylesheets"> + <xsl:with-param name="stylesheets" select="normalize-space($html.stylesheet)"/> + </xsl:call-template> </xsl:if> <xsl:if test="$link.mailto.url != ''"> @@ -119,10 +129,26 @@ <meta name="generator" content="DocBook XSL Stylesheets V{$VERSION}"/> + <xsl:if test="$generate.meta.abstract != 0"> + <xsl:variable name="info" select="(articleinfo |bookinfo |prefaceinfo |chapterinfo |appendixinfo |sectioninfo |sect1info |sect2info |sect3info |sect4info |sect5info |referenceinfo |refentryinfo |partinfo |docinfo)[1]"/> + <xsl:if test="$info and $info/abstract"> + <meta name="description"> + <xsl:attribute name="content"> + <xsl:for-each select="$info/abstract[1]/*"> + <xsl:value-of select="."/> + <xsl:if test="position() < last()"> + <xsl:text> </xsl:text> + </xsl:if> + </xsl:for-each> + </xsl:attribute> + </meta> + </xsl:if> + </xsl:if> + <xsl:if test="ancestor-or-self::*[@status][1]/@status = 'draft' and $draft.watermark.image != ''"> <style type="text/css"><xsl:text> -body { background-image: url("</xsl:text> -<xsl:value-of select="$draft.watermark.image"/><xsl:text>"); +body { background-image: url('</xsl:text> +<xsl:value-of select="$draft.watermark.image"/><xsl:text>'); background-repeat: no-repeat; background-position: top left; /* The following properties make the watermark "fixed" on the page. */ @@ -135,6 +161,34 @@ <xsl:apply-templates select="." mode="head.keywords.content"/> </xsl:template> +<xsl:template name="output.html.stylesheets"> + <xsl:param name="stylesheets" select="''"/> + + <xsl:choose> + <xsl:when test="contains($stylesheets, ' ')"> + <link rel="stylesheet" href="{substring-before($stylesheets, ' ')}"> + <xsl:if test="$html.stylesheet.type != ''"> + <xsl:attribute name="type"> + <xsl:value-of select="$html.stylesheet.type"/> + </xsl:attribute> + </xsl:if> + </link> + <xsl:call-template name="output.html.stylesheets"> + <xsl:with-param name="stylesheets" select="substring-after($stylesheets, ' ')"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$stylesheets != ''"> + <link rel="stylesheet" href="{$stylesheets}"> + <xsl:if test="$html.stylesheet.type != ''"> + <xsl:attribute name="type"> + <xsl:value-of select="$html.stylesheet.type"/> + </xsl:attribute> + </xsl:if> + </link> + </xsl:when> + </xsl:choose> +</xsl:template> + <!-- ============================================================ --> <xsl:template match="*" mode="head.keywords.content"> @@ -168,6 +222,17 @@ <!-- ============================================================ --> +<xsl:template name="system.head.content"> + <xsl:param name="node" select="."/> + + <!-- system.head.content is like user.head.content, except that + it is called before head.content. This is important because it + means, for example, that <style> elements output by system.head.content + have a lower CSS precedence than the users stylesheet. --> +</xsl:template> + +<!-- ============================================================ --> + <xsl:template name="user.head.content"> <xsl:param name="node" select="."/> </xsl:template> @@ -200,17 +265,27 @@ </xsl:message> </xsl:when> <xsl:otherwise> - <xsl:apply-templates select="$profiled-nodes//*[@id=$rootid]" mode="process.root"/> - <xsl:if test="$tex.math.in.alt != ''"> - <xsl:apply-templates select="$profiled-nodes//*[@id=$rootid]" mode="collect.tex.math"/> + <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="$profiled-nodes//*[@id=$rootid]" mode="process.root"/> + <xsl:if test="$tex.math.in.alt != ''"> + <xsl:apply-templates select="$profiled-nodes//*[@id=$rootid]" mode="collect.tex.math"/> + </xsl:if> </xsl:if> </xsl:otherwise> </xsl:choose> </xsl:when> <xsl:otherwise> - <xsl:apply-templates select="$profiled-nodes" mode="process.root"/> - <xsl:if test="$tex.math.in.alt != ''"> - <xsl:apply-templates select="$profiled-nodes" mode="collect.tex.math"/> + <xsl:if test="$collect.xref.targets = 'yes' or $collect.xref.targets = 'only'"> + <xsl:apply-templates select="$profiled-nodes" mode="collect.targets"/> + </xsl:if> + <xsl:if test="$collect.xref.targets != 'only'"> + <xsl:apply-templates select="$profiled-nodes" mode="process.root"/> + <xsl:if test="$tex.math.in.alt != ''"> + <xsl:apply-templates select="$profiled-nodes" mode="collect.tex.math"/> + </xsl:if> </xsl:if> </xsl:otherwise> </xsl:choose> @@ -218,26 +293,46 @@ <xsl:template match="*" mode="process.root"> <xsl:variable name="doc" select="self::*"/> + + <xsl:call-template name="root.messages"/> + <html> - <head> - <xsl:call-template name="head.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - <xsl:call-template name="user.head.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - </head> - <body> - <xsl:call-template name="body.attributes"/> - <xsl:call-template name="user.header.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - <xsl:apply-templates select="."/> - <xsl:call-template name="user.footer.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - </body> + <head> + <xsl:call-template name="system.head.content"> + <xsl:with-param name="node" select="$doc"/> + </xsl:call-template> + <xsl:call-template name="head.content"> + <xsl:with-param name="node" select="$doc"/> + </xsl:call-template> + <xsl:call-template name="user.head.content"> + <xsl:with-param name="node" select="$doc"/> + </xsl:call-template> + </head> + <body> + <xsl:call-template name="body.attributes"/> + <xsl:call-template name="user.header.content"> + <xsl:with-param name="node" select="$doc"/> + </xsl:call-template> + <xsl:apply-templates select="."/> + <xsl:call-template name="user.footer.content"> + <xsl:with-param name="node" select="$doc"/> + </xsl:call-template> + </body> </html> +</xsl:template> + +<xsl:template name="root.messages"> + <!-- redefine this any way you'd like to output messages --> + <!-- DO NOT OUTPUT ANYTHING FROM THIS TEMPLATE --> +</xsl:template> + +<!-- ==================================================================== --> + +<xsl:template name="chunk"> + <xsl:param name="node" select="."/> + + <!-- The default is that we are not chunking... --> + <xsl:text>0</xsl:text> </xsl:template> <!-- ==================================================================== --> Index: phpdoc/xsl/docbook/html/profile-onechunk.xsl diff -u phpdoc/xsl/docbook/html/profile-onechunk.xsl:1.1 phpdoc/xsl/docbook/html/profile-onechunk.xsl:1.2 --- phpdoc/xsl/docbook/html/profile-onechunk.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/profile-onechunk.xsl Sun Mar 9 09:56:38 2003 @@ -3,45 +3,21 @@ <!--from the DocBook XSL stylesheets. Do not edit this file.--> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" xmlns:exslt="http://exslt.org/common" exslt:dummy="dummy" extension-element-prefixes="exslt" version="1.0" exclude-result-prefixes="doc exslt"> -<!-- This stylesheet works with Saxon and Xalan; for XT use xtchunk.xsl --> -<!-- This stylesheet should also work for any processor that supports --> -<!-- exslt:document() (see http://www.exslt.org/) --> - <xsl:import href="chunk.xsl"/> -<!-- ==================================================================== --> -<!-- What's a chunk? - - The root element (that's it in this version) - --> -<!-- ==================================================================== --> - -<xsl:template name="chunk"> - <xsl:param name="node" select="."/> - - <xsl:choose> - <xsl:when test="not($node/parent::*)">1</xsl:when> - <xsl:otherwise>0</xsl:otherwise> - </xsl:choose> +<!-- Ok, using the onechunk parameter makes this all work again. --> +<!-- It does have the disadvantage that it only works for documents that have --> +<!-- a root element that is considered a chunk by the chunk.xsl stylesheet. --> +<!-- Ideally, onechunk would let anything be a chunk. But not today. --> + +<xsl:param name="onechunk" select="1"/> + +<xsl:template name="href.target.uri"> + <xsl:param name="object" select="."/> + <xsl:text>#</xsl:text> + <xsl:call-template name="object.id"> + <xsl:with-param name="object" select="$object"/> + </xsl:call-template> </xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="set|book|part|preface|chapter|appendix |article |reference|refentry |book/glossary|article/glossary |book/bibliography|article/bibliography |sect1|/section|section |setindex|book/index|article/index |colophon" priority="2"> - <xsl:variable name="ischunk"> - <xsl:call-template name="chunk"/> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$ischunk = 1"> - <xsl:call-template name="process-chunk-element"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-imports/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ==================================================================== --> </xsl:stylesheet> Index: phpdoc/xsl/docbook/html/qandaset.xsl diff -u phpdoc/xsl/docbook/html/qandaset.xsl:1.1 phpdoc/xsl/docbook/html/qandaset.xsl:1.2 --- phpdoc/xsl/docbook/html/qandaset.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/qandaset.xsl Sun Mar 9 09:56:38 2003 @@ -5,7 +5,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: qandaset.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: qandaset.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -74,7 +74,7 @@ <xsl:call-template name="process.qanda.toc"/> </xsl:if> <xsl:apply-templates select="$preamble"/> - <table border="0"> + <table border="0" summary="Q and A Set"> <xsl:if test="$table-summary != ''"> <xsl:attribute name="summary"> <xsl:value-of select="$table-summary"/> Index: phpdoc/xsl/docbook/html/refentry.xsl diff -u phpdoc/xsl/docbook/html/refentry.xsl:1.1 phpdoc/xsl/docbook/html/refentry.xsl:1.2 --- phpdoc/xsl/docbook/html/refentry.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/refentry.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: refentry.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: refentry.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -16,6 +16,7 @@ <xsl:template match="reference"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:call-template name="anchor"> <xsl:with-param name="conditional" select="0"/> </xsl:call-template> @@ -70,6 +71,7 @@ <xsl:template match="refentry"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:if test="$refentry.separator != 0 and preceding-sibling::refentry"> <div class="refentry.separator"> <hr/> @@ -199,8 +201,28 @@ <xsl:apply-templates/> </xsl:template> -<xsl:template match="refsect1|refsect2|refsect3"> - <xsl:call-template name="block.object"/> +<xsl:template match="refsection|refsect1|refsect2|refsect3"> + <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> + <xsl:call-template name="anchor"/> + <xsl:apply-templates/> + </div> +</xsl:template> + +<xsl:template match="refsection/title"> + <!-- the ID is output in the block.object call for refsect1 --> + <xsl:variable name="level" select="count(ancestor-or-self::refsection)"/> + <xsl:variable name="hlevel"> + <xsl:choose> + <xsl:when test="$level > 5">6</xsl:when> + <xsl:otherwise> + <xsl:value-of select="$level+1"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + <xsl:element name="h{$hlevel}"> + <xsl:apply-templates/> + </xsl:element> </xsl:template> <xsl:template match="refsect1/title"> Index: phpdoc/xsl/docbook/html/sections.xsl diff -u phpdoc/xsl/docbook/html/sections.xsl:1.1 phpdoc/xsl/docbook/html/sections.xsl:1.2 --- phpdoc/xsl/docbook/html/sections.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/sections.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: sections.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: sections.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -18,6 +18,7 @@ <xsl:variable name="depth" select="count(ancestor::section)+1"/> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:call-template name="section.titlepage"/> <xsl:variable name="toc.params"> @@ -26,10 +27,12 @@ </xsl:call-template> </xsl:variable> - <xsl:if test="(contains($toc.params, 'toc') - and $depth <= $generate.section.toc.level) - or refentry"> - <xsl:call-template name="section.toc"/> + <xsl:if test="contains($toc.params, 'toc') + and $depth <= $generate.section.toc.level"> + <xsl:call-template name="section.toc"> + <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/> + </xsl:call-template> + <xsl:call-template name="section.toc.separator"/> </xsl:if> <xsl:apply-templates/> <xsl:call-template name="process.chunk.footnotes"/> @@ -69,6 +72,7 @@ <xsl:template match="sect1"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:call-template name="sect1.titlepage"/> <xsl:variable name="toc.params"> @@ -77,10 +81,12 @@ </xsl:call-template> </xsl:variable> - <xsl:if test="(contains($toc.params, 'toc') - and $generate.section.toc.level >= 1) - or refentry"> - <xsl:call-template name="section.toc"/> + <xsl:if test="contains($toc.params, 'toc') + and $generate.section.toc.level >= 1"> + <xsl:call-template name="section.toc"> + <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/> + </xsl:call-template> + <xsl:call-template name="section.toc.separator"/> </xsl:if> <xsl:apply-templates/> <xsl:call-template name="process.chunk.footnotes"/> @@ -93,6 +99,7 @@ <xsl:template match="sect2"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:call-template name="sect2.titlepage"/> <xsl:variable name="toc.params"> @@ -101,10 +108,12 @@ </xsl:call-template> </xsl:variable> - <xsl:if test="(contains($toc.params, 'toc') - and $generate.section.toc.level >= 2) - or refentry"> - <xsl:call-template name="section.toc"/> + <xsl:if test="contains($toc.params, 'toc') + and $generate.section.toc.level >= 2"> + <xsl:call-template name="section.toc"> + <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/> + </xsl:call-template> + <xsl:call-template name="section.toc.separator"/> </xsl:if> <xsl:apply-templates/> </div> @@ -116,6 +125,7 @@ <xsl:template match="sect3"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:call-template name="sect3.titlepage"/> <xsl:variable name="toc.params"> @@ -124,10 +134,12 @@ </xsl:call-template> </xsl:variable> - <xsl:if test="(contains($toc.params, 'toc') - and $generate.section.toc.level >= 3) - or refentry"> - <xsl:call-template name="section.toc"/> + <xsl:if test="contains($toc.params, 'toc') + and $generate.section.toc.level >= 3"> + <xsl:call-template name="section.toc"> + <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/> + </xsl:call-template> + <xsl:call-template name="section.toc.separator"/> </xsl:if> <xsl:apply-templates/> </div> @@ -139,6 +151,7 @@ <xsl:template match="sect4"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:call-template name="sect4.titlepage"/> <xsl:variable name="toc.params"> @@ -147,10 +160,12 @@ </xsl:call-template> </xsl:variable> - <xsl:if test="(contains($toc.params, 'toc') - and $generate.section.toc.level >= 4) - or refentry"> - <xsl:call-template name="section.toc"/> + <xsl:if test="contains($toc.params, 'toc') + and $generate.section.toc.level >= 4"> + <xsl:call-template name="section.toc"> + <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/> + </xsl:call-template> + <xsl:call-template name="section.toc.separator"/> </xsl:if> <xsl:apply-templates/> </div> @@ -162,6 +177,7 @@ <xsl:template match="sect5"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:call-template name="sect5.titlepage"/> <xsl:variable name="toc.params"> @@ -170,10 +186,12 @@ </xsl:call-template> </xsl:variable> - <xsl:if test="(contains($toc.params, 'toc') - and $generate.section.toc.level >= 5) - or refentry"> - <xsl:call-template name="section.toc"/> + <xsl:if test="contains($toc.params, 'toc') + and $generate.section.toc.level >= 5"> + <xsl:call-template name="section.toc"> + <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/> + </xsl:call-template> + <xsl:call-template name="section.toc.separator"/> </xsl:if> <xsl:apply-templates/> </div> @@ -185,6 +203,7 @@ <xsl:template match="simplesect"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:call-template name="simplesect.titlepage"/> <xsl:apply-templates/> </div> @@ -211,28 +230,29 @@ <xsl:template match="sect3/title"></xsl:template> <xsl:template match="sect3/subtitle"></xsl:template> -<xsl:template match="sect3/subtitle"></xsl:template> +<xsl:template match="sect3/titleabbrev"></xsl:template> <xsl:template match="sect3info"></xsl:template> <xsl:template match="sect4/title"></xsl:template> <xsl:template match="sect4/subtitle"></xsl:template> -<xsl:template match="sect4/subtitle"></xsl:template> +<xsl:template match="sect4/titleabbrev"></xsl:template> <xsl:template match="sect4info"></xsl:template> <xsl:template match="sect5/title"></xsl:template> <xsl:template match="sect5/subtitle"></xsl:template> -<xsl:template match="sect5/subtitle"></xsl:template> +<xsl:template match="sect5/titleabbrev"></xsl:template> <xsl:template match="sect5info"></xsl:template> <xsl:template match="simplesect/title"></xsl:template> -<xsl:template match="simplesect/titleabbrev"></xsl:template> <xsl:template match="simplesect/subtitle"></xsl:template> +<xsl:template match="simplesect/titleabbrev"></xsl:template> <!-- ==================================================================== --> <xsl:template name="section.heading"> <xsl:param name="section" select="."/> - <xsl:param name="level" select="'1'"/> + <xsl:param name="level" select="1"/> + <xsl:param name="allow-anchors" select="1"/> <xsl:param name="title"/> <xsl:variable name="id"> @@ -251,17 +271,21 @@ </xsl:choose> </xsl:variable> - <xsl:element name="h{$level}"> + <!-- HTML H level is one higher than section level --> + <xsl:variable name="hlevel" select="$level + 1"/> + <xsl:element name="h{$hlevel}"> <xsl:attribute name="class">title</xsl:attribute> <xsl:if test="$css.decoration != '0'"> - <xsl:if test="$level<3"> + <xsl:if test="$hlevel<3"> <xsl:attribute name="style">clear: both</xsl:attribute> </xsl:if> </xsl:if> - <xsl:call-template name="anchor"> - <xsl:with-param name="node" select="$section"/> - <xsl:with-param name="conditional" select="0"/> - </xsl:call-template> + <xsl:if test="$allow-anchors != 0"> + <xsl:call-template name="anchor"> + <xsl:with-param name="node" select="$section"/> + <xsl:with-param name="conditional" select="0"/> + </xsl:call-template> + </xsl:if> <xsl:copy-of select="$title"/> </xsl:element> </xsl:template> @@ -301,9 +325,9 @@ or local-name($container) = 'index' or local-name($container) = 'partintro' or local-name($container) = 'preface' - or local-name($container) = 'setindex'">2</xsl:when> + or local-name($container) = 'setindex'">1</xsl:when> <xsl:when test="local-name($container) = 'glossdiv'"> - <xsl:value-of select="count(ancestor::glossdiv)+2"/> + <xsl:value-of select="count(ancestor::glossdiv)+1"/> </xsl:when> <xsl:when test="local-name($container) = 'sect1' or local-name($container) = 'sect2' @@ -322,11 +346,12 @@ </xsl:variable> <xsl:value-of select="$slevel + 1"/> </xsl:when> - <xsl:otherwise>2</xsl:otherwise> + <xsl:otherwise>1</xsl:otherwise> </xsl:choose> </xsl:variable> - <xsl:variable name="level"> + <!-- HTML H level is one higher than section level --> + <xsl:variable name="hlevel"> <xsl:choose> <xsl:when test="@renderas = 'sect1'">2</xsl:when> <xsl:when test="@renderas = 'sect2'">3</xsl:when> @@ -334,17 +359,70 @@ <xsl:when test="@renderas = 'sect4'">5</xsl:when> <xsl:when test="@renderas = 'sect5'">6</xsl:when> <xsl:otherwise> - <xsl:value-of select="$clevel"/> + <xsl:value-of select="$clevel + 1"/> </xsl:otherwise> </xsl:choose> </xsl:variable> - <xsl:element name="h{$level}"> + <xsl:element name="h{$hlevel}"> <xsl:call-template name="anchor"> <xsl:with-param name="conditional" select="0"/> </xsl:call-template> <xsl:apply-templates/> </xsl:element> +</xsl:template> + +<xsl:template match="section/subtitle" mode="titlepage.mode" priority="2"> + <xsl:call-template name="section.subtitle"/> +</xsl:template> + +<xsl:template match="sect1/subtitle" mode="titlepage.mode" priority="2"> + <xsl:call-template name="section.subtitle"/> +</xsl:template> + +<xsl:template match="sect2/subtitle" mode="titlepage.mode" priority="2"> + <xsl:call-template name="section.subtitle"/> +</xsl:template> + +<xsl:template match="sect3/subtitle" mode="titlepage.mode" priority="2"> + <xsl:call-template name="section.subtitle"/> +</xsl:template> + +<xsl:template match="sect4/subtitle" mode="titlepage.mode" priority="2"> + <xsl:call-template name="section.subtitle"/> +</xsl:template> + +<xsl:template match="sect5/subtitle" mode="titlepage.mode" priority="2"> + <xsl:call-template name="section.subtitle"/> +</xsl:template> + +<xsl:template name="section.subtitle"> + <!-- the context node should be the subtitle of a section when called --> + <xsl:variable name="section" select="(ancestor::section + |ancestor::simplesect + |ancestor::sect1 + |ancestor::sect2 + |ancestor::sect3 + |ancestor::sect4 + |ancestor::sect5)[last()]"/> + + <xsl:variable name="level"> + <xsl:call-template name="section.level"> + <xsl:with-param name="node" select="$section"/> + </xsl:call-template> + </xsl:variable> + + <xsl:call-template name="section.heading"> + <xsl:with-param name="section" select=".."/> + <xsl:with-param name="allow-anchors" select="0"/> + <!-- subtitle heading level one higher than section level --> + <xsl:with-param name="level" select="$level + 1"/> + <xsl:with-param name="title"> + <xsl:apply-templates select="$section" mode="object.subtitle.markup"> + <xsl:with-param name="allow-anchors" select="0"/> + </xsl:apply-templates> + </xsl:with-param> + </xsl:call-template> </xsl:template> </xsl:stylesheet> Index: phpdoc/xsl/docbook/html/synop.xsl diff -u phpdoc/xsl/docbook/html/synop.xsl:1.1 phpdoc/xsl/docbook/html/synop.xsl:1.2 --- phpdoc/xsl/docbook/html/synop.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/synop.xsl Sun Mar 9 09:56:38 2003 @@ -6,7 +6,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: synop.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: synop.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -41,7 +41,7 @@ <xsl:text> </xsl:text> </xsl:template> -<xsl:template match="group|arg"> +<xsl:template match="group|arg" name="group-or-arg"> <xsl:variable name="choice" select="@choice"/> <xsl:variable name="rep" select="@rep"/> <xsl:variable name="sepchar"> @@ -101,7 +101,7 @@ <xsl:variable name="choice" select="@choice"/> <xsl:variable name="rep" select="@rep"/> <xsl:if test="position()>1"><xsl:value-of select="$arg.or.sep"/></xsl:if> - <xsl:apply-templates/> + <xsl:call-template name="group-or-arg"/> </xsl:template> <xsl:template match="sbr"> @@ -121,6 +121,8 @@ <xsl:value-of select="$snum"/> <xsl:text>)</xsl:text> </a> + <xsl:text> </xsl:text> + <xsl:apply-templates/> </i> </xsl:template> @@ -133,7 +135,7 @@ <xsl:apply-templates select="." mode="synopfragment.number"/> </xsl:variable> <p> - <a name="#{@id}"> + <a name="{@id}"> <xsl:text>(</xsl:text> <xsl:value-of select="$snum"/> <xsl:text>)</xsl:text> @@ -141,7 +143,7 @@ <xsl:text> </xsl:text> <xsl:apply-templates/> </p> -</xsl:template> +</xsl:template> <xsl:template match="funcsynopsis"> <xsl:call-template name="informal.object"/> @@ -151,101 +153,473 @@ <pre class="{name(.)}"><xsl:apply-templates/></pre> </xsl:template> +<!-- ====================================================================== --> +<!-- funcprototype --> +<!-- + +funcprototype ::= (funcdef, + (void|varargs|paramdef+)) + +funcdef ::= (#PCDATA|type|replaceable|function)* + +paramdef ::= (#PCDATA|type|replaceable|parameter|funcparams)* +--> + <xsl:template match="funcprototype"> + <xsl:variable name="html-style"> + <xsl:call-template name="dbhtml-attribute"> + <xsl:with-param name="pis" + select="ancestor::funcsynopsis//processing-instruction('dbhtml')"/> + <xsl:with-param name="attribute" select="'funcsynopsis-style'"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="style"> + <xsl:choose> + <xsl:when test="$html-style != ''"> + <xsl:value-of select="$html-style"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$funcsynopsis.style"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="tabular-p" + select="$funcsynopsis.tabular.threshold > 0 + and string-length(.) > $funcsynopsis.tabular.threshold"/> + + <xsl:choose> + <xsl:when test="$style = 'kr' and $tabular-p"> + <xsl:apply-templates select="." mode="kr-tabular"/> + </xsl:when> + <xsl:when test="$style = 'kr'"> + <xsl:apply-templates select="." mode="kr-nontabular"/> + </xsl:when> + <xsl:when test="$style = 'ansi' and $tabular-p"> + <xsl:apply-templates select="." mode="ansi-tabular"/> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="." mode="ansi-nontabular"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ====================================================================== --> +<!-- funcprototype: kr, non-tabular --> + +<xsl:template match="funcprototype" mode="kr-nontabular"> <p> - <code> - <xsl:apply-templates/> - <xsl:if test="$funcsynopsis.style='kr'"> - <xsl:apply-templates select="./paramdef" mode="kr-funcsynopsis-mode"/> - </xsl:if> - </code> + <xsl:apply-templates mode="kr-nontabular"/> + <xsl:if test="paramdef"> + <br/> + <xsl:apply-templates select="paramdef" mode="kr-funcsynopsis-mode"/> + </xsl:if> </p> </xsl:template> -<xsl:template match="funcdef"> +<xsl:template match="funcdef" mode="kr-nontabular"> <code class="{name(.)}"> - <xsl:apply-templates/> + <xsl:apply-templates mode="kr-nontabular"/> + <xsl:text>(</xsl:text> </code> </xsl:template> -<xsl:template match="funcdef/function"> +<xsl:template match="funcdef/function" mode="kr-nontabular"> <xsl:choose> <xsl:when test="$funcsynopsis.decoration != 0"> - <b class="fsfunc"><xsl:apply-templates/></b> + <b class="fsfunc"><xsl:apply-templates mode="kr-nontabular"/></b> </xsl:when> <xsl:otherwise> - <xsl:apply-templates/> + <xsl:apply-templates mode="kr-nontabular"/> </xsl:otherwise> </xsl:choose> </xsl:template> -<xsl:template match="void"> +<xsl:template match="void" mode="kr-nontabular"> + <code>)</code> + <xsl:text>;</xsl:text> +</xsl:template> + +<xsl:template match="varargs" mode="kr-nontabular"> + <xsl:text>...</xsl:text> + <code>)</code> + <xsl:text>;</xsl:text> +</xsl:template> + +<xsl:template match="paramdef" mode="kr-nontabular"> + <xsl:apply-templates select="parameter" mode="kr-nontabular"/> <xsl:choose> - <xsl:when test="$funcsynopsis.style='ansi'"> - <xsl:text>(void);</xsl:text> + <xsl:when test="following-sibling::*"> + <xsl:text>, </xsl:text> </xsl:when> <xsl:otherwise> - <xsl:text>();</xsl:text> + <code>)</code> + <xsl:text>;</xsl:text> </xsl:otherwise> </xsl:choose> </xsl:template> -<xsl:template match="varargs"> - <xsl:text>(...);</xsl:text> +<xsl:template match="paramdef/parameter" mode="kr-nontabular"> + <xsl:choose> + <xsl:when test="$funcsynopsis.decoration != 0"> + <var class="pdparam"> + <xsl:apply-templates mode="kr-nontabular"/> + </var> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates mode="kr-nontabular"/> + </xsl:otherwise> + </xsl:choose> </xsl:template> -<xsl:template match="paramdef"> - <xsl:variable name="paramnum"> - <xsl:number count="paramdef" format="1"/> - </xsl:variable> - <xsl:if test="$paramnum=1">(</xsl:if> +<xsl:template match="paramdef" mode="kr-funcsynopsis-mode"> + <xsl:if test="preceding-sibling::paramdef"><br/></xsl:if> + <xsl:apply-templates mode="kr-funcsynopsis-mode"/> + <xsl:text>;</xsl:text> +</xsl:template> + +<xsl:template match="type|parameter|funcparams" mode="kr-funcsynopsis-mode"> + <code> + <xsl:apply-templates mode="kr-funcsynopsis-mode"/> + </code> +</xsl:template> + +<!-- ====================================================================== --> +<!-- funcprototype: kr, tabular --> + +<xsl:template match="funcprototype" mode="kr-tabular"> + <table border="0" summary="Function synopsis" cellspacing="0" cellpadding="0" + style="padding-bottom: 1em"> + <tr> + <td> + <xsl:apply-templates select="funcdef" mode="kr-tabular"/> + </td> + <xsl:apply-templates select="(void|varargs|paramdef)[1]" mode="kr-tabular"/> + </tr> + <xsl:for-each select="(void|varargs|paramdef)[position() > 1]"> + <tr> + <td> </td> + <xsl:apply-templates select="." mode="kr-tabular"/> + </tr> + </xsl:for-each> + </table> + <xsl:if test="paramdef"> + <table border="0" summary="Function argument synopsis" + cellspacing="0" cellpadding="0"> + <xsl:if test="following-sibling::funcprototype"> + <xsl:attribute name="style">padding-bottom: 1em</xsl:attribute> + </xsl:if> + <xsl:apply-templates select="paramdef" mode="kr-tabular-funcsynopsis-mode"/> + </table> + </xsl:if> +</xsl:template> + +<xsl:template match="funcdef" mode="kr-tabular"> + <code class="{name(.)}"> + <xsl:apply-templates mode="kr-tabular"/> + <xsl:text>(</xsl:text> + </code> +</xsl:template> + +<xsl:template match="funcdef/function" mode="kr-tabular"> <xsl:choose> - <xsl:when test="$funcsynopsis.style='ansi'"> - <xsl:apply-templates/> + <xsl:when test="$funcsynopsis.decoration != 0"> + <b class="fsfunc"><xsl:apply-templates mode="kr-nontabular"/></b> </xsl:when> <xsl:otherwise> - <xsl:apply-templates select="./parameter"/> + <xsl:apply-templates mode="kr-tabular"/> </xsl:otherwise> </xsl:choose> +</xsl:template> + +<xsl:template match="void" mode="kr-tabular"> + <td> + <code>)</code> + <xsl:text>;</xsl:text> + </td> + <td> </td> +</xsl:template> + +<xsl:template match="varargs" mode="kr-tabular"> + <td> + <xsl:text>...</xsl:text> + <code>)</code> + <xsl:text>;</xsl:text> + </td> + <td> </td> +</xsl:template> + +<xsl:template match="paramdef" mode="kr-tabular"> + <td> + <xsl:apply-templates select="parameter" mode="kr-tabular"/> + <xsl:choose> + <xsl:when test="following-sibling::*"> + <xsl:text>, </xsl:text> + </xsl:when> + <xsl:otherwise> + <code>)</code> + <xsl:text>;</xsl:text> + </xsl:otherwise> + </xsl:choose> + </td> + <td> </td> +</xsl:template> + +<xsl:template match="paramdef/parameter" mode="kr-tabular"> <xsl:choose> - <xsl:when test="following-sibling::paramdef"> - <xsl:text>, </xsl:text> + <xsl:when test="$funcsynopsis.decoration != 0"> + <var class="pdparam"> + <xsl:apply-templates mode="kr-tabular"/> + </var> </xsl:when> <xsl:otherwise> - <xsl:text>);</xsl:text> + <xsl:apply-templates mode="kr-tabular"/> </xsl:otherwise> </xsl:choose> </xsl:template> -<xsl:template match="paramdef/parameter"> +<xsl:template match="paramdef" mode="kr-tabular-funcsynopsis-mode"> + <tr> + <xsl:choose> + <xsl:when test="type and funcparams"> + <td> + <xsl:apply-templates select="type" mode="kr-tabular-funcsynopsis-mode"/> + <xsl:text> </xsl:text> + </td> + <td> + <xsl:apply-templates select="type/following-sibling::node()" + mode="kr-tabular-funcsynopsis-mode"/> + </td> + </xsl:when> + <xsl:when test="funcparams"> + <td colspan="2"> + <xsl:apply-templates mode="kr-tabular-funcsynopsis-mode"/> + </td> + </xsl:when> + <xsl:otherwise> + <td> + <xsl:apply-templates select="parameter/preceding-sibling::node()" + mode="kr-tabular-funcsynopsis-mode"/> + <xsl:text> </xsl:text> + </td> + <td> + <xsl:apply-templates select="parameter" + mode="kr-tabular"/> + <xsl:apply-templates select="parameter/following-sibling::node()" + mode="kr-tabular-funcsynopsis-mode"/> + <xsl:text>;</xsl:text> + </td> + </xsl:otherwise> + </xsl:choose> + </tr> +</xsl:template> + +<xsl:template match="paramdef/parameter" mode="kr-tabular-funcsynopsis-mode"> <xsl:choose> <xsl:when test="$funcsynopsis.decoration != 0"> <var class="pdparam"> - <xsl:apply-templates/> + <xsl:apply-templates mode="kr-tabular-funcsynopsis-mode"/> </var> </xsl:when> <xsl:otherwise> - <xsl:apply-templates/> + <xsl:apply-templates mode="kr-tabular-funcsynopsis-mode"/> </xsl:otherwise> </xsl:choose> - <xsl:if test="following-sibling::parameter"> - <xsl:text>, </xsl:text> - </xsl:if> </xsl:template> -<xsl:template match="paramdef" mode="kr-funcsynopsis-mode"> - <br/> - <xsl:apply-templates/> +<xsl:template match="funcparams" mode="kr-tabular-funcsynopsis-mode"> + <code>(</code> + <xsl:apply-templates mode="kr-tabular-funcsynopsis-mode"/> + <code>)</code> + <xsl:text>;</xsl:text> +</xsl:template> + +<!-- ====================================================================== --> +<!-- funcprototype: ansi, non-tabular --> + +<xsl:template match="funcprototype" mode="ansi-nontabular"> + <p> + <xsl:apply-templates mode="ansi-nontabular"/> + </p> +</xsl:template> + +<xsl:template match="funcdef" mode="ansi-nontabular"> + <code class="{name(.)}"> + <xsl:apply-templates mode="ansi-nontabular"/> + <xsl:text>(</xsl:text> + </code> +</xsl:template> + +<xsl:template match="funcdef/function" mode="ansi-nontabular"> + <xsl:choose> + <xsl:when test="$funcsynopsis.decoration != 0"> + <b class="fsfunc"><xsl:apply-templates mode="ansi-nontabular"/></b> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates mode="ansi-nontabular"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="void" mode="ansi-nontabular"> + <code>void)</code> <xsl:text>;</xsl:text> </xsl:template> -<xsl:template match="funcparams"> - <xsl:text>(</xsl:text> +<xsl:template match="varargs" mode="ansi-nontabular"> + <xsl:text>...</xsl:text> + <code>)</code> + <xsl:text>;</xsl:text> +</xsl:template> + +<xsl:template match="paramdef" mode="ansi-nontabular"> + <xsl:apply-templates mode="ansi-nontabular"/> + <xsl:choose> + <xsl:when test="following-sibling::*"> + <xsl:text>, </xsl:text> + </xsl:when> + <xsl:otherwise> + <code>)</code> + <xsl:text>;</xsl:text> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="paramdef/parameter" mode="ansi-nontabular"> + <xsl:choose> + <xsl:when test="$funcsynopsis.decoration != 0"> + <var class="pdparam"> + <xsl:apply-templates mode="ansi-nontabular"/> + </var> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates mode="ansi-nontabular"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="funcparams" mode="ansi-nontabular"> + <code>(</code> + <xsl:apply-templates mode="ansi-nontabular"/> + <code>)</code> +</xsl:template> + +<!-- ====================================================================== --> +<!-- funcprototype: ansi, tabular --> + +<xsl:template match="funcprototype" mode="ansi-tabular"> + <table border="0" summary="Function synopsis" cellspacing="0" cellpadding="0"> + <xsl:if test="following-sibling::funcprototype"> + <xsl:attribute name="style">padding-bottom: 1em</xsl:attribute> + </xsl:if> + <tr> + <td> + <xsl:apply-templates select="funcdef" mode="ansi-tabular"/> + </td> + <xsl:apply-templates select="(void|varargs|paramdef)[1]" mode="ansi-tabular"/> + </tr> + <xsl:for-each select="(void|varargs|paramdef)[position() > 1]"> + <tr> + <td> </td> + <xsl:apply-templates select="." mode="ansi-tabular"/> + </tr> + </xsl:for-each> + </table> +</xsl:template> + +<xsl:template match="funcdef" mode="ansi-tabular"> + <code class="{name(.)}"> + <xsl:apply-templates mode="ansi-tabular"/> + <xsl:text>(</xsl:text> + </code> +</xsl:template> + +<xsl:template match="funcdef/function" mode="ansi-tabular"> + <xsl:choose> + <xsl:when test="$funcsynopsis.decoration != 0"> + <b class="fsfunc"><xsl:apply-templates mode="ansi-nontabular"/></b> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates mode="kr-tabular"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="void" mode="ansi-tabular"> + <td> + <code>void)</code> + <xsl:text>;</xsl:text> + </td> + <td> </td> +</xsl:template> + +<xsl:template match="varargs" mode="ansi-tabular"> + <td> + <xsl:text>...</xsl:text> + <code>)</code> + <xsl:text>;</xsl:text> + </td> + <td> </td> +</xsl:template> + +<xsl:template match="paramdef" mode="ansi-tabular"> + <xsl:choose> + <xsl:when test="type and funcparams"> + <td> + <xsl:apply-templates select="type" mode="kr-tabular-funcsynopsis-mode"/> + <xsl:text> </xsl:text> + </td> + <td> + <xsl:apply-templates select="type/following-sibling::node()" + mode="kr-tabular-funcsynopsis-mode"/> + </td> + </xsl:when> + <xsl:otherwise> + <td> + <xsl:apply-templates select="parameter/preceding-sibling::node()" + mode="ansi-tabular"/> + <xsl:text> </xsl:text> + </td> + <td> + <xsl:apply-templates select="parameter" + mode="ansi-tabular"/> + <xsl:apply-templates select="parameter/following-sibling::node()" + mode="ansi-tabular"/> + <xsl:choose> + <xsl:when test="following-sibling::*"> + <xsl:text>, </xsl:text> + </xsl:when> + <xsl:otherwise> + <code>)</code> + <xsl:text>;</xsl:text> + </xsl:otherwise> + </xsl:choose> + </td> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="paramdef/parameter" mode="ansi-tabular"> + <xsl:choose> + <xsl:when test="$funcsynopsis.decoration != 0"> + <var class="pdparam"> + <xsl:apply-templates mode="ansi-tabular"/> + </var> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates mode="ansi-tabular"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="funcparams" mode="ansi-tabular"> + <code>(</code> <xsl:apply-templates/> - <xsl:text>)</xsl:text> + <code>)</code> </xsl:template> -<!-- ==================================================================== --> +<!-- ====================================================================== --> <xsl:variable name="default-classsynopsis-language">java</xsl:variable> Index: phpdoc/xsl/docbook/html/table.xsl diff -u phpdoc/xsl/docbook/html/table.xsl:1.1 phpdoc/xsl/docbook/html/table.xsl:1.2 --- phpdoc/xsl/docbook/html/table.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/table.xsl Sun Mar 9 09:56:38 2003 @@ -4,13 +4,14 @@ xmlns:stbl="http://nwalsh.com/xslt/ext/com.nwalsh.saxon.Table" xmlns:xtbl="com.nwalsh.xalan.Table" xmlns:lxslt="http://xml.apache.org/xslt" - exclude-result-prefixes="doc stbl xtbl lxslt" + xmlns:ptbl="http://nwalsh.com/xslt/ext/xsltproc/python/Table" + exclude-result-prefixes="doc stbl xtbl lxslt ptbl" version='1.0'> <xsl:include href="../common/table.xsl"/> <!-- ******************************************************************** - $Id: table.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: table.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -28,6 +29,7 @@ <xsl:variable name="rowsep"> <xsl:call-template name="inherited.table.attribute"> <xsl:with-param name="entry" select="NOT-AN-ELEMENT-NAME"/> + <xsl:with-param name="row" select="ancestor-or-self::row[1]"/> <xsl:with-param name="colnum" select="$colnum"/> <xsl:with-param name="attribute" select="'rowsep'"/> </xsl:call-template> @@ -36,6 +38,7 @@ <xsl:variable name="colsep"> <xsl:call-template name="inherited.table.attribute"> <xsl:with-param name="entry" select="NOT-AN-ELEMENT-NAME"/> + <xsl:with-param name="row" select="ancestor-or-self::row[1]"/> <xsl:with-param name="colnum" select="$colnum"/> <xsl:with-param name="attribute" select="'colsep'"/> </xsl:call-template> @@ -65,21 +68,87 @@ <xsl:template name="border"> <xsl:param name="side" select="'left'"/> <xsl:param name="padding" select="0"/> + <xsl:param name="style" select="$table.cell.border.style"/> + <xsl:param name="color" select="$table.cell.border.color"/> + <xsl:param name="thickness" select="$table.cell.border.thickness"/> - <xsl:text>border-</xsl:text> - <xsl:value-of select="$side"/> - <xsl:text>: </xsl:text> - <xsl:value-of select="$table.border.thickness"/> - <xsl:text> </xsl:text> - <xsl:value-of select="$table.border.style"/> - <xsl:text> </xsl:text> - <xsl:value-of select="$table.border.color"/> - <xsl:text>; </xsl:text> + <!-- Note: Some browsers (mozilla) require at least a width and style. --> + + <xsl:choose> + <xsl:when test="($thickness != '' + and $style != '' + and $color != '') + or ($thickness != '' + and $style != '') + or ($thickness != '')"> + <!-- use the compound property if we can: --> + <!-- it saves space and probably works more reliably --> + <xsl:text>border-</xsl:text> + <xsl:value-of select="$side"/> + <xsl:text>: </xsl:text> + <xsl:value-of select="$thickness"/> + <xsl:text> </xsl:text> + <xsl:value-of select="$style"/> + <xsl:text> </xsl:text> + <xsl:value-of select="$color"/> + <xsl:text>; </xsl:text> + </xsl:when> + <xsl:otherwise> + <!-- we need to specify the styles individually --> + <xsl:if test="$thickness != ''"> + <xsl:text>border-</xsl:text> + <xsl:value-of select="$side"/> + <xsl:text>-width: </xsl:text> + <xsl:value-of select="$thickness"/> + <xsl:text>; </xsl:text> + </xsl:if> + + <xsl:if test="$style != ''"> + <xsl:text>border-</xsl:text> + <xsl:value-of select="$side"/> + <xsl:text>-style: </xsl:text> + <xsl:value-of select="$style"/> + <xsl:text>; </xsl:text> + </xsl:if> + + <xsl:if test="$color != ''"> + <xsl:text>border-</xsl:text> + <xsl:value-of select="$side"/> + <xsl:text>-color: </xsl:text> + <xsl:value-of select="$color"/> + <xsl:text>; </xsl:text> + </xsl:if> + </xsl:otherwise> + </xsl:choose> </xsl:template> <!-- ==================================================================== --> -<xsl:template match="tgroup"> +<xsl:template match="tgroup" name="tgroup"> + <xsl:variable name="summary"> + <xsl:call-template name="dbhtml-attribute"> + <xsl:with-param name="pis" + select="processing-instruction('dbhtml')"/> + <xsl:with-param name="attribute" select="'table-summary'"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="cellspacing"> + <xsl:call-template name="dbhtml-attribute"> + <xsl:with-param name="pis" + select="processing-instruction('dbhtml')"/> + <xsl:with-param name="attribute" select="'cellspacing'"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="cellpadding"> + <xsl:call-template name="dbhtml-attribute"> + <xsl:with-param name="pis" + select="processing-instruction('dbhtml')[1]"/> + <xsl:with-param name="attribute" select="'cellpadding'"/> + </xsl:call-template> + </xsl:variable> + <table> <xsl:choose> <!-- If there's a textobject/phrase for the table summary, use it --> @@ -91,19 +160,10 @@ <!-- If there's a <?dbhtml table-summary="foo"?> PI, use it for the HTML table summary attribute --> - <xsl:when test="processing-instruction('dbhtml')"> - <xsl:variable name="summary"> - <xsl:call-template name="dbhtml-attribute"> - <xsl:with-param name="pis" - select="processing-instruction('dbhtml')[1]"/> - <xsl:with-param name="attribute" select="'table-summary'"/> - </xsl:call-template> - </xsl:variable> - <xsl:if test="$summary != ''"> - <xsl:attribute name="summary"> - <xsl:value-of select="$summary"/> - </xsl:attribute> - </xsl:if> + <xsl:when test="$summary != ''"> + <xsl:attribute name="summary"> + <xsl:value-of select="$summary"/> + </xsl:attribute> </xsl:when> <!-- Otherwise, if there's a title, use that --> @@ -117,6 +177,32 @@ <xsl:otherwise><!-- nevermind --></xsl:otherwise> </xsl:choose> + <xsl:if test="$cellspacing != '' or $html.cellspacing != ''"> + <xsl:attribute name="cellspacing"> + <xsl:choose> + <xsl:when test="$cellspacing != ''"> + <xsl:value-of select="$cellspacing"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$html.cellspacing"/> + </xsl:otherwise> + </xsl:choose> + </xsl:attribute> + </xsl:if> + + <xsl:if test="$cellpadding != '' or $html.cellpadding != ''"> + <xsl:attribute name="cellpadding"> + <xsl:choose> + <xsl:when test="$cellpadding != ''"> + <xsl:value-of select="$cellpadding"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$html.cellpadding"/> + </xsl:otherwise> + </xsl:choose> + </xsl:attribute> + </xsl:if> + <xsl:if test="../@pgwide=1"> <xsl:attribute name="width">100%</xsl:attribute> </xsl:if> @@ -130,15 +216,27 @@ <xsl:text>border-collapse: collapse;</xsl:text> <xsl:call-template name="border"> <xsl:with-param name="side" select="'top'"/> + <xsl:with-param name="style" select="$table.frame.border.style"/> + <xsl:with-param name="color" select="$table.frame.border.color"/> + <xsl:with-param name="thickness" select="$table.frame.border.thickness"/> </xsl:call-template> <xsl:call-template name="border"> <xsl:with-param name="side" select="'bottom'"/> + <xsl:with-param name="style" select="$table.frame.border.style"/> + <xsl:with-param name="color" select="$table.frame.border.color"/> + <xsl:with-param name="thickness" select="$table.frame.border.thickness"/> </xsl:call-template> <xsl:call-template name="border"> <xsl:with-param name="side" select="'left'"/> + <xsl:with-param name="style" select="$table.frame.border.style"/> + <xsl:with-param name="color" select="$table.frame.border.color"/> + <xsl:with-param name="thickness" select="$table.frame.border.thickness"/> </xsl:call-template> <xsl:call-template name="border"> <xsl:with-param name="side" select="'right'"/> + <xsl:with-param name="style" select="$table.frame.border.style"/> + <xsl:with-param name="color" select="$table.frame.border.color"/> + <xsl:with-param name="thickness" select="$table.frame.border.thickness"/> </xsl:call-template> </xsl:attribute> </xsl:when> @@ -147,9 +245,15 @@ <xsl:text>border-collapse: collapse;</xsl:text> <xsl:call-template name="border"> <xsl:with-param name="side" select="'top'"/> + <xsl:with-param name="style" select="$table.frame.border.style"/> + <xsl:with-param name="color" select="$table.frame.border.color"/> + <xsl:with-param name="thickness" select="$table.frame.border.thickness"/> </xsl:call-template> <xsl:call-template name="border"> <xsl:with-param name="side" select="'bottom'"/> + <xsl:with-param name="style" select="$table.frame.border.style"/> + <xsl:with-param name="color" select="$table.frame.border.color"/> + <xsl:with-param name="thickness" select="$table.frame.border.thickness"/> </xsl:call-template> </xsl:attribute> </xsl:when> @@ -158,6 +262,9 @@ <xsl:text>border-collapse: collapse;</xsl:text> <xsl:call-template name="border"> <xsl:with-param name="side" select="'top'"/> + <xsl:with-param name="style" select="$table.frame.border.style"/> + <xsl:with-param name="color" select="$table.frame.border.color"/> + <xsl:with-param name="thickness" select="$table.frame.border.thickness"/> </xsl:call-template> </xsl:attribute> </xsl:when> @@ -166,6 +273,9 @@ <xsl:text>border-collapse: collapse;</xsl:text> <xsl:call-template name="border"> <xsl:with-param name="side" select="'bottom'"/> + <xsl:with-param name="style" select="$table.frame.border.style"/> + <xsl:with-param name="color" select="$table.frame.border.color"/> + <xsl:with-param name="thickness" select="$table.frame.border.thickness"/> </xsl:call-template> </xsl:attribute> </xsl:when> @@ -174,9 +284,15 @@ <xsl:text>border-collapse: collapse;</xsl:text> <xsl:call-template name="border"> <xsl:with-param name="side" select="'left'"/> + <xsl:with-param name="style" select="$table.frame.border.style"/> + <xsl:with-param name="color" select="$table.frame.border.color"/> + <xsl:with-param name="thickness" select="$table.frame.border.thickness"/> </xsl:call-template> <xsl:call-template name="border"> <xsl:with-param name="side" select="'right'"/> + <xsl:with-param name="style" select="$table.frame.border.style"/> + <xsl:with-param name="color" select="$table.frame.border.color"/> + <xsl:with-param name="thickness" select="$table.frame.border.thickness"/> </xsl:call-template> </xsl:attribute> </xsl:when> @@ -265,6 +381,9 @@ <xsl:when test="function-available('xtbl:adjustColumnWidths')"> <xsl:copy-of select="xtbl:adjustColumnWidths($colgroup)"/> </xsl:when> + <xsl:when test="function-available('ptbl:adjustColumnWidths')"> + <xsl:copy-of select="ptbl:adjustColumnWidths($colgroup)"/> + </xsl:when> <xsl:otherwise> <xsl:message terminate="yes"> <xsl:text>No adjustColumnWidths function available.</xsl:text> @@ -394,6 +513,12 @@ </xsl:variable> <tr> + <xsl:call-template name="tr.attributes"> + <xsl:with-param name="rownum"> + <xsl:number from="tgroup" count="row"/> + </xsl:with-param> + </xsl:call-template> + <xsl:if test="$row-height != ''"> <xsl:attribute name="height"> <xsl:value-of select="$row-height"/> @@ -431,14 +556,14 @@ </xsl:attribute> </xsl:if> - <xsl:apply-templates select="entry[1]"> + <xsl:apply-templates select="(entry|entrytbl)[1]"> <xsl:with-param name="spans" select="$spans"/> </xsl:apply-templates> </tr> <xsl:if test="following-sibling::row"> <xsl:variable name="nextspans"> - <xsl:apply-templates select="entry[1]" mode="span"> + <xsl:apply-templates select="(entry|entrytbl)[1]" mode="span"> <xsl:with-param name="spans" select="$spans"/> </xsl:apply-templates> </xsl:variable> @@ -449,7 +574,7 @@ </xsl:if> </xsl:template> -<xsl:template match="entry" name="entry"> +<xsl:template match="entry|entrytbl" name="entry"> <xsl:param name="col" select="1"/> <xsl:param name="spans"/> @@ -575,6 +700,12 @@ </xsl:attribute> </xsl:if> + <xsl:if test="$entry.propagates.style != 0 and @role"> + <xsl:attribute name="class"> + <xsl:value-of select="@role"/> + </xsl:attribute> + </xsl:if> + <xsl:if test="$show.revisionflag and @revisionflag"> <xsl:attribute name="class"> <xsl:value-of select="@revisionflag"/> @@ -644,6 +775,9 @@ <xsl:when test="$empty.cell"> <xsl:text> </xsl:text> </xsl:when> + <xsl:when test="self::entrytbl"> + <xsl:call-template name="tgroup"/> + </xsl:when> <xsl:otherwise> <xsl:apply-templates/> </xsl:otherwise> @@ -651,8 +785,9 @@ </xsl:element> <xsl:choose> - <xsl:when test="following-sibling::entry"> - <xsl:apply-templates select="following-sibling::entry[1]"> + <xsl:when test="following-sibling::entry|following-sibling::entrytbl"> + <xsl:apply-templates select="(following-sibling::entry + |following-sibling::entrytbl)[1]"> <xsl:with-param name="col" select="$col+$entry.colspan"/> <xsl:with-param name="spans" select="$following.spans"/> </xsl:apply-templates> @@ -668,7 +803,7 @@ </xsl:choose> </xsl:template> -<xsl:template match="entry" name="sentry" mode="span"> +<xsl:template match="entry|entrytbl" name="sentry" mode="span"> <xsl:param name="col" select="1"/> <xsl:param name="spans"/> @@ -725,8 +860,9 @@ </xsl:call-template> <xsl:choose> - <xsl:when test="following-sibling::entry"> - <xsl:apply-templates select="following-sibling::entry[1]" + <xsl:when test="following-sibling::entry|following-sibling::entrytbl"> + <xsl:apply-templates select="(following-sibling::entry + |following-sibling::entrytbl)[1]" mode="span"> <xsl:with-param name="col" select="$col+$entry.colspan"/> <xsl:with-param name="spans" select="$following.spans"/> @@ -839,7 +975,6 @@ </xsl:choose> </xsl:otherwise> </xsl:choose> - </xsl:template> <xsl:template name="colspec.colwidth"> @@ -866,6 +1001,21 @@ </xsl:choose> </xsl:otherwise> </xsl:choose> +</xsl:template> + +<!-- ====================================================================== --> + +<xsl:template name="tr.attributes"> + <xsl:param name="row" select="."/> + <xsl:param name="rownum" select="0"/> + + <!-- by default, do nothing. But you might want to say: + + <xsl:if test="$rownum mod 2 = 0"> + <xsl:attribute name="class">oddrow</xsl:attribute> + </xsl:if> + + --> </xsl:template> </xsl:stylesheet> Index: phpdoc/xsl/docbook/html/titlepage.templates.xml diff -u phpdoc/xsl/docbook/html/titlepage.templates.xml:1.1 phpdoc/xsl/docbook/html/titlepage.templates.xml:1.2 --- phpdoc/xsl/docbook/html/titlepage.templates.xml:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/titlepage.templates.xml Sun Mar 9 09:56:38 2003 @@ -4,8 +4,8 @@ <!-- ==================================================================== --> -<t:titlepage element="article" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="article" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -21,24 +21,24 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> <hr/> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> -<t:titlepage element="set" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="set" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -54,24 +54,24 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> <hr/> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> -<t:titlepage element="book" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="book" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -87,24 +87,24 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> <hr/> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> -<t:titlepage element="part" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="part" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -120,21 +120,21 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> -<t:titlepage element="partintro" wrapper="div"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="partintro" t:wrapper="div"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -150,23 +150,23 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> -<t:titlepage element="reference" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="reference" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -182,71 +182,71 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> <hr/> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> -<t:titlepage element="refentry" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="refentry" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <!-- uncomment this if you want refentry titlepages - <title force="1" - named-template="refentry.title" + <title t:force="1" + t:named-template="refentry.title" param:node="ancestor-or-self::refentry[1]"/> --> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator/> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> - <t:titlepage element="dedication" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> + <t:titlepage t:element="dedication" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title - force="1" - named-template="component.title" + t:force="1" + t:named-template="component.title" param:node="ancestor-or-self::dedication[1]"/> <subtitle/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> -<t:titlepage element="preface" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="preface" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -262,23 +262,23 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> -<t:titlepage element="chapter" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="chapter" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -294,23 +294,23 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> -<t:titlepage element="appendix" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="appendix" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -326,23 +326,23 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> -<t:titlepage element="section" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="section" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -358,22 +358,22 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> <xsl:if test="count(parent::*)='0'"><hr/></xsl:if> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> -<t:titlepage element="sect1" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="sect1" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -389,22 +389,22 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> <xsl:if test="count(parent::*)='0'"><hr/></xsl:if> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> -<t:titlepage element="sect2" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="sect2" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -420,22 +420,22 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> <xsl:if test="count(parent::*)='0'"><hr/></xsl:if> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> -<t:titlepage element="sect3" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="sect3" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -451,22 +451,22 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> <xsl:if test="count(parent::*)='0'"><hr/></xsl:if> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> -<t:titlepage element="sect4" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="sect4" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -482,22 +482,22 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> <xsl:if test="count(parent::*)='0'"><hr/></xsl:if> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> -<t:titlepage element="sect5" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="sect5" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -513,22 +513,22 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> <xsl:if test="count(parent::*)='0'"><hr/></xsl:if> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> -<t:titlepage element="simplesect" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="simplesect" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -544,89 +544,113 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> <xsl:if test="count(parent::*)='0'"><hr/></xsl:if> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> -<t:titlepage element="bibliography" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="bibliography" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title - force="1" - named-template="component.title" + t:force="1" + t:named-template="component.title" param:node="ancestor-or-self::bibliography[1]"/> <subtitle/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> -<t:titlepage element="glossary" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="glossary" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title - force="1" - named-template="component.title" + t:force="1" + t:named-template="component.title" param:node="ancestor-or-self::glossary[1]"/> <subtitle/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> -<t:titlepage element="index" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="index" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title - force="1" - named-template="component.title" + t:force="1" + t:named-template="component.title" param:node="ancestor-or-self::index[1]"/> <subtitle/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> + </t:titlepage-before> +</t:titlepage> + +<!-- ==================================================================== --> + +<t:titlepage t:element="setindex" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> + <title + t:force="1" + t:named-template="component.title" + param:node="ancestor-or-self::setindex[1]"/> + <subtitle/> + </t:titlepage-content> + + <t:titlepage-content t:side="verso"> + </t:titlepage-content> + + <t:titlepage-separator> + </t:titlepage-separator> + + <t:titlepage-before t:side="recto"> + </t:titlepage-before> + + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> Index: phpdoc/xsl/docbook/html/titlepage.templates.xsl diff -u phpdoc/xsl/docbook/html/titlepage.templates.xsl:1.1 phpdoc/xsl/docbook/html/titlepage.templates.xsl:1.2 --- phpdoc/xsl/docbook/html/titlepage.templates.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/titlepage.templates.xsl Sun Mar 9 09:56:38 2003 @@ -65,10 +65,14 @@ <xsl:template name="article.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="article.titlepage.before.recto"/> <xsl:call-template name="article.titlepage.recto"/> + </div> + <div> <xsl:call-template name="article.titlepage.before.verso"/> <xsl:call-template name="article.titlepage.verso"/> + </div> <xsl:call-template name="article.titlepage.separator"/> </div> </xsl:template> @@ -209,10 +213,14 @@ <xsl:template name="set.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="set.titlepage.before.recto"/> <xsl:call-template name="set.titlepage.recto"/> + </div> + <div> <xsl:call-template name="set.titlepage.before.verso"/> <xsl:call-template name="set.titlepage.verso"/> + </div> <xsl:call-template name="set.titlepage.separator"/> </div> </xsl:template> @@ -353,10 +361,14 @@ <xsl:template name="book.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="book.titlepage.before.recto"/> <xsl:call-template name="book.titlepage.recto"/> + </div> + <div> <xsl:call-template name="book.titlepage.before.verso"/> <xsl:call-template name="book.titlepage.verso"/> + </div> <xsl:call-template name="book.titlepage.separator"/> </div> </xsl:template> @@ -514,10 +526,14 @@ <xsl:template name="part.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="part.titlepage.before.recto"/> <xsl:call-template name="part.titlepage.recto"/> + </div> + <div> <xsl:call-template name="part.titlepage.before.verso"/> <xsl:call-template name="part.titlepage.verso"/> + </div> <xsl:call-template name="part.titlepage.separator"/> </div> </xsl:template> @@ -675,10 +691,14 @@ <xsl:template name="partintro.titlepage"> <div> + <div> <xsl:call-template name="partintro.titlepage.before.recto"/> <xsl:call-template name="partintro.titlepage.recto"/> + </div> + <div> <xsl:call-template name="partintro.titlepage.before.verso"/> <xsl:call-template name="partintro.titlepage.verso"/> + </div> <xsl:call-template name="partintro.titlepage.separator"/> </div> </xsl:template> @@ -836,10 +856,14 @@ <xsl:template name="reference.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="reference.titlepage.before.recto"/> <xsl:call-template name="reference.titlepage.recto"/> + </div> + <div> <xsl:call-template name="reference.titlepage.before.verso"/> <xsl:call-template name="reference.titlepage.verso"/> + </div> <xsl:call-template name="reference.titlepage.separator"/> </div> </xsl:template> @@ -951,10 +975,14 @@ <xsl:template name="refentry.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="refentry.titlepage.before.recto"/> <xsl:call-template name="refentry.titlepage.recto"/> + </div> + <div> <xsl:call-template name="refentry.titlepage.before.verso"/> <xsl:call-template name="refentry.titlepage.verso"/> + </div> <xsl:call-template name="refentry.titlepage.separator"/> </div> </xsl:template> @@ -1004,10 +1032,14 @@ <xsl:template name="dedication.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="dedication.titlepage.before.recto"/> <xsl:call-template name="dedication.titlepage.recto"/> + </div> + <div> <xsl:call-template name="dedication.titlepage.before.verso"/> <xsl:call-template name="dedication.titlepage.verso"/> + </div> <xsl:call-template name="dedication.titlepage.separator"/> </div> </xsl:template> @@ -1093,10 +1125,14 @@ <xsl:template name="preface.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="preface.titlepage.before.recto"/> <xsl:call-template name="preface.titlepage.recto"/> + </div> + <div> <xsl:call-template name="preface.titlepage.before.verso"/> <xsl:call-template name="preface.titlepage.verso"/> + </div> <xsl:call-template name="preface.titlepage.separator"/> </div> </xsl:template> @@ -1254,10 +1290,14 @@ <xsl:template name="chapter.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="chapter.titlepage.before.recto"/> <xsl:call-template name="chapter.titlepage.recto"/> + </div> + <div> <xsl:call-template name="chapter.titlepage.before.verso"/> <xsl:call-template name="chapter.titlepage.verso"/> + </div> <xsl:call-template name="chapter.titlepage.separator"/> </div> </xsl:template> @@ -1415,10 +1455,14 @@ <xsl:template name="appendix.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="appendix.titlepage.before.recto"/> <xsl:call-template name="appendix.titlepage.recto"/> + </div> + <div> <xsl:call-template name="appendix.titlepage.before.verso"/> <xsl:call-template name="appendix.titlepage.verso"/> + </div> <xsl:call-template name="appendix.titlepage.separator"/> </div> </xsl:template> @@ -1559,10 +1603,14 @@ <xsl:template name="section.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="section.titlepage.before.recto"/> <xsl:call-template name="section.titlepage.recto"/> + </div> + <div> <xsl:call-template name="section.titlepage.before.verso"/> <xsl:call-template name="section.titlepage.verso"/> + </div> <xsl:call-template name="section.titlepage.separator"/> </div> </xsl:template> @@ -1703,10 +1751,14 @@ <xsl:template name="sect1.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="sect1.titlepage.before.recto"/> <xsl:call-template name="sect1.titlepage.recto"/> + </div> + <div> <xsl:call-template name="sect1.titlepage.before.verso"/> <xsl:call-template name="sect1.titlepage.verso"/> + </div> <xsl:call-template name="sect1.titlepage.separator"/> </div> </xsl:template> @@ -1847,10 +1899,14 @@ <xsl:template name="sect2.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="sect2.titlepage.before.recto"/> <xsl:call-template name="sect2.titlepage.recto"/> + </div> + <div> <xsl:call-template name="sect2.titlepage.before.verso"/> <xsl:call-template name="sect2.titlepage.verso"/> + </div> <xsl:call-template name="sect2.titlepage.separator"/> </div> </xsl:template> @@ -1991,10 +2047,14 @@ <xsl:template name="sect3.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="sect3.titlepage.before.recto"/> <xsl:call-template name="sect3.titlepage.recto"/> + </div> + <div> <xsl:call-template name="sect3.titlepage.before.verso"/> <xsl:call-template name="sect3.titlepage.verso"/> + </div> <xsl:call-template name="sect3.titlepage.separator"/> </div> </xsl:template> @@ -2135,10 +2195,14 @@ <xsl:template name="sect4.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="sect4.titlepage.before.recto"/> <xsl:call-template name="sect4.titlepage.recto"/> + </div> + <div> <xsl:call-template name="sect4.titlepage.before.verso"/> <xsl:call-template name="sect4.titlepage.verso"/> + </div> <xsl:call-template name="sect4.titlepage.separator"/> </div> </xsl:template> @@ -2279,10 +2343,14 @@ <xsl:template name="sect5.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="sect5.titlepage.before.recto"/> <xsl:call-template name="sect5.titlepage.recto"/> + </div> + <div> <xsl:call-template name="sect5.titlepage.before.verso"/> <xsl:call-template name="sect5.titlepage.verso"/> + </div> <xsl:call-template name="sect5.titlepage.separator"/> </div> </xsl:template> @@ -2440,10 +2508,14 @@ <xsl:template name="simplesect.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="simplesect.titlepage.before.recto"/> <xsl:call-template name="simplesect.titlepage.recto"/> + </div> + <div> <xsl:call-template name="simplesect.titlepage.before.verso"/> <xsl:call-template name="simplesect.titlepage.verso"/> + </div> <xsl:call-template name="simplesect.titlepage.separator"/> </div> </xsl:template> @@ -2571,10 +2643,14 @@ <xsl:template name="bibliography.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="bibliography.titlepage.before.recto"/> <xsl:call-template name="bibliography.titlepage.recto"/> + </div> + <div> <xsl:call-template name="bibliography.titlepage.before.verso"/> <xsl:call-template name="bibliography.titlepage.verso"/> + </div> <xsl:call-template name="bibliography.titlepage.separator"/> </div> </xsl:template> @@ -2630,10 +2706,14 @@ <xsl:template name="glossary.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="glossary.titlepage.before.recto"/> <xsl:call-template name="glossary.titlepage.recto"/> + </div> + <div> <xsl:call-template name="glossary.titlepage.before.verso"/> <xsl:call-template name="glossary.titlepage.verso"/> + </div> <xsl:call-template name="glossary.titlepage.separator"/> </div> </xsl:template> @@ -2689,10 +2769,14 @@ <xsl:template name="index.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="index.titlepage.before.recto"/> <xsl:call-template name="index.titlepage.recto"/> + </div> + <div> <xsl:call-template name="index.titlepage.before.verso"/> <xsl:call-template name="index.titlepage.verso"/> + </div> <xsl:call-template name="index.titlepage.separator"/> </div> </xsl:template> @@ -2712,6 +2796,69 @@ <xsl:template match="subtitle" mode="index.titlepage.recto.auto.mode"> <div xsl:use-attribute-sets="index.titlepage.recto.style"> <xsl:apply-templates select="." mode="index.titlepage.recto.mode"/> +</div> +</xsl:template> + +<xsl:template name="setindex.titlepage.recto"> + <div xsl:use-attribute-sets="setindex.titlepage.recto.style"> +<xsl:call-template name="component.title"> +<xsl:with-param name="node" select="ancestor-or-self::setindex[1]"/> +</xsl:call-template></div> + <xsl:choose> + <xsl:when test="setindexinfo/subtitle"> + <xsl:apply-templates mode="setindex.titlepage.recto.auto.mode" select="setindexinfo/subtitle"/> + </xsl:when> + <xsl:when test="docinfo/subtitle"> + <xsl:apply-templates mode="setindex.titlepage.recto.auto.mode" select="docinfo/subtitle"/> + </xsl:when> + <xsl:when test="subtitle"> + <xsl:apply-templates mode="setindex.titlepage.recto.auto.mode" select="subtitle"/> + </xsl:when> + </xsl:choose> + +</xsl:template> + +<xsl:template name="setindex.titlepage.verso"> +</xsl:template> + +<xsl:template name="setindex.titlepage.separator"> +</xsl:template> + +<xsl:template name="setindex.titlepage.before.recto"> +</xsl:template> + +<xsl:template name="setindex.titlepage.before.verso"> +</xsl:template> + +<xsl:template name="setindex.titlepage"> + <div class="titlepage"> + <div> + <xsl:call-template name="setindex.titlepage.before.recto"/> + <xsl:call-template name="setindex.titlepage.recto"/> + </div> + <div> + <xsl:call-template name="setindex.titlepage.before.verso"/> + <xsl:call-template name="setindex.titlepage.verso"/> + </div> + <xsl:call-template name="setindex.titlepage.separator"/> + </div> +</xsl:template> + +<xsl:template match="*" mode="setindex.titlepage.recto.mode"> + <!-- if an element isn't found in this mode, --> + <!-- try the generic titlepage.mode --> + <xsl:apply-templates select="." mode="titlepage.mode"/> +</xsl:template> + +<xsl:template match="*" mode="setindex.titlepage.verso.mode"> + <!-- if an element isn't found in this mode, --> + <!-- try the generic titlepage.mode --> + <xsl:apply-templates select="." mode="titlepage.mode"/> +</xsl:template> + +<xsl:template match="subtitle" mode="setindex.titlepage.recto.auto.mode"> +<div xsl:use-attribute-sets="setindex.titlepage.recto.style"> +<xsl:apply-templates select="." mode="setindex.titlepage.recto.mode"/> </div> </xsl:template> Index: phpdoc/xsl/docbook/html/titlepage.xsl diff -u phpdoc/xsl/docbook/html/titlepage.xsl:1.1 phpdoc/xsl/docbook/html/titlepage.xsl:1.2 --- phpdoc/xsl/docbook/html/titlepage.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/titlepage.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: titlepage.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: titlepage.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -56,6 +56,9 @@ <xsl:attribute-set name="index.titlepage.recto.style"/> <xsl:attribute-set name="index.titlepage.verso.style"/> +<xsl:attribute-set name="setindex.titlepage.recto.style"/> +<xsl:attribute-set name="setindex.titlepage.verso.style"/> + <xsl:attribute-set name="section.titlepage.recto.style"/> <xsl:attribute-set name="section.titlepage.verso.style"/> @@ -149,19 +152,25 @@ and $use.extensions != '0' and $linenumbering.extension != '0'"> <div class="{name(.)}"> - <p> - <xsl:call-template name="number.rtf.lines"> - <xsl:with-param name="rtf" select="$rtf"/> - </xsl:call-template> - </p> + <xsl:call-template name="paragraph"> + <xsl:with-param name="content"> + <xsl:call-template name="number.rtf.lines"> + <xsl:with-param name="rtf" select="$rtf"/> + </xsl:call-template> + </xsl:with-param> + </xsl:call-template> </div> </xsl:when> <xsl:otherwise> <div class="{name(.)}"> - <p> - <xsl:apply-templates mode="titlepage.mode"/> - </p> + <xsl:call-template name="paragraph"> + <xsl:with-param name="content"> + <xsl:call-template name="make-verbatim"> + <xsl:with-param name="rtf" select="$rtf"/> + </xsl:call-template> + </xsl:with-param> + </xsl:call-template> </div> </xsl:otherwise> </xsl:choose> @@ -429,7 +438,7 @@ <xsl:template match="keywordset" mode="titlepage.mode"> </xsl:template> -<xsl:template match="legalnotice " mode="titlepage.mode"> +<xsl:template match="legalnotice" mode="titlepage.mode"> <xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable> <xsl:choose> <xsl:when test="$generate.legalnotice.link != 0"> @@ -444,7 +453,7 @@ <xsl:apply-templates select="." mode="title.markup"/> </xsl:variable> - <a href="{$filename}"> + <a href="{concat('ln-',$id,$html.ext)}"> <xsl:copy-of select="$title"/> </a> @@ -454,7 +463,9 @@ <xsl:with-param name="content"> <html> <head> - <title><xsl:value-of select="$title"/></title> + <xsl:call-template name="system.head.content"/> + <xsl:call-template name="head.content"/> + <xsl:call-template name="user.head.content"/> </head> <body> <xsl:call-template name="body.attributes"/> @@ -507,17 +518,25 @@ <xsl:choose> <xsl:when test="contrib"> <xsl:if test="not(preceding-sibling::othercredit[string(contrib)=$contrib])"> - <p class="{name(.)}"> - <xsl:apply-templates mode="titlepage.mode" select="contrib"/> - <xsl:text>: </xsl:text> - <xsl:call-template name="person.name"/> - <xsl:apply-templates mode="titlepage.mode" select="./affiliation"/> - <xsl:apply-templates select="following-sibling::othercredit[string(contrib)=$contrib]" mode="titlepage.othercredits"/> - </p> + <xsl:call-template name="paragraph"> + <xsl:with-param name="class" select="name(.)"/> + <xsl:with-param name="content"> + <xsl:apply-templates mode="titlepage.mode" select="contrib"/> + <xsl:text>: </xsl:text> + <xsl:call-template name="person.name"/> + <xsl:apply-templates mode="titlepage.mode" select="./affiliation"/> + <xsl:apply-templates select="following-sibling::othercredit[string(contrib)=$contrib]" mode="titlepage.othercredits"/> + </xsl:with-param> + </xsl:call-template> </xsl:if> </xsl:when> <xsl:otherwise> - <p class="{name(.)}"><xsl:call-template name="person.name"/></p> + <xsl:call-template name="paragraph"> + <xsl:with-param name="class" select="name(.)"/> + <xsl:with-param name="content"> + <xsl:call-template name="person.name"/> + </xsl:with-param> + </xsl:call-template> <xsl:apply-templates mode="titlepage.mode" select="./affiliation"/> </xsl:otherwise> </xsl:choose> @@ -563,15 +582,21 @@ </xsl:template> <xsl:template match="pubdate" mode="titlepage.mode"> - <p class="{name(.)}"> - <xsl:apply-templates mode="titlepage.mode"/> - </p> + <xsl:call-template name="paragraph"> + <xsl:with-param name="class" select="name(.)"/> + <xsl:with-param name="content"> + <xsl:apply-templates mode="titlepage.mode"/> + </xsl:with-param> + </xsl:call-template> </xsl:template> <xsl:template match="publisher" mode="titlepage.mode"> - <p class="{name(.)}"> - <xsl:apply-templates mode="titlepage.mode"/> - </p> + <xsl:call-template name="paragraph"> + <xsl:with-param name="class" select="name(.)"/> + <xsl:with-param name="content"> + <xsl:apply-templates mode="titlepage.mode"/> + </xsl:with-param> + </xsl:call-template> </xsl:template> <xsl:template match="publishername" mode="titlepage.mode"> @@ -589,9 +614,12 @@ </xsl:template> <xsl:template match="releaseinfo" mode="titlepage.mode"> - <p class="{name(.)}"> - <xsl:apply-templates mode="titlepage.mode"/> - </p> + <xsl:call-template name="paragraph"> + <xsl:with-param name="class" select="name(.)"/> + <xsl:with-param name="content"> + <xsl:apply-templates mode="titlepage.mode"/> + </xsl:with-param> + </xsl:call-template> </xsl:template> <xsl:template match="revhistory" mode="titlepage.mode"> Index: phpdoc/xsl/docbook/html/toc.xsl diff -u phpdoc/xsl/docbook/html/toc.xsl:1.1 phpdoc/xsl/docbook/html/toc.xsl:1.2 --- phpdoc/xsl/docbook/html/toc.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/toc.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: toc.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: toc.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. Index: phpdoc/xsl/docbook/html/verbatim.xsl diff -u phpdoc/xsl/docbook/html/verbatim.xsl:1.1 phpdoc/xsl/docbook/html/verbatim.xsl:1.2 --- phpdoc/xsl/docbook/html/verbatim.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/verbatim.xsl Sun Mar 9 09:56:38 2003 @@ -3,11 +3,12 @@ xmlns:sverb="http://nwalsh.com/xslt/ext/com.nwalsh.saxon.Verbatim" xmlns:xverb="com.nwalsh.xalan.Verbatim" xmlns:lxslt="http://xml.apache.org/xslt" - exclude-result-prefixes="sverb xverb lxslt" + xmlns:exsl="http://exslt.org/common" + exclude-result-prefixes="sverb xverb lxslt exsl" version='1.0'> <!-- ******************************************************************** - $Id: verbatim.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: verbatim.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -91,11 +92,7 @@ <div class="{name(.)}"> <p> <xsl:call-template name="number.rtf.lines"> - <xsl:with-param name="rtf"> - <xsl:call-template name="make-verbatim"> - <xsl:with-param name="text" select="translate($rtf,' ',' ')"/> - </xsl:call-template> - </xsl:with-param> + <xsl:with-param name="rtf" select="$rtf"/> </xsl:call-template> </p> </div> @@ -114,7 +111,7 @@ <div class="{name(.)}"> <p> <xsl:call-template name="make-verbatim"> - <xsl:with-param name="text" select="translate($rtf,' ',' ')"/> + <xsl:with-param name="rtf" select="$rtf"/> </xsl:call-template> </p> </div> @@ -140,13 +137,6 @@ </xsl:choose> </xsl:template> -<xsl:template match="literallayout[not(@class) - or @class != 'monospaced']//text()"> - <xsl:call-template name="make-verbatim"> - <xsl:with-param name="text" select="translate(.,' ',' ')"/> - </xsl:call-template> -</xsl:template> - <xsl:template match="address"> <xsl:param name="suppress-numbers" select="'0'"/> @@ -171,7 +161,9 @@ <xsl:otherwise> <div class="{name(.)}"> <p> - <xsl:apply-templates/> + <xsl:call-template name="make-verbatim"> + <xsl:with-param name="rtf" select="$rtf"/> + </xsl:call-template> </p> </div> </xsl:otherwise> @@ -266,47 +258,21 @@ </xsl:choose> </xsl:template> -<xsl:template match="address//text()"> - <xsl:call-template name="make-verbatim"> - <xsl:with-param name="text" select="translate(.,' ',' ')"/> - </xsl:call-template> -</xsl:template> - <xsl:template name="make-verbatim"> - <xsl:param name="text" select="''"/> - - <xsl:call-template name="make-verbatim-recursive"> - <xsl:with-param name="text" select="translate($text, ' ', ' ')"/> - </xsl:call-template> -</xsl:template> + <xsl:param name="rtf"/> -<xsl:template name="make-verbatim-recursive"> - <xsl:param name="text" select="''"/> + <!-- I want to make this RTF verbatim. There are two possibilities: either + I have access to the exsl:node-set extension function and I can "do it right" + or I have to rely on CSS. --> <xsl:choose> - <xsl:when test="not(contains($text, '
'))"> - <xsl:value-of select="$text"/> + <xsl:when test="function-available('exsl:node-set')"> + <xsl:apply-templates select="exsl:node-set($rtf)" mode="make.verbatim.mode"/> </xsl:when> - <xsl:otherwise> - <xsl:variable name="len" select="string-length($text)"/> - - <xsl:choose> - <xsl:when test="$len = 1"> - <br/><xsl:text>
</xsl:text> - </xsl:when> - - <xsl:otherwise> - <xsl:variable name="half" select="$len div 2"/> - <xsl:call-template name="make-verbatim-recursive"> - <xsl:with-param name="text" select="substring($text, 1, $half)"/> - </xsl:call-template> - <xsl:call-template name="make-verbatim-recursive"> - <xsl:with-param name="text" - select="substring($text, ($half + 1), $len)"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> + <span style="white-space: pre;"> + <xsl:copy-of select="$rtf"/> + </span> </xsl:otherwise> </xsl:choose> </xsl:template> Index: phpdoc/xsl/docbook/html/xref.xsl diff -u phpdoc/xsl/docbook/html/xref.xsl:1.1 phpdoc/xsl/docbook/html/xref.xsl:1.2 --- phpdoc/xsl/docbook/html/xref.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/xref.xsl Sun Mar 9 09:56:38 2003 @@ -1,11 +1,12 @@ <?xml version='1.0'?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" - exclude-result-prefixes="doc" + xmlns:suwl="http://nwalsh.com/xslt/ext/com.nwalsh.saxon.UnwrapLinks" + xmlns:exsl="http://exslt.org/common" + exclude-result-prefixes="suwl exsl" version='1.0'> <!-- ******************************************************************** - $Id: xref.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: xref.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -16,6 +17,11 @@ <!-- ==================================================================== --> +<!-- Create keys for quickly looking up olink targets --> +<xsl:key name="targetdoc-key" match="document" use="@targetdoc" /> +<xsl:key name="targetptr-key" match="div|obj" + use="concat(ancestor::document/@targetdoc, '/', @targetptr)" /> + <xsl:template match="anchor"> <xsl:call-template name="anchor"/> </xsl:template> @@ -42,6 +48,34 @@ <xsl:text>???</xsl:text> </xsl:when> + <xsl:when test="@endterm"> + <xsl:variable name="href"> + <xsl:call-template name="href.target"> + <xsl:with-param name="object" select="$target"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="etargets" select="key('id',@endterm)"/> + <xsl:variable name="etarget" select="$etargets[1]"/> + <xsl:choose> + <xsl:when test="count($etarget) = 0"> + <xsl:message> + <xsl:value-of select="count($etargets)"/> + <xsl:text>Endterm points to nonexistent ID: </xsl:text> + <xsl:value-of select="@endterm"/> + </xsl:message> + <a href="{$href}"> + <xsl:text>???</xsl:text> + </a> + </xsl:when> + <xsl:otherwise> + <a href="{$href}"> + <xsl:apply-templates select="$etarget" mode="endterm"/> + </a> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:when test="$target/@xreflabel"> <a> <xsl:attribute name="href"> @@ -62,51 +96,98 @@ </xsl:call-template> </xsl:variable> - <xsl:choose> - <xsl:when test="@endterm"> - <xsl:variable name="etargets" select="key('id',@endterm)"/> - <xsl:variable name="etarget" select="$etargets[1]"/> - <xsl:choose> - <xsl:when test="count($etarget) = 0"> - <xsl:message> - <xsl:value-of select="count($etargets)"/> - <xsl:text>Endterm points to nonexistent ID: </xsl:text> - <xsl:value-of select="@endterm"/> - </xsl:message> - <a href="{$href}"> - <xsl:text>???</xsl:text> - </a> - </xsl:when> - <xsl:otherwise> - <a href="{$href}"> - <xsl:apply-templates select="$etarget" mode="endterm"/> - </a> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - - <xsl:otherwise> - <xsl:apply-templates select="$target" mode="xref-to-prefix"/> + <xsl:apply-templates select="$target" mode="xref-to-prefix"/> - <a href="{$href}"> - <xsl:if test="$target/title or $target/*/title"> - <xsl:attribute name="title"> - <xsl:apply-templates select="$target" mode="xref-title"/> - </xsl:attribute> - </xsl:if> - <xsl:apply-templates select="$target" mode="xref-to"/> - </a> + <a href="{$href}"> + <xsl:if test="$target/title or $target/*/title"> + <xsl:attribute name="title"> + <xsl:apply-templates select="$target" mode="xref-title"/> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates select="$target" mode="xref-to"> + <xsl:with-param name="referrer" select="."/> + <xsl:with-param name="xrefstyle"> + <xsl:choose> + <xsl:when test="@role and not(@xrefstyle) and $use.role.as.xrefstyle != 0"> + <xsl:value-of select="@role"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="@xrefstyle"/> + </xsl:otherwise> + </xsl:choose> + </xsl:with-param> + </xsl:apply-templates> + </a> - <xsl:apply-templates select="$target" mode="xref-to-suffix"/> - </xsl:otherwise> - </xsl:choose> + <xsl:apply-templates select="$target" mode="xref-to-suffix"/> </xsl:otherwise> </xsl:choose> </xsl:template> +<!-- ==================================================================== --> + <xsl:template match="*" mode="endterm"> <!-- Process the children of the endterm element --> - <xsl:apply-templates select="child::node()"/> + <xsl:variable name="endterm"> + <xsl:apply-templates select="child::node()"/> + </xsl:variable> + + <xsl:choose> + <xsl:when test="function-available('exsl:node-set')"> + <xsl:apply-templates select="exsl:node-set($endterm)" mode="remove-ids"/> + </xsl:when> + <xsl:otherwise> + <xsl:copy-of select="$endterm"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="*" mode="remove-ids"> + <xsl:choose> + <!-- handle html or xhtml --> + <xsl:when test="local-name(.) = 'a' + and (namespace-uri(.) = '' + or namespace-uri(.) = 'http://www.w3.org/1999/xhtml')"> + <xsl:choose> + <xsl:when test="(@name and count(@*) = 1) + or (@id and count(@*) = 1) + or (@id and @name and count(@*) = 2)"> + <xsl:message>suppress anchor</xsl:message> + <!-- suppress the whole thing --> + </xsl:when> + <xsl:otherwise> + <xsl:copy> + <xsl:for-each select="@*"> + <xsl:choose> + <xsl:when test="name(.) != 'name' and name(.) != 'id'"> + <xsl:copy/> + </xsl:when> + <xsl:otherwise> + <xsl:message>removing <xsl:value-of select="name(.)"/></xsl:message> + </xsl:otherwise> + </xsl:choose> + </xsl:for-each> + </xsl:copy> + <xsl:apply-templates mode="remove-ids"/> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:otherwise> + <xsl:copy> + <xsl:for-each select="@*"> + <xsl:choose> + <xsl:when test="name(.) != 'id'"> + <xsl:copy/> + </xsl:when> + <xsl:otherwise> + <xsl:message>removing <xsl:value-of select="name(.)"/></xsl:message> + </xsl:otherwise> + </xsl:choose> + </xsl:for-each> + <xsl:apply-templates mode="remove-ids"/> + </xsl:copy> + </xsl:otherwise> + </xsl:choose> </xsl:template> <!-- ==================================================================== --> @@ -115,33 +196,45 @@ <xsl:template match="*" mode="xref-to-suffix"/> <xsl:template match="*" mode="xref-to"> - <xsl:param name="target" select="."/> - <xsl:param name="refelem" select="local-name($target)"/> - - <xsl:message> - <xsl:text>Don't know what gentext to create for xref to: "</xsl:text> - <xsl:value-of select="$refelem"/> - <xsl:text>", ("</xsl:text> - <xsl:value-of select="@id"/> - <xsl:text>")</xsl:text> - </xsl:message> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + <xsl:param name="verbose" select="1"/> + + <xsl:if test="$verbose"> + <xsl:message> + <xsl:text>Don't know what gentext to create for xref to: "</xsl:text> + <xsl:value-of select="name(.)"/> + <xsl:text>", ("</xsl:text> + <xsl:value-of select="@id"/> + <xsl:text>")</xsl:text> + </xsl:message> + </xsl:if> <xsl:text>???</xsl:text> </xsl:template> <xsl:template match="title" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + <!-- if you xref to a title, xref to the parent... --> <xsl:choose> <!-- FIXME: how reliable is this? --> <xsl:when test="contains(local-name(parent::*), 'info')"> - <xsl:apply-templates select="parent::*[2]" mode="xref-to"/> + <xsl:apply-templates select="parent::*[2]" mode="xref-to"> + <xsl:with-param name="referrer" select="$referrer"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + </xsl:apply-templates> </xsl:when> <xsl:otherwise> - <xsl:apply-templates select="parent::*" mode="xref-to"/> + <xsl:apply-templates select="parent::*" mode="xref-to"> + <xsl:with-param name="referrer" select="$referrer"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + </xsl:apply-templates> </xsl:otherwise> </xsl:choose> </xsl:template> -<xsl:template match="abstract|article|authorblurb|bibliodiv|bibliomset +<xsl:template match="abstract|authorblurb|bibliodiv|bibliomset |biblioset|blockquote|calloutlist|caution|colophon |constraintdef|formalpara|glossdiv|important|indexdiv |itemizedlist|legalnotice|lot|msg|msgexplan|msgmain @@ -149,36 +242,51 @@ |productionset|qandadiv|refsynopsisdiv|segmentedlist |set|setindex|sidebar|tip|toc|variablelist|warning" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + <!-- catch-all for things with (possibly optional) titles --> - <xsl:apply-templates select="." mode="object.xref.markup"/> + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> </xsl:template> <xsl:template match="author|editor|othercredit|personname" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + <xsl:call-template name="person.name"/> </xsl:template> <xsl:template match="authorgroup" mode="xref-to"> - <xsl:call-template name="person.name.list"/> -</xsl:template> - -<xsl:template match="figure" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> -</xsl:template> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> -<xsl:template match="example" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> -</xsl:template> - -<xsl:template match="table" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> + <xsl:call-template name="person.name.list"/> </xsl:template> -<xsl:template match="equation" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> +<xsl:template match="figure|example|table|equation" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> </xsl:template> <xsl:template match="procedure" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> </xsl:template> <xsl:template match="cmdsynopsis" mode="xref-to"> @@ -189,28 +297,26 @@ <xsl:apply-templates select="(.//function)[1]" mode="xref"/> </xsl:template> -<xsl:template match="dedication" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> -</xsl:template> - -<xsl:template match="preface" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> -</xsl:template> - -<xsl:template match="article" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> -</xsl:template> - -<xsl:template match="chapter" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> -</xsl:template> - -<xsl:template match="appendix" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> +<xsl:template match="dedication|preface|chapter|appendix|article" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> </xsl:template> <xsl:template match="bibliography" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> </xsl:template> <xsl:template match="biblioentry|bibliomixed" mode="xref-to-prefix"> @@ -222,6 +328,9 @@ </xsl:template> <xsl:template match="biblioentry|bibliomixed" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + <!-- handles both biblioentry and bibliomixed --> <xsl:choose> <xsl:when test="string(.) = ''"> @@ -231,6 +340,10 @@ <xsl:choose> <xsl:when test="$entry"> <xsl:choose> + <xsl:when test="$bibliography.numbered != 0"> + <xsl:number from="bibliography" count="biblioentry|bibliomixed" + level="any" format="1"/> + </xsl:when> <xsl:when test="local-name($entry/*[1]) = 'abbrev'"> <xsl:apply-templates select="$entry/*[1]"/> </xsl:when> @@ -252,6 +365,10 @@ </xsl:when> <xsl:otherwise> <xsl:choose> + <xsl:when test="$bibliography.numbered != 0"> + <xsl:number from="bibliography" count="biblioentry|bibliomixed" + level="any" format="1"/> + </xsl:when> <xsl:when test="local-name(*[1]) = 'abbrev'"> <xsl:apply-templates select="*[1]"/> </xsl:when> @@ -264,58 +381,145 @@ </xsl:template> <xsl:template match="glossary" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="glossentry" mode="xref-to"> + <xsl:choose> + <xsl:when test="$glossentry.show.acronym = 'primary'"> + <xsl:choose> + <xsl:when test="acronym|abbrev"> + <xsl:apply-templates select="(acronym|abbrev)[1]"/> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="glossterm[1]" mode="xref-to"/> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="glossterm[1]" mode="xref-to"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="glossterm" mode="xref-to"> + <xsl:apply-templates/> </xsl:template> <xsl:template match="index" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> </xsl:template> <xsl:template match="listitem" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> </xsl:template> <xsl:template match="section|simplesect |sect1|sect2|sect3|sect4|sect5 |refsect1|refsect2|refsect3" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> - <!-- What about "in Chapter X"? --> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> + <!-- FIXME: What about "in Chapter X"? --> </xsl:template> <xsl:template match="bridgehead" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> - <!-- What about "in Chapter X"? --> -</xsl:template> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> -<xsl:template match="qandaset" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> + <!-- FIXME: What about "in Chapter X"? --> </xsl:template> -<xsl:template match="qandadiv" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> -</xsl:template> +<xsl:template match="qandaset" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> -<xsl:template match="qandaentry" mode="xref-to"> - <xsl:apply-templates select="question[1]" mode="object.xref.markup"/> + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> </xsl:template> -<xsl:template match="question" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> -</xsl:template> +<xsl:template match="qandadiv" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> -<xsl:template match="answer" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> </xsl:template> -<xsl:template match="part" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> -</xsl:template> +<xsl:template match="qandaentry" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> -<xsl:template match="reference" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> + <xsl:apply-templates select="question[1]" mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="question|answer" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="part|reference" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> </xsl:template> <xsl:template match="refentry" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + <xsl:choose> <xsl:when test="refmeta/refentrytitle"> <xsl:apply-templates select="refmeta/refentrytitle"/> @@ -328,14 +532,26 @@ </xsl:template> <xsl:template match="refnamediv" mode="xref-to"> - <xsl:apply-templates select="refname[1]" mode="xref-to"/> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="refname[1]" mode="xref-to"> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> </xsl:template> <xsl:template match="refname" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + <xsl:apply-templates mode="xref-to"/> </xsl:template> <xsl:template match="step" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + <xsl:call-template name="gentext"> <xsl:with-param name="key" select="'Step'"/> </xsl:call-template> @@ -344,20 +560,77 @@ </xsl:template> <xsl:template match="varlistentry" mode="xref-to"> - <xsl:apply-templates select="term[1]" mode="xref-to"/> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="term[1]" mode="xref-to"> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> </xsl:template> <xsl:template match="varlistentry/term" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + <!-- to avoid the comma that will be generated if there are several terms --> <xsl:apply-templates/> </xsl:template> <xsl:template match="co" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + <xsl:apply-templates select="." mode="callout-bug"/> </xsl:template> <xsl:template match="book" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="para" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:variable name="context" select="(ancestor::simplesect + |ancestor::section + |ancestor::sect1 + |ancestor::sect2 + |ancestor::sect3 + |ancestor::sect4 + |ancestor::sect5 + |ancestor::refsection + |ancestor::refsect1 + |ancestor::refsect2 + |ancestor::refsect3 + |ancestor::chapter + |ancestor::appendix + |ancestor::preface + |ancestor::partintro + |ancestor::dedication + |ancestor::colophon + |ancestor::bibliography + |ancestor::index + |ancestor::glossary + |ancestor::glossentry + |ancestor::listitem + |ancestor::varlistentry)[last()]"/> + + <xsl:apply-templates select="$context" mode="xref-to"/> +<!-- + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> +--> </xsl:template> <!-- ==================================================================== --> @@ -513,7 +786,7 @@ </xsl:otherwise> </xsl:choose> </xsl:when> - + <xsl:otherwise> <xsl:message> <xsl:text>Link element has no content and no Endterm. </xsl:text> @@ -529,31 +802,46 @@ </xsl:template> <xsl:template match="ulink" name="ulink"> - <a> - <xsl:if test="@id"> - <xsl:attribute name="name"> - <xsl:value-of select="@id"/> - </xsl:attribute> - </xsl:if> - <xsl:attribute name="href"><xsl:value-of select="@url"/></xsl:attribute> - <xsl:if test="$ulink.target != ''"> - <xsl:attribute name="target"> - <xsl:value-of select="$ulink.target"/> - </xsl:attribute> - </xsl:if> - <xsl:choose> - <xsl:when test="count(child::node())=0"> - <xsl:value-of select="@url"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates/> - </xsl:otherwise> - </xsl:choose> - </a> + <xsl:variable name="link"> + <a> + <xsl:if test="@id"> + <xsl:attribute name="name"> + <xsl:value-of select="@id"/> + </xsl:attribute> + </xsl:if> + <xsl:attribute name="href"><xsl:value-of select="@url"/></xsl:attribute> + <xsl:if test="$ulink.target != ''"> + <xsl:attribute name="target"> + <xsl:value-of select="$ulink.target"/> + </xsl:attribute> + </xsl:if> + <xsl:choose> + <xsl:when test="count(child::node())=0"> + <xsl:value-of select="@url"/> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates/> + </xsl:otherwise> + </xsl:choose> + </a> + </xsl:variable> + + <xsl:choose> + <xsl:when test="function-available('suwl:unwrapLinks')"> + <xsl:copy-of select="suwl:unwrapLinks($link)"/> + </xsl:when> + <xsl:otherwise> + <xsl:copy-of select="$link"/> + </xsl:otherwise> + </xsl:choose> </xsl:template> <xsl:template match="olink" name="olink"> + <xsl:param name="target.database" + select="document($target.database.document, /)"/> + <xsl:call-template name="anchor"/> + <xsl:variable name="localinfo" select="@localinfo"/> <xsl:variable name="href"> @@ -579,6 +867,138 @@ <xsl:with-param name="return" select="'href'"/> </xsl:call-template> </xsl:when> + <!-- Olinks resolved by stylesheet and target database --> + <xsl:when test="@targetdoc and not(@targetptr)" > + <xsl:message>Olink missing @targetptr attribute value</xsl:message> + </xsl:when> + <xsl:when test="not(@targetdoc) and @targetptr" > + <xsl:message>Olink missing @targetdoc attribute value</xsl:message> + </xsl:when> + <xsl:when test="@targetdoc and @targetptr"> + <xsl:variable name="seek.targetdoc" select="@targetdoc"/> + <xsl:variable name="seek.targetptr" select="@targetptr"/> + <xsl:variable name="targetdoc.key" > + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetdoc-key', $seek.targetdoc)/@targetdoc" /> + </xsl:for-each> + </xsl:variable> + <xsl:variable name="targetptr.key" > + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetptr-key', concat($seek.targetdoc, '/', $seek.targetptr))/@targetptr" /> + </xsl:for-each> + </xsl:variable> +<!-- debug +<xsl:message>seek.targetdoc is <xsl:value-of select="$seek.targetdoc"/></xsl:message> +<xsl:message>seek.targetptr is <xsl:value-of select="$seek.targetptr"/></xsl:message> +--> + <xsl:choose> + <!-- Was the database document parameter not set? --> + <xsl:when test="$target.database.document = ''"> + <xsl:message> + <xsl:text>Olinks not processed: must specify a $target.database.document parameter + </xsl:text> + <xsl:text>when using olinks with targetdoc and targetptr attributes.</xsl:text> + </xsl:message> + </xsl:when> + <!-- Did it not open? Should be a targetset element --> + <xsl:when test="not($target.database/targetset)"> + <xsl:message>Olink error: could not open target database <xsl:value-of select="$target.database.document"/>. </xsl:message> + </xsl:when> + <!-- Does it not have this document id? --> + <xsl:when test="$targetdoc.key = ''" > + <xsl:message>Olink error: document id <xsl:value-of select="$seek.targetdoc"/> not in target database.</xsl:message> + </xsl:when> + + <!-- Does this document not have this targetptr? --> + <xsl:when test="$targetptr.key = ''" > + <!-- Does this document have *any* content? --> + <xsl:variable name="document.root"> + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetdoc-key', $seek.targetdoc)/div/@element"/> + </xsl:for-each> + </xsl:variable> + <xsl:choose> + <xsl:when test="$document.root = ''"> + <xsl:message>Olink error: could not open data file for document id '<xsl:value-of select="$seek.targetdoc"/>'.</xsl:message> + </xsl:when> + <xsl:otherwise> + <xsl:message>Olink error: targetptr <xsl:value-of select="$seek.targetptr"/> not found in document id <xsl:value-of select="$seek.targetdoc"/>.</xsl:message> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + + <!-- Proceed with good olink syntax --> + <xsl:otherwise> + + <!-- Does the target database use a sitemap? --> + <xsl:variable name="use.sitemap"> + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetdoc-key', $seek.targetdoc)/parent::dir/@name"/> + </xsl:for-each> + </xsl:variable> + <xsl:variable name="target.href" > + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetptr-key', concat($seek.targetdoc, '/', $seek.targetptr))/@href" /> + + </xsl:for-each> + </xsl:variable> + + <!-- Get the baseuri for this targetptr --> + + <xsl:variable name="baseuri" > + <xsl:choose> + <!-- Does the database use a sitemap? --> + <xsl:when test="$use.sitemap != ''" > + <xsl:choose> + <!-- Was current.docid parameter set? --> + <xsl:when test="$current.docid != ''"> + <xsl:for-each select="$target.database" > + <xsl:call-template name="targetpath" > + <xsl:with-param name="dirnode" select="key('targetdoc-key', $current.docid)/parent::dir"/> + <xsl:with-param name="targetdoc" select="$seek.targetdoc"/> + </xsl:call-template> + </xsl:for-each > + </xsl:when> + <xsl:otherwise> + <xsl:message>Olink warning: cannot compute relative sitemap path without $current.docid parameter</xsl:message> + </xsl:otherwise> + </xsl:choose> + <!-- In either case, add baseuri from its document entry--> + <xsl:variable name="docbaseuri"> + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetdoc-key', $seek.targetdoc)/@baseuri" /> + </xsl:for-each> + </xsl:variable> + <xsl:if test="$docbaseuri != ''" > + <xsl:value-of select="$docbaseuri"/> + </xsl:if> + </xsl:when> + <!-- No database sitemap in use --> + <xsl:otherwise> + <!-- Just use any baseuri from its document entry --> + <xsl:variable name="docbaseuri"> + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetdoc-key', $seek.targetdoc)/@baseuri" /> + </xsl:for-each> + </xsl:variable> + <xsl:if test="$docbaseuri != ''" > + <xsl:value-of select="$docbaseuri"/> + </xsl:if> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <!-- Form the href information --> + <xsl:if test="$baseuri != ''"> + <xsl:value-of select="$baseuri"/> + <xsl:if test="substring($target.href,1,1) != '#'"> + <!--xsl:text>/</xsl:text--> + </xsl:if> + </xsl:if> + <xsl:value-of select="$target.href"/> + </xsl:otherwise> + </xsl:choose> + </xsl:when> <xsl:otherwise> <xsl:value-of select="$olink.resolver"/> <xsl:text>?</xsl:text> @@ -594,21 +1014,20 @@ </xsl:choose> </xsl:variable> - <a href="{$href}"> - <xsl:choose> - <xsl:when test="count(node()) > 0"> - <xsl:apply-templates/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="olink.outline"> - <xsl:with-param name="outline.base.uri" - select="unparsed-entity-uri(@targetdocent)"/> - <xsl:with-param name="localinfo" select="@localinfo"/> - <xsl:with-param name="return" select="'xref'"/> + <xsl:choose> + <xsl:when test="$href != ''"> + <a href="{$href}"> + <xsl:call-template name="olink.hottext"> + <xsl:with-param name="target.database" select="$target.database"/> </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </a> + </a> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="olink.hottext"> + <xsl:with-param name="target.database" select="$target.database"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> </xsl:template> <xsl:template name="olink.outline"> @@ -659,6 +1078,134 @@ </xsl:choose> </xsl:template> +<xsl:template name="olink.hottext"> + <xsl:param name="target.database"/> + <xsl:choose> + <!-- If it has elements or text (not just PI or comment) --> + <xsl:when test="child::text() or child::*"> + <xsl:apply-templates/> + </xsl:when> + <xsl:when test="@targetdoc and @targetptr"> + <!-- Get the xref text for this record --> + <xsl:variable name="seek.targetdoc" select="@targetdoc"/> + <xsl:variable name="seek.targetptr" select="@targetptr"/> + <xsl:variable name="xref.text" > + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetptr-key', concat($seek.targetdoc, '/', $seek.targetptr))/xreftext" /> + + </xsl:for-each> + </xsl:variable> + + + <xsl:choose> + <xsl:when test="$use.local.olink.style != 0"> + <!-- Get the element name and lang for this targetptr --> + <xsl:variable name="element" > + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetptr-key', concat($seek.targetdoc, '/', $seek.targetptr))/@element" /> + </xsl:for-each> + </xsl:variable> + + <xsl:variable name="lang"> + <xsl:variable name="candidate"> + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetptr-key', concat($seek.targetdoc, '/', $seek.targetptr))/@lang" /> + </xsl:for-each> + </xsl:variable> + <xsl:choose> + <xsl:when test="$candidate != ''"> + <xsl:value-of select="$candidate"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="'en'"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + <xsl:variable name="template"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'title'"/> + <xsl:with-param name="name" select="$element"/> + <xsl:with-param name="lang" select="$lang"/> + </xsl:call-template> + </xsl:variable> + <xsl:call-template name="substitute-markup"> + <xsl:with-param name="template" select="$template"/> + <xsl:with-param name="title"> + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetptr-key', concat($seek.targetdoc, '/', $seek.targetptr))/ttl" /> + </xsl:for-each> + </xsl:with-param> + <xsl:with-param name="label"> + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetptr-key', concat($seek.targetdoc, '/', $seek.targetptr))/@number" /> + </xsl:for-each> + </xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:when test="$xref.text !=''"> + <xsl:value-of select="$xref.text"/> + </xsl:when> + <xsl:otherwise> + <xsl:message>Olink error: no generated text for targetdoc/targetptr = <xsl:value-of select="@targetdoc"/>/<xsl:value-of select="@targetptr"/></xsl:message> + <xsl:text>????</xsl:text> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="olink.outline"> + <xsl:with-param name="outline.base.uri" + select="unparsed-entity-uri(@targetdocent)"/> + <xsl:with-param name="localinfo" select="@localinfo"/> + <xsl:with-param name="return" select="'xreftext'"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="targetpath"> + <xsl:param name="dirnode" /> + <xsl:param name="targetdoc" select="''"/> + +<!-- +<xsl:message>dirnode is <xsl:value-of select="$dirnode/@name"/></xsl:message> +<xsl:message>targetdoc is <xsl:value-of select="$targetdoc"/></xsl:message> +--> + <!-- recursive template generates path to olink target directory --> + <xsl:choose> + <!-- Have we arrived at the final path step? --> + <xsl:when test="$dirnode/child::document[@targetdoc = $targetdoc]"> + <!-- We are done --> + </xsl:when> + <!-- Have we reached the top without a match? --> + <xsl:when test="name($dirnode) != 'dir'" > + <xsl:message>Olink error: cannot locate targetdoc <xsl:value-of select="$targetdoc"/> in sitemap</xsl:message> + </xsl:when> + <!-- Is the target in a descendant? --> + <xsl:when test="$dirnode/descendant::document/@targetdoc = $targetdoc"> + <xsl:variable name="step" select="$dirnode/child::dir[descendant::document/@targetdoc = $targetdoc]"/> + <xsl:if test = "$step"> + <xsl:value-of select="$step/@name"/> + <xsl:text>/</xsl:text> + </xsl:if> + <!-- Now recurse with the child --> + <xsl:call-template name="targetpath" > + <xsl:with-param name="dirnode" select="$step"/> + <xsl:with-param name="targetdoc" select="$targetdoc"/> + </xsl:call-template> + </xsl:when> + <!-- Otherwise we need to move up a step --> + <xsl:otherwise> + <xsl:if test="$dirnode/parent::dir"> + <xsl:text>../</xsl:text> + </xsl:if> + <xsl:call-template name="targetpath" > + <xsl:with-param name="dirnode" select="$dirnode/parent::*"/> + <xsl:with-param name="targetdoc" select="$targetdoc"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + <!-- ==================================================================== --> <xsl:template name="xref.xreflabel"> @@ -687,6 +1234,73 @@ <xsl:message> <xsl:text>Page numbers make no sense in HTML! (Don't use %p in templates)</xsl:text> </xsl:message> +</xsl:template> + +<!-- ==================================================================== --> + +<xsl:template match="*" mode="insert.title.markup"> + <xsl:param name="purpose"/> + <xsl:param name="xrefstyle"/> + <xsl:param name="title"/> + + <xsl:choose> + <!-- FIXME: what about the case where titleabbrev is inside the info? --> + <xsl:when test="$purpose = 'xref' and titleabbrev"> + <xsl:apply-templates select="." mode="titleabbrev.markup"/> + </xsl:when> + <xsl:otherwise> + <xsl:copy-of select="$title"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="chapter|appendix" mode="insert.title.markup"> + <xsl:param name="purpose"/> + <xsl:param name="xrefstyle"/> + <xsl:param name="title"/> + + <xsl:choose> + <xsl:when test="$purpose = 'xref'"> + <i> + <xsl:copy-of select="$title"/> + </i> + </xsl:when> + <xsl:otherwise> + <xsl:copy-of select="$title"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="*" mode="insert.subtitle.markup"> + <xsl:param name="purpose"/> + <xsl:param name="xrefstyle"/> + <xsl:param name="subtitle"/> + + <xsl:copy-of select="$subtitle"/> +</xsl:template> + +<xsl:template match="*" mode="insert.label.markup"> + <xsl:param name="purpose"/> + <xsl:param name="xrefstyle"/> + <xsl:param name="label"/> + + <xsl:copy-of select="$label"/> +</xsl:template> + +<xsl:template match="*" mode="insert.pagenumber.markup"> + <xsl:param name="purpose"/> + <xsl:param name="xrefstyle"/> + <xsl:param name="pagenumber"/> + + <xsl:copy-of select="$pagenumber"/> +</xsl:template> + +<xsl:template match="*" mode="insert.direction.markup"> + <xsl:param name="purpose"/> + <xsl:param name="xrefstyle"/> + <xsl:param name="direction"/> + + <xsl:copy-of select="$direction"/> </xsl:template> </xsl:stylesheet> Index: phpdoc/xsl/docbook/html/chunkfast.xsl +++ phpdoc/xsl/docbook/html/chunkfast.xsl <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:exsl="http://exslt.org/common" version="1.0" exclude-result-prefixes="exsl"> <xsl:import href="chunk.xsl"/> <xsl:param name="chunk.fast" select="1"/> <xsl:variable name="chunks" select="exsl:node-set($chunk.hierarchy)//div"/> <!-- ==================================================================== --> <xsl:template name="process-chunk-element"> <xsl:choose> <xsl:when test="$chunk.fast != 0 and function-available('exsl:node-set')"> <xsl:variable name="genid" select="generate-id()"/> <xsl:variable name="div" select="$chunks[@id=$genid]"/> <xsl:variable name="prevdiv" select="($div/preceding-sibling::div|$div/preceding::div|$div/parent::div)[last()]"/> <xsl:variable name="prev" select="key('genid', $prevdiv/@id)"/> <xsl:variable name="nextdiv" select="($div/following-sibling::div|$div/following::div|$div/div)[1]"/> <xsl:variable name="next" select="key('genid', $nextdiv/@id)"/> <xsl:choose> <xsl:when test="$onechunk != 0 and parent::*"> <xsl:apply-imports/> </xsl:when> <xsl:otherwise> <xsl:call-template name="process-chunk"> <xsl:with-param name="prev" select="$prev"/> <xsl:with-param name="next" select="$next"/> </xsl:call-template> </xsl:otherwise> </xsl:choose> </xsl:when> <xsl:otherwise> <xsl:choose> <xsl:when test="$onechunk != 0 and not(parent::*)"> <xsl:call-template name="chunk-all-sections"/> </xsl:when> <xsl:when test="$onechunk != 0"> <xsl:apply-imports/> </xsl:when> <xsl:when test="$chunk.first.sections = 0"> <xsl:call-template name="chunk-first-section-with-parent"/> </xsl:when> <xsl:otherwise> <xsl:call-template name="chunk-all-sections"/> </xsl:otherwise> </xsl:choose> </xsl:otherwise> </xsl:choose> </xsl:template> </xsl:stylesheet>
Index: phpdoc/xsl/docbook/html/ChangeLog diff -u phpdoc/xsl/docbook/html/ChangeLog:1.1 phpdoc/xsl/docbook/html/ChangeLog:1.2 --- phpdoc/xsl/docbook/html/ChangeLog:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/ChangeLog Sun Mar 9 09:56:38 2003 @@ -1,3 +1,574 @@ +2003-01-22 Norman Walsh <nwalsh@users.sourceforge.net> + + * graphics.xsl: Fix bugs in presentation of graphic width/height + + * inline.xsl: Add class attributes to inline elements + + * xref.xsl: Format chapter and appendix titles consistently in xrefs + +2003-01-20 Norman Walsh <nwalsh@users.sourceforge.net> + + * autoidx.xsl: Bug #663331: add article to section entity + + * biblio.xsl: Bug #640762: Support new biblioentry elements + + * chunk-common.xsl: Bug #648473: don't output the html.ext when using dbhtml filenames + + * footnote.xsl: Support {table.}footnote.number.{format,symbols} + + * glossary.xsl: Support glossentry.show.acronym + + * param.ent, param.xweb: Added {table.}footnote.number.{format,symbols}, entry.propagates.style, and glossentry.show.acronym + + * param.ent, param.xweb: Support xref.with.number.and.title + + * sections.xsl: Don't force a ToC for refentrys + + * table.xsl: Support entry.propagates.style + + * titlepage.templates.xml: SIGNIFICANT changes to the titlepage template setup. See RELEASE-NOTES. + + * xref.xsl: Handle xref to glossentry + +2003-01-17 Norman Walsh <nwalsh@users.sourceforge.net> + + * lists.xsl: Output ul list type only if css.decoration is non-zero + + * xref.xsl: Remove duplicated IDs when endterm is used on xref + +2003-01-12 Norman Walsh <nwalsh@users.sourceforge.net> + + * autoidx.xsl: Make sure that indexdivs are properly scoped. I've done this by adding a test to suppress the division if it contains no terms. It seems like there might be a better way, but I can't see it just at the moment + +2003-01-08 Robert Stayton <bobstayton@users.sourceforge.net> + + * xref.xsl: In olink, use document($target.database.document, /) so the + olink database location is relative to the document, not + the stylesheet. + +2003-01-06 Robert Stayton <bobstayton@users.sourceforge.net> + + * autoidx.xsl, index.xsl: Removed unnecessary generate-index-from-terms template in + favor of generate-index with scope parameter. + +2003-01-02 Norman Walsh <nwalsh@users.sourceforge.net> + + * autoidx.xsl, index.xsl: Rework indexing to avoid XSLT limitation/Saxon bug with context dependencies; finish porting Bob's changes from FO to HTML + + * index.xsl, titlepage.templates.xml, titlepage.xsl: Support setindex (there were all sorts of things wrong with it) + +2003-01-01 Norman Walsh <nwalsh@users.sourceforge.net> + + * autoidx.xsl, index.xsl: Make index elements always index the book that contains them (if there is one, otherwise the whole document); setindex always indexes the whole document + + * autotoc.xsl: Support List of Procedures + + * formal.xsl, xref.xsl: Use titleabbrev instead of title in xrefs + + * graphics.xsl: Support ignore.image.scaling parameter; fix bug where 'center' is output for align on img + + * param.ent, param.xweb: New parameters + + * sections.xsl: Don't output section IDs twice when formatting subtitles + +2002-12-31 Norman Walsh <nwalsh@users.sourceforge.net> + + * callout.xsl: Whitespace + + * graphics.xsl: Support alt text on mediaobjectco + + * inline.xsl: Make lineannotations italic + +2002-12-28 Norman Walsh <nwalsh@users.sourceforge.net> + + * xref.xsl: Now that xrefstyle is official; make it take priority even when use.role.as.xrefstyle is non-zero. + + * xref.xsl: Make endterm on xref higher priority than xreflabel on the target + +2002-12-18 Robert Stayton <bobstayton@users.sourceforge.net> + + * autoidx.xsl: Sorts were being done on primary entries, but without + folding upper and lower case together. Now it does the folding. + + * graphics.xsl: Now uses select.mediaobject.index for selecting mediaobject. + Also puts align attribute value on <div> as the comment says + it should. + +2002-12-17 Jirka Kosek <kosek@users.sourceforge.net> + + * Makefile.param: Fixed build problems with new parameters. + +2002-12-17 Robert Stayton <bobstayton@users.sourceforge.net> + + * math.xsl: Changed selection of mediaobject to be more consistent using + a separate select.mediaobject.index template. Also added + text-align to block containing external-graphic in fo output. + +2002-12-17 Jirka Kosek <kosek@users.sourceforge.net> + + * param.xweb: Fixed build problems with new parameters. + +2002-12-13 Robert Stayton <bobstayton@users.sourceforge.net> + + * glossary.xsl: Handles missing otherterm targets in glosssee and glossseealso. + +2002-12-06 Robert Stayton <bobstayton@users.sourceforge.net> + + * block.xsl: Fixed epigraph template to process all the permitted + children, not just para. + + * graphics.xsl, param.ent, param.xweb: Enabled selection of imageobject based on role attribute. + +2002-12-04 Robert Stayton <bobstayton@users.sourceforge.net> + + * autotoc.xsl, component.xsl, sections.xsl: Added component.toc.separator and section.toc.separator as + emtpy templates for customization of transition + from TOC to first content. + +2002-11-29 Norman Walsh <nwalsh@users.sourceforge.net> + + * lists.xsl: Make opencircle=circle in itemizedlist marks + +2002-11-25 Robert Stayton <bobstayton@users.sourceforge.net> + + * sections.xsl: Made subtitles in sections scale to proper heading level. + +2002-11-16 Norman Walsh <nwalsh@users.sourceforge.net> + + * admon.xsl: Align titles on graphical admonitions + + * biblio.xsl, xref.xsl: Support bibliosource; improve numbered bibliography entries and cross-references to them + +2002-11-15 Norman Walsh <nwalsh@users.sourceforge.net> + + * table.xsl: Insignificant tweak + +2002-11-14 Norman Walsh <nwalsh@users.sourceforge.net> + + * biblio.xsl: Use xreflabel (if it's present) on bibliography entries + + * component.xsl: Article appendix titles should be top-level titles + + * refentry.xsl: Handle nested refsections + + * table.xsl: Support entrytbl + + * xref.xsl: Whitespace + +2002-11-01 Norman Walsh <nwalsh@users.sourceforge.net> + + * inline.xsl: Output anchors for author/editor/othercredit names + + * lists.xsl: Output anchors for simplelist members + +2002-10-31 Norman Walsh <nwalsh@users.sourceforge.net> + + * autoidx.xsl: Support spanning index terms (endofrange/startref) + +2002-10-20 Norman Walsh <nwalsh@users.sourceforge.net> + + * inline.xsl: Bug #619474: support errortext element + +2002-10-19 Norman Walsh <nwalsh@users.sourceforge.net> + + * block.xsl, component.xsl, division.xsl, refentry.xsl, sections.xsl: + Support output of language attribute + + * inline.xsl: Support output of language attribute on foreignphrase and fix bug in glossterm linking + +2002-10-09 Robert Stayton <bobstayton@users.sourceforge.net> + + * xref.xsl: Fixed bug in lookup of olink database document baseuri + attribute for case of no site map. + +2002-10-08 Norman Walsh <nwalsh@users.sourceforge.net> + + * formal.xsl: Use table 'tabstyle' attribute for div class + +2002-10-06 Norman Walsh <nwalsh@users.sourceforge.net> + + * chunk-common.xsl: Simplify chunk-element-content; no semantic differences + + * chunk.xsl: Reworked chunking for downstream customization; will break any existing customization layer that changes the chunking algorithm + +2002-10-04 Norman Walsh <nwalsh@users.sourceforge.net> + + * autotoc.xsl, component.xsl, sections.xsl: Support optional titles on ToCs + + * lists.xsl: Bug #615464: fix typo in compact list spacing + + * param.ent, param.xweb, table.xsl: Made separate parameters for table frame and table cell border properties + + * synop.xsl: Bug #617717: remove spurious hash in anchor name + +2002-10-04 Jirka Kosek <kosek@users.sourceforge.net> + + * titlepage.xsl: Fixed bug #618600. Address is now displayed verbatim also on titlepages. + +2002-10-02 Norman Walsh <nwalsh@users.sourceforge.net> + + * lists.xsl: Support continuation of orderedlists and inherited numeration in FO + +2002-10-01 Robert Stayton <bobstayton@users.sourceforge.net> + + * sections.xsl: Changed section.level template to return a number that matches + the section level (sect1 = 1, etc.), and changed other + templates to compensate for the change, so the output + should be the same as before. + +2002-09-27 Norman Walsh <nwalsh@users.sourceforge.net> + + * autoidx.xsl: Bug #496294: don't index endofrangeentries. They're no longer indexed, but they aren't handled quite right yet either, they don't generate ranges + + * autotoc.xsl: Properly support bridgehead.in.toc parameter + + * biblio.xsl: Related to bug #583282: don't duplicate footnotes in bibliographys either + + * block.xsl, titlepage.xsl: Bug #582192: support revdescription and improve effectiveness of html-rtf by extending the number of places where its used + + * component.xsl: Bug #596599: TOC for article/appendix in chunked HTML + + * docbook.xsl: Make sure chunk always returns zero if we're not chunking + + * formal.xsl: Bug #497603: fixed and added default.float.class + + * glossary.xsl: Bug #583282: footnote duplicated in glossary footer + + * graphics.xsl: Bug #516859: added default.image.width + + * index.xsl: Related to bug #583282: don't duplicate footnotes in indexes either + + * param.ent, param.xweb: Use new parameters + + * synop.xsl: Total rework of funcsynopsis code; now supports a 'tabular' presentation style for 'wide' prototypes; see funcsynopsis.tabular.threshold + +2002-09-20 Norman Walsh <nwalsh@users.sourceforge.net> + + * changebars.xsl: Address Bug #610660: use system.head.content instead of user.head.content; tone down the intensity of the colors a bit + + * chunk-common.xsl: Call system.head.content in html.head + + * docbook.xsl: Address Bug #610660: Added system.head.content so that stylesheets can output things before the users css.stylesheet (for example). Also added a title parameter to head.content + + * docbook.xsl: Add context to error message about a missing template + + * graphics.xsl: Call the *.head.content templates when writing out long description chunks + + * synop.xsl: Bug #605150: process arg correctly even when it's in a group + + * titlepage.xsl: Bug #607725: make sure legalnoticelink is correct even when chunking to a different html.dir + + * titlepage.xsl: Call the *.head.content templates when writing out legalnotice chunks + +2002-09-18 Norman Walsh <nwalsh@users.sourceforge.net> + + * graphics.xsl: Use CSS to set viewport characteristics if css.decoration is non-zero, use div instead of p for making graphic a block element; make figure titles the default alt text for images in a figure + + * html-rtf.xsl: Handle XHTML RTFs more completely + +2002-09-17 Norman Walsh <nwalsh@users.sourceforge.net> + + * chunk.xsl: Use local URIs for importing docbook.xsl and chunk-common.xsl + + * qandaset.xsl: Added default table summary to qandaset tables + +2002-09-16 Norman Walsh <nwalsh@users.sourceforge.net> + + * chunk.xsl, chunkfast.xsl: Attempt to make chunking faster; chunkfast is still experimental + +2002-09-15 Norman Walsh <nwalsh@users.sourceforge.net> + + * autoidx.xsl: Support indexing in webpages (website DTD). In the long run, this probably isn't a good strategy... + +2002-09-06 Norman Walsh <nwalsh@users.sourceforge.net> + + * admon.xsl: Output table summary and img alt for graphical admonitions + + * docbook.xsl: Whitespace changes + + * param.ent, param.xweb: Use the new l10n.* parameters + +2002-09-04 Norman Walsh <nwalsh@users.sourceforge.net> + + * chunk-common.xsl: Ignore dbhtml dir if the section isn't a chunk + + * chunk.xsl: Make sure chunked ToC/LoT goes in the right base.dir + + * component.xsl: Allow generate.toc parameter to control ToC in article/appendixes + + * graphics.xsl: Use the graphicsize.extension parameter + +2002-09-03 Norman Walsh <nwalsh@users.sourceforge.net> + + * refentry.xsl: Do something reasonable with refsection; this still needs work + + * table.xsl: Make sure row-level colsep and rowsep values are 'inherited' onto missing cells + +2002-08-28 Norman Walsh <nwalsh@users.sourceforge.net> + + * table.xsl: Make inherited attributes work for 'missing' table cells + +2002-08-26 Norman Walsh <nwalsh@users.sourceforge.net> + + * chunk.xsl, param.ent, param.xweb: Made chunk.tocs.and.lots a proper parameter + +2002-08-25 Jirka Kosek <kosek@users.sourceforge.net> + + * autoidx.xsl: Fixed bug #496281. Refentry is now recognized as target for links from index. + +2002-08-22 Jirka Kosek <kosek@users.sourceforge.net> + + * Makefile.param: Index can be alternatively created using HHK file from now. This allows see-also processing and index terms also points to their exact location. + +2002-08-22 Norman Walsh <nwalsh@users.sourceforge.net> + + * autoidx.xsl: Format see/seealso entries correctly + + * autotoc.xsl, chunk-common.xsl, chunk.xsl, component.xsl, division.xsl: + Rework(ing) ToC/LoT generation to support chunking the ToC/LoT; don't output empty rows in navigation tables + +2002-08-22 Jirka Kosek <kosek@users.sourceforge.net> + + * param.ent, param.xweb: Index can be alternatively created using HHK file from now. This allows see-also processing and index terms also points to their exact location. + +2002-07-29 Robert Stayton <bobstayton@users.sourceforge.net> + + * lists.xsl: Added valign="top" attribute to the <col> element + for variablelist term column. I was getting vertically + centered alignment for the term. + +2002-07-19 Norman Walsh <nwalsh@users.sourceforge.net> + + * biblio.xsl, inline.xsl, param.ent, param.xweb: Support menuchoice.menu.separator, menuchoice.separator, and bibliography.numbered + +2002-07-18 Norman Walsh <nwalsh@users.sourceforge.net> + + * block.xsl, lists.xsl, param.ent, param.xweb: Added support for para.propagates.style + + * lists.xsl: Use tr.attributes + + * param.ent, param.xweb: Added html.cellpadding and html.cellspacing + + * table.xsl: Added tr.attributes named template (for odd-row coloring and such) and html.cellpadding and html.cellspacing for table defaults + +2002-07-16 Norman Walsh <nwalsh@users.sourceforge.net> + + * inline.xsl: When emphasis propagates its role attribute as the HTML span class and a role is provided, don't use <em> + +2002-07-16 Robert Stayton <bobstayton@users.sourceforge.net> + + * xref.xsl: Remove 'article' from the catch-all template match in mode=xref-to + because it is already covered in another xref-to template, + leading to an ambigious selection of template. + +2002-07-10 Norman Walsh <nwalsh@users.sourceforge.net> + + * chunker.xsl: Repeat after me: you cannot use xsl:attribute on intruction elements, you cannot use... + + * graphics.xsl: Refactor calls to getWidth() and getDepth() to work around XSLTC bugs + +2002-07-09 Norman Walsh <nwalsh@users.sourceforge.net> + + * biblio.xsl: Don't output square brackets if there's no biblioentry label + + * synop.xsl: Bug #573726: fix cmdsynopsisref formatting + +2002-07-08 Norman Walsh <nwalsh@users.sourceforge.net> + + * autoidx.xsl: Bug #574841: trim leading and trailing whitespace from primary/secondary/tertiary index terms + + * autoidx.xsl: Bug #574840: fix bug where some symbol index terms got lost + + * graphics.xsl: Work-around bug in xsltproc: explicitly cast scale to a number() before comparing it to 1.0 + + * html-rtf.xsl, verbatim.xsl: Bug #567130: make sure literallayout children don't get lost + +2002-07-08 Robert Stayton <bobstayton@users.sourceforge.net> + + * xref.xsl: Moved the target.database parameter to be the first + child in the olink template. + +2002-07-07 Norman Walsh <nwalsh@users.sourceforge.net> + + * chunk-common.xsl, chunk.xsl: First tentative stab at getting ToCs and LoTs into separate chunks--does not work + + * footnote.xsl: Fix footnotes in table titles + + * lists.xsl: Fix ugly bug: make sure premables to orderedlist and itemizedlist elements are actually formatted + +2002-07-06 Robert Stayton <bobstayton@users.sourceforge.net> + + * graphics.xsl: Bug fix for inlinegraphic not being inline. + The test for setting $viewport to 0 was + test="inlinegraphic + | ancestor::inlinemediaobject + | ancestor::inlineequation" + when it should be: + test="local-name(.) = 'inlinegraphic' + or ancestor::inlinemediaobject + or ancestor::inlineequation" + Now inlinegraphics are inline. + + * xref.xsl: Added $verbose parameter to default xref-to template + so olink target collection can be quiet for elements + that don't have an xref-to. + Also fixed a line break in an olink error message. + +2002-07-05 Robert Stayton <bobstayton@users.sourceforge.net> + + * chunk.xsl: Modified for new stylesheet olink system. + Checks the collect.xref.targets parameter and + runs the target collection process if selected. + Default is to not run the collection process. + + * docbook.xsl: Modified for the new stylesheet olink system. + Checks the collect.xref.targets parameter and runs + the target data collection process if selected. + Default is to not run the collection process. + + * param.ent: Added seven new parameters for the new stylesheet olink system: + target.database.document + targets.filename + collect.xref.targets + olink.base.uri + use.local.olink.style + current.docid + olink.doctitle + + * param.ent, param.xweb: Removed references to the chunk.datafile parameter, + because Norm removed that parameter due to + obsolescence. + + * param.xweb: Added seven parameters for the new stylesheet olink system: + target.database.document + targets.filename + collect.xref.targets + olink.base.uri + use.local.olink.style + current.docid + olink.doctitle + + * xref.xsl: Modified to use new stylesheet olinks. + Extended the olink template for the new targetdoc and + targetptr attributes. + Loads the target database into keys for quick lookups. + +2002-07-04 Norman Walsh <nwalsh@users.sourceforge.net> + + * xref.xsl: Feature req #525507: support xref to para by using the nearest containing section as the generated text + +2002-07-03 Norman Walsh <nwalsh@users.sourceforge.net> + + * chunk-common.xsl, param.ent, param.xweb: Use header.rule and footer.rule parameters when building page navigation + + * docbook.xsl: Feature Req #502932: added root.messages template for user defined messages + +2002-06-29 Norman Walsh <nwalsh@users.sourceforge.net> + + * formal.xsl, lists.xsl: Make list/procedure titles use gentext and have consisten formatting + +2002-06-28 Norman Walsh <nwalsh@users.sourceforge.net> + + * chunk-common.xsl: Fix footnote context error (Felix Rabe) + +2002-06-27 Norman Walsh <nwalsh@users.sourceforge.net> + + * footnote.xsl: Make sure function-available is used around the node-set extension function + +2002-06-27 Jirka Kosek <kosek@users.sourceforge.net> + + * footnote.xsl: Fixed typo + +2002-06-27 Norman Walsh <nwalsh@users.sourceforge.net> + + * table.xsl: Whitespace + +2002-06-26 Norman Walsh <nwalsh@users.sourceforge.net> + + * inline.xsl, xref.xsl: Unwrap nested links + + * table.xsl: Rework the CSS table-border properties so that all three don't have to be specified at once + +2002-06-16 Norman Walsh <nwalsh@users.sourceforge.net> + + * chunker.xsl: Turn off omit-xml-declaration, for what it's worth, in text mode + + * table.xsl: Added PI for cellspacing and cellpadding; also added currently useless Python extension hooks + +2002-06-13 Jirka Kosek <kosek@users.sourceforge.net> + + * Makefile.param: New features. A lot of new features. For HTML Help. + + * Makefile.param: Added parameter for disabling HTML output when testing various HTML Help features. + +2002-06-13 Norman Walsh <nwalsh@users.sourceforge.net> + + * chunker.xsl: Use the new chunking parameters: NOTE WELL: they are described in param.xweb but actually defined in chunker.xsl to make it independent + +2002-06-13 Jirka Kosek <kosek@users.sourceforge.net> + + * chunker.xsl: Modified output attributes for text chunks as Saxon doesn't like empty values for them. + +2002-06-13 Norman Walsh <nwalsh@users.sourceforge.net> + + * html-rtf.xsl: Renamed a template + + * inline.xsl: Changed test condition for xlink: simple links + + * manifest.xsl, math.xsl, param.ent: Use the new chunking parameters: NOTE WELL: they are described in param.xweb but actually defined in chunker.xsl to make it independent + +2002-06-13 Jirka Kosek <kosek@users.sourceforge.net> + + * param.ent: New features. A lot of new features. For HTML Help. + + * param.ent: Added parameter for disabling HTML output when testing various HTML Help features. + +2002-06-13 Norman Walsh <nwalsh@users.sourceforge.net> + + * param.xweb: Use the new chunking parameters: NOTE WELL: they are described in param.xweb but actually defined in chunker.xsl to make it independent + +2002-06-13 Jirka Kosek <kosek@users.sourceforge.net> + + * param.xweb: New features. A lot of new features. For HTML Help. + + * param.xweb: Added parameter for disabling HTML output when testing various HTML Help features. + +2002-06-12 Jirka Kosek <kosek@users.sourceforge.net> + + * chunk-common.xsl, param.ent, param.xweb: Added new parameters suppress.{footer|header}.navigation for separate control over navigation bar in footer and header. + +2002-06-11 Norman Walsh <nwalsh@users.sourceforge.net> + + * formal.xsl: Make sure formal objects have an anchor + + * graphics.xsl: Don't put alt on object or embed + + * graphics.xsl: Don't output viewport table if it isn't going to do anything useful + + * graphics.xsl, param.ent, param.xweb: Made new parameters public + + * html-rtf.xsl: When unwrapping; don't produce empty elements if there's no need + + * html-rtf.xsl: Fix list of block elements and support xhtml + + * xref.xsl: Experimental support for xrefstyle + +2002-06-09 Norman Walsh <nwalsh@users.sourceforge.net> + + * docbook.xsl: Feature req #565822: support multiple html.stylesheets + + * docbook.xsl: Patch #565199: fix quotation marks in draft URL generation in CSS + +2002-06-06 Norman Walsh <nwalsh@users.sourceforge.net> + + * docbook.xsl: Add support for HTML META name=description from abstract + + * param.ent, param.xweb: New parameters: generate.meata.abstract and use.role.as.xrefstyle + +2002-06-03 Jirka Kosek <kosek@users.sourceforge.net> + + * Makefile: Added dependencies for profiling stylesheets + 2002-05-23 Norman Walsh <nwalsh@users.sourceforge.net> * graphics.xsl, param.ent, param.xweb: Support for SVG in HTML Index: phpdoc/xsl/docbook/html/admon.xsl diff -u phpdoc/xsl/docbook/html/admon.xsl:1.1 phpdoc/xsl/docbook/html/admon.xsl:1.2 --- phpdoc/xsl/docbook/html/admon.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/admon.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: admon.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: admon.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -32,46 +32,65 @@ <xsl:param name="node" select="."/> <xsl:value-of select="$admon.graphics.path"/> <xsl:choose> - <xsl:when test="name($node)='note'">note</xsl:when> - <xsl:when test="name($node)='warning'">warning</xsl:when> - <xsl:when test="name($node)='caution'">caution</xsl:when> - <xsl:when test="name($node)='tip'">tip</xsl:when> - <xsl:when test="name($node)='important'">important</xsl:when> + <xsl:when test="local-name($node)='note'">note</xsl:when> + <xsl:when test="local-name($node)='warning'">warning</xsl:when> + <xsl:when test="local-name($node)='caution'">caution</xsl:when> + <xsl:when test="local-name($node)='tip'">tip</xsl:when> + <xsl:when test="local-name($node)='important'">important</xsl:when> <xsl:otherwise>note</xsl:otherwise> </xsl:choose> <xsl:value-of select="$admon.graphics.extension"/> </xsl:template> <xsl:template name="graphical.admonition"> + <xsl:variable name="admon.type"> + <xsl:choose> + <xsl:when test="local-name(.)='note'">Note</xsl:when> + <xsl:when test="local-name(.)='warning'">Warning</xsl:when> + <xsl:when test="local-name(.)='caution'">Caution</xsl:when> + <xsl:when test="local-name(.)='tip'">Tip</xsl:when> + <xsl:when test="local-name(.)='important'">Important</xsl:when> + <xsl:otherwise>Note</xsl:otherwise> + </xsl:choose> + </xsl:variable> + <div class="{name(.)}"> - <xsl:if test="$admon.style != ''"> - <xsl:attribute name="style"> - <xsl:value-of select="$admon.style"/> - </xsl:attribute> - </xsl:if> - <table border="0"> - <tr> - <td rowspan="2" align="center" valign="top"> - <xsl:attribute name="width"> - <xsl:call-template name="admon.graphic.width"/> - </xsl:attribute> - <img> - <xsl:attribute name="src"> - <xsl:call-template name="admon.graphic"/> + <xsl:if test="$admon.style != ''"> + <xsl:attribute name="style"> + <xsl:value-of select="$admon.style"/> + </xsl:attribute> + </xsl:if> + + <table border="0"> + <xsl:attribute name="summary"> + <xsl:value-of select="$admon.type"/> + <xsl:if test="title"> + <xsl:text>: </xsl:text> + <xsl:value-of select="title"/> + </xsl:if> + </xsl:attribute> + <tr> + <td rowspan="2" align="center" valign="top"> + <xsl:attribute name="width"> + <xsl:call-template name="admon.graphic.width"/> </xsl:attribute> - </img> - </td> - <th> - <xsl:call-template name="anchor"/> - <xsl:apply-templates select="." mode="object.title.markup"/> - </th> - </tr> - <tr> - <td colspan="2" align="left" valign="top"> - <xsl:apply-templates/> - </td> - </tr> - </table> + <img alt="[{$admon.type}]"> + <xsl:attribute name="src"> + <xsl:call-template name="admon.graphic"/> + </xsl:attribute> + </img> + </td> + <th align="left"> + <xsl:call-template name="anchor"/> + <xsl:apply-templates select="." mode="object.title.markup"/> + </th> + </tr> + <tr> + <td colspan="2" align="left" valign="top"> + <xsl:apply-templates/> + </td> + </tr> + </table> </div> </xsl:template> Index: phpdoc/xsl/docbook/html/autoidx.xsl diff -u phpdoc/xsl/docbook/html/autoidx.xsl:1.1 phpdoc/xsl/docbook/html/autoidx.xsl:1.2 --- phpdoc/xsl/docbook/html/autoidx.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/autoidx.xsl Sun Mar 9 09:56:38 2003 @@ -4,9 +4,9 @@ <!ENTITY lowercase "'abcdefghijklmnopqrstuvwxyz'"> <!ENTITY uppercase "'ABCDEFGHIJKLMNOPQRSTUVWXYZ'"> -<!ENTITY primary 'concat(primary/@sortas, primary[not(@sortas)])'> -<!ENTITY secondary 'concat(secondary/@sortas, secondary[not(@sortas)])'> -<!ENTITY tertiary 'concat(tertiary/@sortas, tertiary[not(@sortas)])'> +<!ENTITY primary 'normalize-space(concat(primary/@sortas, primary[not(@sortas)]))'> +<!ENTITY secondary 'normalize-space(concat(secondary/@sortas, secondary[not(@sortas)]))'> +<!ENTITY tertiary 'normalize-space(concat(tertiary/@sortas, tertiary[not(@sortas)]))'> <!ENTITY section '(ancestor-or-self::set |ancestor-or-self::book @@ -16,22 +16,26 @@ |ancestor-or-self::chapter |ancestor-or-self::appendix |ancestor-or-self::preface + |ancestor-or-self::article |ancestor-or-self::section |ancestor-or-self::sect1 |ancestor-or-self::sect2 |ancestor-or-self::sect3 |ancestor-or-self::sect4 |ancestor-or-self::sect5 + |ancestor-or-self::refentry |ancestor-or-self::refsect1 |ancestor-or-self::refsect2 |ancestor-or-self::refsect3 |ancestor-or-self::simplesect |ancestor-or-self::bibliography |ancestor-or-self::glossary - |ancestor-or-self::index)[last()]'> + |ancestor-or-self::index + |ancestor-or-self::webpage)[last()]'> <!ENTITY section.id 'generate-id(§ion;)'> <!ENTITY sep '" "'> +<!ENTITY scope 'count(ancestor::node()|$scope) = count(ancestor::node())'> ]> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> @@ -57,6 +61,10 @@ match="indexterm" use="concat(&primary;, &sep;, &secondary;, &sep;, &tertiary;)"/> +<xsl:key name="endofrange" + match="indexterm[@class='endofrange']" + use="@startref"/> + <xsl:key name="primary-section" match="indexterm[not(secondary) and not(see)]" use="concat(&primary;, &sep;, §ion.id;)"/> @@ -80,12 +88,19 @@ <xsl:key name="sections" match="*[@id]" use="@id"/> <xsl:template name="generate-index"> - <xsl:variable name="terms" select="//indexterm[count(.|key('letter', - translate(substring(&primary;, 1, 1),&lowercase;,&uppercase;))[1]) = 1]"/> + <xsl:param name="scope" select="(ancestor::book|/)[last()]"/> + + <xsl:variable name="terms" + select="//indexterm[count(.|key('letter', + translate(substring(&primary;, 1, 1), + &lowercase;, + &uppercase;))[&scope;][1]) = 1 + and not(@class = 'endofrange')]"/> <xsl:variable name="alphabetical" select="$terms[contains(concat(&lowercase;, &uppercase;), substring(&primary;, 1, 1))]"/> + <xsl:variable name="others" select="$terms[not(contains(concat(&lowercase;, &uppercase;), substring(&primary;, 1, 1)))]"/> @@ -99,59 +114,99 @@ </h3> <dl> <xsl:apply-templates select="$others[count(.|key('primary', - &primary;)[1]) = 1]" - mode="index-primary"> - <xsl:sort select="&primary;"/> + &primary;)[&scope;][1]) = 1]" + mode="index-symbol-div"> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(&primary;, &lowercase;, &uppercase;)"/> </xsl:apply-templates> </dl> </div> </xsl:if> + <xsl:apply-templates select="$alphabetical[count(.|key('letter', - translate(substring(&primary;, 1, 1),&lowercase;,&uppercase;))[1]) = 1]" + translate(substring(&primary;, 1, 1), + &lowercase;,&uppercase;))[&scope;][1]) = 1]" mode="index-div"> - <xsl:sort select="&primary;"/> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(&primary;, &lowercase;, &uppercase;)"/> </xsl:apply-templates> </div> </xsl:template> <xsl:template match="indexterm" mode="index-div"> - <xsl:variable name="key" select="translate(substring(&primary;, 1, 1),&lowercase;,&uppercase;)"/> - <div class="indexdiv"> - <h3> - <xsl:value-of select="translate($key, &lowercase;, &uppercase;)"/> - </h3> - <dl> - <xsl:apply-templates select="key('letter', $key)[count(.|key('primary', &primary;)[1]) = 1]" - mode="index-primary"> - <xsl:sort select="&primary;"/> - </xsl:apply-templates> - </dl> - </div> + <xsl:param name="scope" select="."/> + + <xsl:variable name="key" + select="translate(substring(&primary;, 1, 1),&lowercase;,&uppercase;)"/> + + <!-- Make sure that we don't generate a div if there are no terms in scope --> + <xsl:if test="key('letter', $key)[&scope;] + [count(.|key('primary', &primary;)[&scope;][1]) = 1]"> + <div class="indexdiv"> + <xsl:if test="contains(concat(&lowercase;, &uppercase;), $key)"> + <h3> + <xsl:value-of select="translate($key, &lowercase;, &uppercase;)"/> + </h3> + </xsl:if> + <dl> + <xsl:apply-templates select="key('letter', $key)[&scope;] + [count(.|key('primary', &primary;)[&scope;][1])=1]" + mode="index-primary"> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(&primary;, &lowercase;, &uppercase;)"/> + </xsl:apply-templates> + </dl> + </div> + </xsl:if> +</xsl:template> + +<xsl:template match="indexterm" mode="index-symbol-div"> + <xsl:param name="scope" select="/"/> + + <xsl:variable name="key" select="translate(substring(&primary;, 1, 1), + &lowercase;,&uppercase;)"/> + + <xsl:apply-templates select="key('letter', $key) + [count(.|key('primary', &primary;)[&scope;][1]) = 1]" + mode="index-primary"> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(&primary;, &lowercase;, &uppercase;)"/> + </xsl:apply-templates> </xsl:template> <xsl:template match="indexterm" mode="index-primary"> + <xsl:param name="scope" select="."/> + <xsl:variable name="key" select="&primary;"/> - <xsl:variable name="refs" select="key('primary', $key)"/> + <xsl:variable name="refs" select="key('primary', $key)[&scope;]"/> <dt> <xsl:value-of select="primary"/> - <xsl:for-each select="$refs[generate-id() = generate-id(key('primary-section', concat($key, &sep;, §ion.id;))[1])]"> - <xsl:apply-templates select="." mode="reference"/> + <xsl:for-each select="$refs[generate-id() = generate-id(key('primary-section', concat($key, &sep;, §ion.id;))[&scope;][1])]"> + <xsl:apply-templates select="." mode="reference"> + <xsl:with-param name="scope" select="$scope"/> + </xsl:apply-templates> </xsl:for-each> + + <xsl:if test="$refs[not(secondary)]/*[self::see]"> + <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see', concat(&primary;, &sep;, &sep;, &sep;, see))[&scope;][1])]" + mode="index-see"> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(see, &lowercase;, &uppercase;)"/> + </xsl:apply-templates> + </xsl:if> </dt> - <xsl:if test="$refs/secondary or $refs[not(secondary)]/*[self::see or self::seealso]"> + <xsl:if test="$refs/secondary or $refs[not(secondary)]/*[self::seealso]"> <dd> <dl> - <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see', concat(&primary;, &sep;, &sep;, &sep;, see))[1])]" - mode="index-see"> - <xsl:sort select="see"/> - </xsl:apply-templates> - <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see-also', concat(&primary;, &sep;, &sep;, &sep;, seealso))[1])]" + <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see-also', concat(&primary;, &sep;, &sep;, &sep;, seealso))[&scope;][1])]" mode="index-seealso"> - <xsl:sort select="seealso"/> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(seealso, &lowercase;, &uppercase;)"/> </xsl:apply-templates> - <xsl:apply-templates select="$refs[secondary and count(.|key('secondary', concat($key, &sep;, &secondary;))[1]) = 1]" + <xsl:apply-templates select="$refs[secondary and count(.|key('secondary', concat($key, &sep;, &secondary;))[&scope;][1]) = 1]" mode="index-secondary"> - <xsl:sort select="&secondary;"/> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(&secondary;, &lowercase;, &uppercase;)"/> </xsl:apply-templates> </dl> </dd> @@ -159,28 +214,38 @@ </xsl:template> <xsl:template match="indexterm" mode="index-secondary"> + <xsl:param name="scope" select="."/> + <xsl:variable name="key" select="concat(&primary;, &sep;, &secondary;)"/> - <xsl:variable name="refs" select="key('secondary', $key)"/> + <xsl:variable name="refs" select="key('secondary', $key)[&scope;]"/> <dt> <xsl:value-of select="secondary"/> - <xsl:for-each select="$refs[generate-id() = generate-id(key('secondary-section', concat($key, &sep;, §ion.id;))[1])]"> - <xsl:apply-templates select="." mode="reference"/> + <xsl:for-each select="$refs[generate-id() = generate-id(key('secondary-section', concat($key, &sep;, §ion.id;))[&scope;][1])]"> + <xsl:apply-templates select="." mode="reference"> + <xsl:with-param name="scope" select="$scope"/> + </xsl:apply-templates> </xsl:for-each> + + <xsl:if test="$refs[not(tertiary)]/*[self::see]"> + <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see', concat(&primary;, &sep;, &secondary;, &sep;, &sep;, see))[&scope;][1])]" + mode="index-see"> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(see, &lowercase;, &uppercase;)"/> + </xsl:apply-templates> + </xsl:if> </dt> - <xsl:if test="$refs/tertiary or $refs[not(tertiary)]/*[self::see or self::seealso]"> + <xsl:if test="$refs/tertiary or $refs[not(tertiary)]/*[self::seealso]"> <dd> <dl> - <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see', concat(&primary;, &sep;, &secondary;, &sep;, &sep;, see))[1])]" - mode="index-see"> - <xsl:sort select="see"/> - </xsl:apply-templates> - <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see-also', concat(&primary;, &sep;, &secondary;, &sep;, &sep;, seealso))[1])]" + <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see-also', concat(&primary;, &sep;, &secondary;, &sep;, &sep;, seealso))[&scope;][1])]" mode="index-seealso"> - <xsl:sort select="seealso"/> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(seealso, &lowercase;, &uppercase;)"/> </xsl:apply-templates> - <xsl:apply-templates select="$refs[tertiary and count(.|key('tertiary', concat($key, &sep;, &tertiary;))[1]) = 1]" + <xsl:apply-templates select="$refs[tertiary and count(.|key('tertiary', concat($key, &sep;, &tertiary;))[&scope;][1]) = 1]" mode="index-tertiary"> - <xsl:sort select="&tertiary;"/> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(&tertiary;, &lowercase;, &uppercase;)"/> </xsl:apply-templates> </dl> </dd> @@ -188,25 +253,38 @@ </xsl:template> <xsl:template match="indexterm" mode="index-tertiary"> + <xsl:param name="scope" select="."/> + <xsl:variable name="key" select="concat(&primary;, &sep;, &secondary;, &sep;, &tertiary;)"/> - <xsl:variable name="refs" select="key('tertiary', $key)"/> + <xsl:variable name="refs" select="key('tertiary', $key)[&scope;]"/> <dt> <xsl:value-of select="tertiary"/> - <xsl:for-each select="$refs[generate-id() = generate-id(key('tertiary-section', concat($key, &sep;, §ion.id;))[1])]"> - <xsl:apply-templates select="." mode="reference"/> + <xsl:for-each select="$refs[generate-id() = generate-id(key('tertiary-section', concat($key, &sep;, §ion.id;))[&scope;][1])]"> + <xsl:apply-templates select="." mode="reference"> + <xsl:with-param name="scope" select="$scope"/> + </xsl:apply-templates> </xsl:for-each> + + <xsl:if test="$refs/see"> + <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see', concat(&primary;, &sep;, &secondary;, &sep;, &tertiary;, &sep;, see))[&scope;][1])]" + mode="index-see"> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(see, &lowercase;, &uppercase;)"/> + </xsl:apply-templates> + </xsl:if> </dt> - <xsl:variable name="see" select="$refs/see | $refs/seealso"/> - <xsl:if test="$see"> + <xsl:if test="$refs/seealso"> <dd> <dl> - <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see', concat(&primary;, &sep;, &secondary;, &sep;, &tertiary;, &sep;, see))[1])]" + <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see', concat(&primary;, &sep;, &secondary;, &sep;, &tertiary;, &sep;, see))[&scope;][1])]" mode="index-see"> - <xsl:sort select="see"/> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(see, &lowercase;, &uppercase;)"/> </xsl:apply-templates> - <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see-also', concat(&primary;, &sep;, &secondary;, &sep;, &tertiary;, &sep;, seealso))[1])]" + <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see-also', concat(&primary;, &sep;, &secondary;, &sep;, &tertiary;, &sep;, seealso))[&scope;][1])]" mode="index-seealso"> - <xsl:sort select="seealso"/> + <xsl:with-param name="scope" select="$scope"/> + <xsl:sort select="translate(seealso, &lowercase;, &uppercase;)"/> </xsl:apply-templates> </dl> </dd> @@ -214,11 +292,15 @@ </xsl:template> <xsl:template match="indexterm" mode="reference"> - <xsl:text>, </xsl:text> + <xsl:param name="scope" select="."/> + <xsl:param name="separator" select="', '"/> + + <xsl:value-of select="$separator"/> <xsl:choose> <xsl:when test="@zone and string(@zone)"> <xsl:call-template name="reference"> <xsl:with-param name="zones" select="normalize-space(@zone)"/> + <xsl:with-param name="scope" select="$scope"/> </xsl:call-template> </xsl:when> <xsl:otherwise> @@ -235,16 +317,26 @@ <xsl:value-of select="$title"/> <!-- text only --> </a> + + <xsl:if test="key('endofrange', @id)[&scope;]"> + <xsl:apply-templates select="key('endofrange', @id)[&scope;][last()]" + mode="reference"> + <xsl:with-param name="scope" select="$scope"/> + <xsl:with-param name="separator" select="'-'"/> + </xsl:apply-templates> + </xsl:if> </xsl:otherwise> </xsl:choose> </xsl:template> <xsl:template name="reference"> + <xsl:param name="scope" select="."/> <xsl:param name="zones"/> + <xsl:choose> <xsl:when test="contains($zones, ' ')"> <xsl:variable name="zone" select="substring-before($zones, ' ')"/> - <xsl:variable name="target" select="key('sections', $zone)"/> + <xsl:variable name="target" select="key('sections', $zone)[&scope;]"/> <a> <xsl:attribute name="href"> @@ -257,11 +349,12 @@ <xsl:text>, </xsl:text> <xsl:call-template name="reference"> <xsl:with-param name="zones" select="substring-after($zones, ' ')"/> + <xsl:with-param name="scope" select="$scope"/> </xsl:call-template> </xsl:when> <xsl:otherwise> <xsl:variable name="zone" select="$zones"/> - <xsl:variable name="target" select="key('sections', $zone)"/> + <xsl:variable name="target" select="key('sections', $zone)[&scope;]"/> <a> <xsl:attribute name="href"> @@ -276,11 +369,29 @@ </xsl:template> <xsl:template match="indexterm" mode="index-see"> - <dt><xsl:value-of select="see"/></dt> + <xsl:param name="scope" select="."/> + + <xsl:text> (</xsl:text> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'see'"/> + </xsl:call-template> + <xsl:text> </xsl:text> + <xsl:value-of select="see"/> + <xsl:text>)</xsl:text> </xsl:template> <xsl:template match="indexterm" mode="index-seealso"> - <dt><xsl:value-of select="seealso"/></dt> + <xsl:param name="scope" select="."/> + + <dt> + <xsl:text>(</xsl:text> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'seealso'"/> + </xsl:call-template> + <xsl:text> </xsl:text> + <xsl:value-of select="seealso"/> + <xsl:text>)</xsl:text> + </dt> </xsl:template> <xsl:template match="*" mode="index-title-content"> Index: phpdoc/xsl/docbook/html/autotoc.xsl diff -u phpdoc/xsl/docbook/html/autotoc.xsl:1.1 phpdoc/xsl/docbook/html/autotoc.xsl:1.2 --- phpdoc/xsl/docbook/html/autotoc.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/autotoc.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: autotoc.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: autotoc.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -27,17 +27,21 @@ </xsl:choose> </xsl:variable> -<xsl:template name="set.toc"> +<xsl:template name="make.toc"> <xsl:param name="toc-context" select="."/> + <xsl:param name="toc.title.p" select="true()"/> + <xsl:param name="nodes" select="/NOT-AN-ELEMENT"/> <xsl:variable name="toc.title"> - <p> - <b> - <xsl:call-template name="gentext"> - <xsl:with-param name="key">TableofContents</xsl:with-param> - </xsl:call-template> - </b> - </p> + <xsl:if test="$toc.title.p"> + <p> + <b> + <xsl:call-template name="gentext"> + <xsl:with-param name="key">TableofContents</xsl:with-param> + </xsl:call-template> + </b> + </p> + </xsl:if> </xsl:variable> <xsl:choose> @@ -59,8 +63,6 @@ </xsl:if> </xsl:when> <xsl:otherwise> - <xsl:variable name="nodes" select="book|setindex"/> - <xsl:if test="$nodes"> <div class="toc"> <xsl:copy-of select="$toc.title"/> @@ -75,157 +77,116 @@ </xsl:choose> </xsl:template> -<xsl:template name="division.toc"> +<xsl:template name="make.lots"> + <xsl:param name="toc.params" select="''"/> + <xsl:param name="toc"/> + + <xsl:if test="contains($toc.params, 'toc')"> + <xsl:copy-of select="$toc"/> + </xsl:if> + + <xsl:if test="contains($toc.params, 'figure')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'figure'"/> + <xsl:with-param name="nodes" select=".//figure"/> + </xsl:call-template> + </xsl:if> + + <xsl:if test="contains($toc.params, 'table')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'table'"/> + <xsl:with-param name="nodes" select=".//table"/> + </xsl:call-template> + </xsl:if> + + <xsl:if test="contains($toc.params, 'example')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'example'"/> + <xsl:with-param name="nodes" select=".//example"/> + </xsl:call-template> + </xsl:if> + + <xsl:if test="contains($toc.params, 'equation')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'equation'"/> + <xsl:with-param name="nodes" select=".//equation[title]"/> + </xsl:call-template> + </xsl:if> + + <xsl:if test="contains($toc.params, 'procedure')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'procedure'"/> + <xsl:with-param name="nodes" select=".//procedure[title]"/> + </xsl:call-template> + </xsl:if> +</xsl:template> + +<!-- ====================================================================== --> + +<xsl:template name="set.toc"> <xsl:param name="toc-context" select="."/> - <xsl:variable name="toc.title"> - <p> - <b> - <xsl:call-template name="gentext"> - <xsl:with-param name="key">TableofContents</xsl:with-param> - </xsl:call-template> - </b> - </p> - </xsl:variable> + <xsl:call-template name="make.toc"> + <xsl:with-param name="toc-context" select="$toc-context"/> + <xsl:with-param name="nodes" select="book|setindex"/> + </xsl:call-template> +</xsl:template> - <xsl:choose> - <xsl:when test="$manual.toc != ''"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - <xsl:variable name="toc" select="document($manual.toc, .)"/> - <xsl:variable name="tocentry" select="$toc//tocentry[@linkend=$id]"/> - <xsl:if test="$tocentry and $tocentry/*"> - <div class="toc"> - <xsl:copy-of select="$toc.title"/> - <xsl:element name="{$toc.list.type}"> - <xsl:call-template name="manual-toc"> - <xsl:with-param name="tocentry" select="$tocentry/*[1]"/> - </xsl:call-template> - </xsl:element> - </div> - </xsl:if> - </xsl:when> - <xsl:otherwise> - <xsl:variable name="nodes" select="part|reference +<xsl:template name="division.toc"> + <xsl:param name="toc-context" select="."/> + + <xsl:call-template name="make.toc"> + <xsl:with-param name="toc-context" select="$toc-context"/> + <xsl:with-param name="nodes" select="part|reference |preface|chapter|appendix |article |bibliography|glossary|index |refentry - |bridgehead"/> - <xsl:if test="$nodes"> - <div class="toc"> - <xsl:copy-of select="$toc.title"/> - <xsl:element name="{$toc.list.type}"> - <xsl:apply-templates select="$nodes" mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </xsl:element> - </div> - </xsl:if> - </xsl:otherwise> - </xsl:choose> + |bridgehead[$bridgehead.in.toc != 0]"/> + + </xsl:call-template> </xsl:template> <xsl:template name="component.toc"> <xsl:param name="toc-context" select="."/> + <xsl:param name="toc.title.p" select="true()"/> - <xsl:variable name="toc.title"> - <p> - <b> - <xsl:call-template name="gentext"> - <xsl:with-param name="key">TableofContents</xsl:with-param> - </xsl:call-template> - </b> - </p> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$manual.toc != ''"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - <xsl:variable name="toc" select="document($manual.toc, .)"/> - <xsl:variable name="tocentry" select="$toc//tocentry[@linkend=$id]"/> - <xsl:if test="$tocentry and $tocentry/*"> - <div class="toc"> - <xsl:copy-of select="$toc.title"/> - <xsl:element name="{$toc.list.type}"> - <xsl:call-template name="manual-toc"> - <xsl:with-param name="tocentry" select="$tocentry/*[1]"/> - </xsl:call-template> - </xsl:element> - </div> - </xsl:if> - </xsl:when> - <xsl:otherwise> - <xsl:variable name="nodes" select="section|sect1|refentry + <xsl:call-template name="make.toc"> + <xsl:with-param name="toc-context" select="$toc-context"/> + <xsl:with-param name="toc.title.p" select="$toc.title.p"/> + <xsl:with-param name="nodes" select="section|sect1|refentry |article|bibliography|glossary - |appendix|bridgehead[not(@renderas)] - |.//bridgehead[@renderas='sect1']"/> - <xsl:if test="$nodes"> - <div class="toc"> - <xsl:copy-of select="$toc.title"/> - <xsl:element name="{$toc.list.type}"> - <xsl:apply-templates select="$nodes" mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </xsl:element> - </div> - </xsl:if> - </xsl:otherwise> - </xsl:choose> + |appendix + |bridgehead[not(@renderas) + and $bridgehead.in.toc != 0] + |.//bridgehead[@renderas='sect1' + and $bridgehead.in.toc != 0]"/> + </xsl:call-template> +</xsl:template> + +<xsl:template name="component.toc.separator"> + <!-- Customize to output something between + component.toc and first output --> </xsl:template> <xsl:template name="section.toc"> <xsl:param name="toc-context" select="."/> + <xsl:param name="toc.title.p" select="true()"/> - <xsl:variable name="toc.title"> - <p> - <b> - <xsl:call-template name="gentext"> - <xsl:with-param name="key">TableofContents</xsl:with-param> - </xsl:call-template> - </b> - </p> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$manual.toc != ''"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - <xsl:variable name="toc" select="document($manual.toc, .)"/> - <xsl:variable name="tocentry" select="$toc//tocentry[@linkend=$id]"/> - <xsl:if test="$tocentry and $tocentry/*"> - <div class="toc"> - <xsl:copy-of select="$toc.title"/> - <xsl:element name="{$toc.list.type}"> - <xsl:call-template name="manual-toc"> - <xsl:with-param name="tocentry" select="$tocentry/*[1]"/> - </xsl:call-template> - </xsl:element> - </div> - </xsl:if> - </xsl:when> - <xsl:otherwise> - <xsl:variable name="nodes" + <xsl:call-template name="make.toc"> + <xsl:with-param name="toc-context" select="$toc-context"/> + <xsl:with-param name="toc.title.p" select="$toc.title.p"/> + <xsl:with-param name="nodes" select="section|sect1|sect2|sect3|sect4|sect5|refentry - |bridgehead"/> - <xsl:if test="$nodes"> - <div class="toc"> - <xsl:copy-of select="$toc.title"/> - <xsl:element name="{$toc.list.type}"> - <xsl:apply-templates select="$nodes" mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </xsl:element> - </div> - </xsl:if> - </xsl:otherwise> - </xsl:choose> + |bridgehead[$bridgehead.in.toc != 0]"/> + + </xsl:call-template> </xsl:template> +<xsl:template name="section.toc.separator"> + <!-- Customize to output something between + section.toc and first output --> +</xsl:template> <!-- ==================================================================== --> <xsl:template name="subtoc"> @@ -274,6 +235,8 @@ </xsl:choose> </xsl:variable> + <xsl:variable name="depth.from.context" select="count(ancestor::*)-count($toc-context/ancestor::*)"/> + <xsl:variable name="subtoc.list"> <xsl:choose> <xsl:when test="$toc.dd.type = ''"> @@ -305,12 +268,14 @@ <xsl:apply-templates select="." mode="title.markup"/> </a> <xsl:if test="$toc.listitem.type = 'li' - and $toc.section.depth > $depth and count($nodes)>0"> + and $toc.section.depth > $depth and count($nodes)>0 + and $toc.max.depth > $depth.from.context"> <xsl:copy-of select="$subtoc.list"/> </xsl:if> </xsl:element> <xsl:if test="$toc.listitem.type != 'li' - and $toc.section.depth > $depth and count($nodes)>0"> + and $toc.section.depth > $depth and count($nodes)>0 + and $toc.max.depth > $depth.from.context"> <xsl:copy-of select="$subtoc.list"/> </xsl:if> </xsl:template> @@ -325,7 +290,7 @@ |article |bibliography|glossary|index |refentry - |bridgehead"/> + |bridgehead[$bridgehead.in.toc != 0]"/> </xsl:call-template> </xsl:template> @@ -337,7 +302,7 @@ <xsl:with-param name="nodes" select="appendix|chapter|article |index|glossary|bibliography |preface|reference|refentry - |bridgehead"/> + |bridgehead[$bridgehead.in.toc != 0]"/> </xsl:call-template> </xsl:template> @@ -346,7 +311,8 @@ <xsl:call-template name="subtoc"> <xsl:with-param name="toc-context" select="$toc-context"/> - <xsl:with-param name="nodes" select="section|sect1|bridgehead"/> + <xsl:with-param name="nodes" select="section|sect1 + |bridgehead[$bridgehead.in.toc != 0]"/> </xsl:call-template> </xsl:template> @@ -354,7 +320,8 @@ <xsl:param name="toc-context" select="."/> <xsl:call-template name="subtoc"> <xsl:with-param name="toc-context" select="$toc-context"/> - <xsl:with-param name="nodes" select="sect2|bridgehead"/> + <xsl:with-param name="nodes" select="sect2 + |bridgehead[$bridgehead.in.toc != 0]"/> </xsl:call-template> </xsl:template> @@ -363,7 +330,8 @@ <xsl:call-template name="subtoc"> <xsl:with-param name="toc-context" select="$toc-context"/> - <xsl:with-param name="nodes" select="sect3|bridgehead"/> + <xsl:with-param name="nodes" select="sect3 + |bridgehead[$bridgehead.in.toc != 0]"/> </xsl:call-template> </xsl:template> @@ -372,7 +340,8 @@ <xsl:call-template name="subtoc"> <xsl:with-param name="toc-context" select="$toc-context"/> - <xsl:with-param name="nodes" select="sect4|bridgehead"/> + <xsl:with-param name="nodes" select="sect4 + |bridgehead[$bridgehead.in.toc != 0]"/> </xsl:call-template> </xsl:template> @@ -381,7 +350,8 @@ <xsl:call-template name="subtoc"> <xsl:with-param name="toc-context" select="$toc-context"/> - <xsl:with-param name="nodes" select="sect5|bridgehead"/> + <xsl:with-param name="nodes" select="sect5 + |bridgehead[$bridgehead.in.toc != 0]"/> </xsl:call-template> </xsl:template> @@ -398,7 +368,8 @@ <xsl:call-template name="subtoc"> <xsl:with-param name="toc-context" select="$toc-context"/> - <xsl:with-param name="nodes" select="section|bridgehead"/> + <xsl:with-param name="nodes" select="section + |bridgehead[$bridgehead.in.toc != 0]"/> </xsl:call-template> </xsl:template> @@ -538,7 +509,8 @@ <xsl:when test="$titles='figure'">ListofFigures</xsl:when> <xsl:when test="$titles='equation'">ListofEquations</xsl:when> <xsl:when test="$titles='example'">ListofExamples</xsl:when> - <xsl:otherwise>ListofUnknowns</xsl:otherwise> + <xsl:when test="$titles='procedure'">ListofProcedures</xsl:when> + <xsl:otherwise>ListofUnknown</xsl:otherwise> </xsl:choose> </xsl:with-param> </xsl:call-template> @@ -554,7 +526,7 @@ </xsl:if> </xsl:template> -<xsl:template match="figure|table|example|equation" mode="toc"> +<xsl:template match="figure|table|example|equation|procedure" mode="toc"> <xsl:param name="toc-context" select="."/> <xsl:element name="{$toc.listitem.type}"> Index: phpdoc/xsl/docbook/html/biblio.xsl diff -u phpdoc/xsl/docbook/html/biblio.xsl:1.1 phpdoc/xsl/docbook/html/biblio.xsl:1.2 --- phpdoc/xsl/docbook/html/biblio.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/biblio.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: biblio.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: biblio.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -26,7 +26,9 @@ <xsl:apply-templates/> - <xsl:call-template name="process.footnotes"/> + <xsl:if test="not(parent::article)"> + <xsl:call-template name="process.footnotes"/> + </xsl:if> </div> </xsl:template> @@ -162,16 +164,30 @@ <xsl:template name="biblioentry.label"> <xsl:param name="node" select="."/> - <xsl:text>[</xsl:text> <xsl:choose> + <xsl:when test="$bibliography.numbered != 0"> + <xsl:text>[</xsl:text> + <xsl:number from="bibliography" count="biblioentry|bibliomixed" + level="any" format="1"/> + <xsl:text>] </xsl:text> + </xsl:when> <xsl:when test="local-name($node/child::*[1]) = 'abbrev'"> + <xsl:text>[</xsl:text> <xsl:apply-templates select="$node/abbrev[1]"/> + <xsl:text>] </xsl:text> </xsl:when> - <xsl:otherwise> + <xsl:when test="$node/@xreflabel"> + <xsl:text>[</xsl:text> + <xsl:value-of select="$node/@xreflabel"/> + <xsl:text>] </xsl:text> + </xsl:when> + <xsl:when test="$node/@id"> + <xsl:text>[</xsl:text> <xsl:value-of select="$node/@id"/> - </xsl:otherwise> + <xsl:text>] </xsl:text> + </xsl:when> + <xsl:otherwise><!-- nop --></xsl:otherwise> </xsl:choose> - <xsl:text>] </xsl:text> </xsl:template> <!-- ==================================================================== --> @@ -662,6 +678,14 @@ </span> </xsl:template> +<xsl:template match="bibliocoverage|biblioid|bibliorelation|bibliosource" + mode="bibliography.mode"> + <span class="{name(.)}"> + <xsl:apply-templates mode="bibliography.mode"/> + <xsl:value-of select="$biblioentry.item.separator"/> + </span> +</xsl:template> + <!-- ==================================================================== --> <xsl:template match="*" mode="bibliomixed.mode"> @@ -1014,6 +1038,13 @@ </xsl:template> <xsl:template match="volumenum" mode="bibliomixed.mode"> + <span class="{name(.)}"> + <xsl:apply-templates mode="bibliomixed.mode"/> + </span> +</xsl:template> + +<xsl:template match="bibliocoverage|biblioid|bibliorelation|bibliosource" + mode="bibliomixed.mode"> <span class="{name(.)}"> <xsl:apply-templates mode="bibliomixed.mode"/> </span> Index: phpdoc/xsl/docbook/html/block.xsl diff -u phpdoc/xsl/docbook/html/block.xsl:1.1 phpdoc/xsl/docbook/html/block.xsl:1.2 --- phpdoc/xsl/docbook/html/block.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/block.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: block.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: block.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -24,8 +24,13 @@ <!-- ==================================================================== --> <xsl:template match="para"> - <xsl:variable name="p"> - <p> + <xsl:call-template name="paragraph"> + <xsl:with-param name="class"> + <xsl:if test="@role and $para.propagates.style != 0"> + <xsl:value-of select="@role"/> + </xsl:if> + </xsl:with-param> + <xsl:with-param name="content"> <xsl:if test="position() = 1 and parent::listitem"> <xsl:call-template name="anchor"> <xsl:with-param name="node" select="parent::listitem"/> @@ -34,6 +39,22 @@ <xsl:call-template name="anchor"/> <xsl:apply-templates/> + </xsl:with-param> + </xsl:call-template> +</xsl:template> + +<xsl:template name="paragraph"> + <xsl:param name="class" select="''"/> + <xsl:param name="content"/> + + <xsl:variable name="p"> + <p> + <xsl:if test="$class != ''"> + <xsl:attribute name="class"> + <xsl:value-of select="$class"/> + </xsl:attribute> + </xsl:if> + <xsl:copy-of select="$content"/> </p> </xsl:variable> @@ -52,16 +73,29 @@ <xsl:template match="simpara"> <!-- see also listitem/simpara in lists.xsl --> <p> + <xsl:if test="@role and $para.propagates.style != 0"> + <xsl:attribute name="class"> + <xsl:value-of select="@role"/> + </xsl:attribute> + </xsl:if> + <xsl:call-template name="anchor"/> <xsl:apply-templates/> </p> </xsl:template> <xsl:template match="formalpara"> - <p> - <xsl:call-template name="anchor"/> - <xsl:apply-templates/> - </p> + <xsl:call-template name="paragraph"> + <xsl:with-param name="class"> + <xsl:if test="@role and $para.propagates.style != 0"> + <xsl:value-of select="@role"/> + </xsl:if> + </xsl:with-param> + <xsl:with-param name="content"> + <xsl:call-template name="anchor"/> + <xsl:apply-templates/> + </xsl:with-param> + </xsl:call-template> </xsl:template> <xsl:template match="formalpara/title"> @@ -89,35 +123,40 @@ <!-- ==================================================================== --> <xsl:template match="blockquote"> - <xsl:call-template name="anchor"/> - <xsl:choose> - <xsl:when test="attribution"> - <table border="0" width="100%" - cellspacing="0" cellpadding="0" class="blockquote" - summary="Block quote"> - <tr> - <td width="10%" valign="top"> </td> - <td width="80%" valign="top"> - <xsl:apply-templates - select="child::*[local-name(.)!='attribution']"/> - </td> - <td width="10%" valign="top"> </td> - </tr> - <tr> - <td colspan="2" align="right" valign="top"> - <xsl:text>--</xsl:text> - <xsl:apply-templates select="attribution"/> - </td> - <td width="10%" valign="top"> </td> - </tr> - </table> - </xsl:when> - <xsl:otherwise> - <blockquote class="blockquote"> - <xsl:apply-templates/> - </blockquote> - </xsl:otherwise> - </xsl:choose> + <div class="{local-name(.)}"> + <xsl:if test="@lang or @xml:lang"> + <xsl:call-template name="language.attribute"/> + </xsl:if> + <xsl:call-template name="anchor"/> + + <xsl:choose> + <xsl:when test="attribution"> + <table border="0" width="100%" + cellspacing="0" cellpadding="0" class="blockquote" + summary="Block quote"> + <tr> + <td width="10%" valign="top"> </td> + <td width="80%" valign="top"> + <xsl:apply-templates select="child::*[local-name(.)!='attribution']"/> + </td> + <td width="10%" valign="top"> </td> + </tr> + <tr> + <td colspan="2" align="right" valign="top"> + <xsl:text>--</xsl:text> + <xsl:apply-templates select="attribution"/> + </td> + <td width="10%" valign="top"> </td> + </tr> + </table> + </xsl:when> + <xsl:otherwise> + <blockquote class="{local-name(.)}"> + <xsl:apply-templates/> + </blockquote> + </xsl:otherwise> + </xsl:choose> + </div> </xsl:template> <xsl:template match="blockquote/title"> @@ -132,7 +171,7 @@ <xsl:template match="epigraph"> <div class="{name(.)}"> - <xsl:apply-templates select="para"/> + <xsl:apply-templates select="para|simpara|formalpara|literallayout"/> <span>--<xsl:apply-templates select="attribution"/></span> </div> </xsl:template> @@ -292,7 +331,7 @@ <xsl:variable name="revnumber" select=".//revnumber"/> <xsl:variable name="revdate" select=".//date"/> <xsl:variable name="revauthor" select=".//authorinitials"/> - <xsl:variable name="revremark" select=".//revremark|../revdescription"/> + <xsl:variable name="revremark" select=".//revremark|.//revdescription"/> <tr> <td align="left"> <xsl:if test="$revnumber"> Index: phpdoc/xsl/docbook/html/callout.xsl diff -u phpdoc/xsl/docbook/html/callout.xsl:1.1 phpdoc/xsl/docbook/html/callout.xsl:1.2 --- phpdoc/xsl/docbook/html/callout.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/callout.xsl Sun Mar 9 09:56:38 2003 @@ -7,7 +7,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: callout.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: callout.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -112,9 +112,6 @@ </xsl:otherwise> </xsl:choose> </xsl:template> - - - <xsl:template match="co" mode="callout-bug"> <xsl:call-template name="callout-bug"> Index: phpdoc/xsl/docbook/html/changebars.xsl diff -u phpdoc/xsl/docbook/html/changebars.xsl:1.1 phpdoc/xsl/docbook/html/changebars.xsl:1.2 --- phpdoc/xsl/docbook/html/changebars.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/changebars.xsl Sun Mar 9 09:56:38 2003 @@ -6,19 +6,19 @@ <xsl:param name="show.revisionflag" select="'1'"/> -<xsl:template name="user.head.content"> +<xsl:template name="system.head.content"> <style type="text/css"> <xsl:text> -div.added { background-color: yellow; } +div.added { background-color: #ffff99; } div.deleted { text-decoration: line-through; background-color: #FF7F7F; } -div.changed { background-color: lime; } +div.changed { background-color: #99ff99; } div.off { } -span.added { background-color: yellow; } +span.added { background-color: #ffff99; } span.deleted { text-decoration: line-through; background-color: #FF7F7F; } -span.changed { background-color: lime; } +span.changed { background-color: #99ff99; } span.off { } </xsl:text> </style> Index: phpdoc/xsl/docbook/html/chunk-common.xsl diff -u phpdoc/xsl/docbook/html/chunk-common.xsl:1.1 phpdoc/xsl/docbook/html/chunk-common.xsl:1.2 --- phpdoc/xsl/docbook/html/chunk-common.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/chunk-common.xsl Sun Mar 9 09:56:38 2003 @@ -89,7 +89,7 @@ </xsl:call-template> </xsl:when> <xsl:when test="local-name($node) = 'section' - and $chunk.section.depth >= count(ancestor::section)+1 + and $chunk.section.depth >= count($node/ancestor::section)+1 and ($chunk.first.sections != 0 or count($node/preceding-sibling::section) > 0)"> <xsl:call-template name="chunk"> @@ -124,15 +124,22 @@ <!-- ==================================================================== --> <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:if test="$fn != ''"> + <xsl:if test="$ischunk != 0 and $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"> @@ -186,14 +193,14 @@ <xsl:value-of select="$filename"/> </xsl:when> - <xsl:when test="name(.)='set'"> + <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="name(.)='book'"> + <xsl:when test="self::book"> <xsl:text>bk</xsl:text> <xsl:number level="any" format="01"/> <xsl:if test="not($recursive)"> @@ -201,7 +208,7 @@ </xsl:if> </xsl:when> - <xsl:when test="name(.)='article'"> + <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::*"> @@ -216,7 +223,7 @@ </xsl:if> </xsl:when> - <xsl:when test="name(.)='preface'"> + <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::*"> @@ -231,7 +238,7 @@ </xsl:if> </xsl:when> - <xsl:when test="name(.)='chapter'"> + <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::*"> @@ -246,7 +253,7 @@ </xsl:if> </xsl:when> - <xsl:when test="name(.)='appendix'"> + <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::*"> @@ -261,7 +268,7 @@ </xsl:if> </xsl:when> - <xsl:when test="name(.)='part'"> + <xsl:when test="self::part"> <xsl:choose> <xsl:when test="/set"> <!-- in a set, make sure we inherit the right book info... --> @@ -280,7 +287,7 @@ </xsl:if> </xsl:when> - <xsl:when test="name(.)='reference'"> + <xsl:when test="self::reference"> <xsl:choose> <xsl:when test="/set"> <!-- in a set, make sure we inherit the right book info... --> @@ -299,7 +306,7 @@ </xsl:if> </xsl:when> - <xsl:when test="name(.)='refentry'"> + <xsl:when test="self::refentry"> <xsl:choose> <xsl:when test="parent::reference"> <xsl:apply-templates mode="recursive-chunk-filename" select="parent::*"> @@ -317,7 +324,7 @@ </xsl:if> </xsl:when> - <xsl:when test="name(.)='colophon'"> + <xsl:when test="self::colophon"> <xsl:choose> <xsl:when test="/set"> <!-- in a set, make sure we inherit the right book info... --> @@ -336,12 +343,12 @@ </xsl:if> </xsl:when> - <xsl:when test="local-name(.) = 'sect1' - or local-name(.) = 'sect2' - or local-name(.) = 'sect3' - or local-name(.) = 'sect4' - or local-name(.) = 'sect5' - or local-name(.) = 'section'"> + <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> @@ -352,18 +359,7 @@ </xsl:if> </xsl:when> - <xsl:when test="name(.)='sect1' or name(.)='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 level="any" format="01" from="preface|chapter|appendix"/> - <xsl:if test="not($recursive)"> - <xsl:value-of select="$html.ext"/> - </xsl:if> - </xsl:when> - - <xsl:when test="name(.)='bibliography'"> + <xsl:when test="self::bibliography"> <xsl:choose> <xsl:when test="/set"> <!-- in a set, make sure we inherit the right book info... --> @@ -382,7 +378,7 @@ </xsl:if> </xsl:when> - <xsl:when test="name(.)='glossary'"> + <xsl:when test="self::glossary"> <xsl:choose> <xsl:when test="/set"> <!-- in a set, make sure we inherit the right book info... --> @@ -401,7 +397,7 @@ </xsl:if> </xsl:when> - <xsl:when test="name(.)='index'"> + <xsl:when test="self::index"> <xsl:choose> <xsl:when test="/set"> <!-- in a set, make sure we inherit the right book info... --> @@ -420,7 +416,7 @@ </xsl:if> </xsl:when> - <xsl:when test="name(.)='setindex'"> + <xsl:when test="self::setindex"> <xsl:text>si</xsl:text> <xsl:number level="any" format="01" from="set"/> <xsl:if test="not($recursive)"> @@ -533,6 +529,7 @@ <xsl:variable name="up" select="parent::*"/> <head> + <xsl:call-template name="system.head.content"/> <xsl:call-template name="head.content"/> <xsl:call-template name="user.head.content"/> @@ -659,61 +656,79 @@ <xsl:template name="header.navigation"> <xsl:param name="prev" select="/foo"/> <xsl:param name="next" select="/foo"/> + <xsl:param name="nav.context"/> + <xsl:variable name="home" select="/*[1]"/> <xsl:variable name="up" select="parent::*"/> - <xsl:if test="$suppress.navigation = '0'"> + <xsl:variable name="row1" select="$navig.showtitles != 0"/> + <xsl:variable name="row2" select="count($prev) > 0 + or (count($up) > 0 + and $up != $home + and $navig.showtitles != 0) + or count($next) > 0"/> + + <xsl:if test="$suppress.navigation = '0' and $suppress.header.navigation = '0'"> <div class="navheader"> - <table width="100%" summary="Navigation header"> - <xsl:if test="$navig.showtitles != 0"> - <tr> - <th colspan="3" align="center"> - <xsl:apply-templates select="." mode="object.title.markup"/> - </th> - </tr> - </xsl:if> - <tr> - <td width="20%" align="left"> - <xsl:if test="count($prev)>0"> - <a accesskey="p"> - <xsl:attribute name="href"> - <xsl:call-template name="href.target"> - <xsl:with-param name="object" select="$prev"/> - </xsl:call-template> - </xsl:attribute> - <xsl:call-template name="navig.content"> - <xsl:with-param name="direction" select="'prev'"/> - </xsl:call-template> - </a> - </xsl:if> - <xsl:text> </xsl:text> - </td> - <th width="60%" align="center"> - <xsl:choose> - <xsl:when test="count($up) > 0 and $up != $home and $navig.showtitles != 0"> - <xsl:apply-templates select="$up" mode="object.title.markup"/> - </xsl:when> - <xsl:otherwise> </xsl:otherwise> - </xsl:choose> - </th> - <td width="20%" align="right"> - <xsl:text> </xsl:text> - <xsl:if test="count($next)>0"> - <a accesskey="n"> - <xsl:attribute name="href"> - <xsl:call-template name="href.target"> - <xsl:with-param name="object" select="$next"/> - </xsl:call-template> - </xsl:attribute> - <xsl:call-template name="navig.content"> - <xsl:with-param name="direction" select="'next'"/> - </xsl:call-template> - </a> - </xsl:if> - </td> - </tr> - </table> - <hr/> + <xsl:if test="$row1 or $row2"> + <table width="100%" summary="Navigation header"> + <xsl:if test="$row1"> + <tr> + <th colspan="3" align="center"> + <xsl:apply-templates select="." mode="object.title.markup"/> + </th> + </tr> + </xsl:if> + + <xsl:if test="$row2"> + <tr> + <td width="20%" align="left"> + <xsl:if test="count($prev)>0"> + <a accesskey="p"> + <xsl:attribute name="href"> + <xsl:call-template name="href.target"> + <xsl:with-param name="object" select="$prev"/> + </xsl:call-template> + </xsl:attribute> + <xsl:call-template name="navig.content"> + <xsl:with-param name="direction" select="'prev'"/> + </xsl:call-template> + </a> + </xsl:if> + <xsl:text> </xsl:text> + </td> + <th width="60%" align="center"> + <xsl:choose> + <xsl:when test="count($up) > 0 + and $up != $home + and $navig.showtitles != 0"> + <xsl:apply-templates select="$up" mode="object.title.markup"/> + </xsl:when> + <xsl:otherwise> </xsl:otherwise> + </xsl:choose> + </th> + <td width="20%" align="right"> + <xsl:text> </xsl:text> + <xsl:if test="count($next)>0"> + <a accesskey="n"> + <xsl:attribute name="href"> + <xsl:call-template name="href.target"> + <xsl:with-param name="object" select="$next"/> + </xsl:call-template> + </xsl:attribute> + <xsl:call-template name="navig.content"> + <xsl:with-param name="direction" select="'next'"/> + </xsl:call-template> + </a> + </xsl:if> + </td> + </tr> + </xsl:if> + </table> + </xsl:if> + <xsl:if test="$header.rule != 0"> + <hr/> + </xsl:if> </div> </xsl:if> </xsl:template> @@ -723,95 +738,133 @@ <xsl:template name="footer.navigation"> <xsl:param name="prev" select="/foo"/> <xsl:param name="next" select="/foo"/> + <xsl:param name="nav.context"/> + <xsl:variable name="home" select="/*[1]"/> <xsl:variable name="up" select="parent::*"/> - <xsl:if test="$suppress.navigation = '0'"> + <xsl:variable name="row1" select="count($prev) > 0 + or count($up) > 0 + or count($next) > 0"/> + + <xsl:variable name="row2" select="($prev and $navig.showtitles != 0) + or ($home != . or $nav.context = 'toc') + or ($chunk.tocs.and.lots != 0 + and $nav.context != 'toc') + or ($next and $navig.showtitles != 0)"/> + + <xsl:if test="$suppress.navigation = '0' and $suppress.footer.navigation = '0'"> <div class="navfooter"> - <hr/> - <table width="100%" summary="Navigation footer"> - <tr> - <td width="40%" align="left"> - <xsl:if test="count($prev)>0"> - <a accesskey="p"> - <xsl:attribute name="href"> - <xsl:call-template name="href.target"> - <xsl:with-param name="object" select="$prev"/> - </xsl:call-template> - </xsl:attribute> - <xsl:call-template name="navig.content"> - <xsl:with-param name="direction" select="'prev'"/> - </xsl:call-template> - </a> - </xsl:if> - <xsl:text> </xsl:text> - </td> - <td width="20%" align="center"> - <xsl:choose> - <xsl:when test="count($up)>0"> - <a accesskey="u"> - <xsl:attribute name="href"> - <xsl:call-template name="href.target"> - <xsl:with-param name="object" select="$up"/> + <xsl:if test="$footer.rule != 0"> + <hr/> + </xsl:if> + + <xsl:if test="$row1 or $row2"> + <table width="100%" summary="Navigation footer"> + <xsl:if test="$row1"> + <tr> + <td width="40%" align="left"> + <xsl:if test="count($prev)>0"> + <a accesskey="p"> + <xsl:attribute name="href"> + <xsl:call-template name="href.target"> + <xsl:with-param name="object" select="$prev"/> + </xsl:call-template> + </xsl:attribute> + <xsl:call-template name="navig.content"> + <xsl:with-param name="direction" select="'prev'"/> </xsl:call-template> - </xsl:attribute> - <xsl:call-template name="navig.content"> - <xsl:with-param name="direction" select="'up'"/> - </xsl:call-template> - </a> - </xsl:when> - <xsl:otherwise> </xsl:otherwise> - </xsl:choose> - </td> - <td width="40%" align="right"> - <xsl:text> </xsl:text> - <xsl:if test="count($next)>0"> - <a accesskey="n"> - <xsl:attribute name="href"> - <xsl:call-template name="href.target"> - <xsl:with-param name="object" select="$next"/> - </xsl:call-template> - </xsl:attribute> - <xsl:call-template name="navig.content"> - <xsl:with-param name="direction" select="'next'"/> - </xsl:call-template> - </a> - </xsl:if> - </td> - </tr> - - <tr> - <td width="40%" align="left" valign="top"> - <xsl:if test="$navig.showtitles != 0"> - <xsl:apply-templates select="$prev" mode="object.title.markup"/> - </xsl:if> - <xsl:text> </xsl:text> - </td> - <td width="20%" align="center"> - <xsl:choose> - <xsl:when test="$home != ."> - <a accesskey="h"> - <xsl:attribute name="href"> - <xsl:call-template name="href.target"> - <xsl:with-param name="object" select="$home"/> + </a> + </xsl:if> + <xsl:text> </xsl:text> + </td> + <td width="20%" align="center"> + <xsl:choose> + <xsl:when test="count($up)>0"> + <a accesskey="u"> + <xsl:attribute name="href"> + <xsl:call-template name="href.target"> + <xsl:with-param name="object" select="$up"/> + </xsl:call-template> + </xsl:attribute> + <xsl:call-template name="navig.content"> + <xsl:with-param name="direction" select="'up'"/> + </xsl:call-template> + </a> + </xsl:when> + <xsl:otherwise> </xsl:otherwise> + </xsl:choose> + </td> + <td width="40%" align="right"> + <xsl:text> </xsl:text> + <xsl:if test="count($next)>0"> + <a accesskey="n"> + <xsl:attribute name="href"> + <xsl:call-template name="href.target"> + <xsl:with-param name="object" select="$next"/> + </xsl:call-template> + </xsl:attribute> + <xsl:call-template name="navig.content"> + <xsl:with-param name="direction" select="'next'"/> </xsl:call-template> - </xsl:attribute> - <xsl:call-template name="navig.content"> - <xsl:with-param name="direction" select="'home'"/> - </xsl:call-template> - </a> - </xsl:when> - <xsl:otherwise> </xsl:otherwise> - </xsl:choose> - </td> - <td width="40%" align="right" valign="top"> - <xsl:text> </xsl:text> - <xsl:if test="$navig.showtitles != 0"> - <xsl:apply-templates select="$next" mode="object.title.markup"/> - </xsl:if> - </td> - </tr> - </table> + </a> + </xsl:if> + </td> + </tr> + </xsl:if> + + <xsl:if test="$row2"> + <tr> + <td width="40%" align="left" valign="top"> + <xsl:if test="$navig.showtitles != 0"> + <xsl:apply-templates select="$prev" mode="object.title.markup"/> + </xsl:if> + <xsl:text> </xsl:text> + </td> + <td width="20%" align="center"> + <xsl:choose> + <xsl:when test="$home != . or $nav.context = 'toc'"> + <a accesskey="h"> + <xsl:attribute name="href"> + <xsl:call-template name="href.target"> + <xsl:with-param name="object" select="$home"/> + </xsl:call-template> + </xsl:attribute> + <xsl:call-template name="navig.content"> + <xsl:with-param name="direction" select="'home'"/> + </xsl:call-template> + </a> + <xsl:if test="$chunk.tocs.and.lots != 0 and $nav.context != 'toc'"> + <xsl:text> | </xsl:text> + </xsl:if> + </xsl:when> + <xsl:otherwise> </xsl:otherwise> + </xsl:choose> + + <xsl:if test="$chunk.tocs.and.lots != 0 and $nav.context != 'toc'"> + <a accesskey="t"> + <xsl:attribute name="href"> + <xsl:apply-templates select="/*[1]" + mode="recursive-chunk-filename"/> + <xsl:text>-toc</xsl:text> + <xsl:value-of select="$html.ext"/> + </xsl:attribute> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'nav-toc'"/> + </xsl:call-template> + </a> + </xsl:if> + </td> + <td width="40%" align="right" valign="top"> + <xsl:text> </xsl:text> + <xsl:if test="$navig.showtitles != 0"> + <xsl:apply-templates select="$next" mode="object.title.markup"/> + </xsl:if> + </td> + </tr> + </xsl:if> + </table> + </xsl:if> </div> </xsl:if> </xsl:template> @@ -868,8 +921,12 @@ <!-- ==================================================================== --> <xsl:template name="chunk-element-content"> - <xsl:param name="prev"></xsl:param> - <xsl:param name="next"></xsl:param> + <xsl:param name="prev"/> + <xsl:param name="next"/> + <xsl:param name="nav.context"/> + <xsl:param name="content"> + <xsl:apply-imports/> + </xsl:param> <html> <xsl:call-template name="html.head"> @@ -884,17 +941,19 @@ <xsl:call-template name="header.navigation"> <xsl:with-param name="prev" select="$prev"/> <xsl:with-param name="next" select="$next"/> + <xsl:with-param name="nav.context" select="$nav.context"/> </xsl:call-template> <xsl:call-template name="user.header.content"/> - <xsl:apply-imports/> + <xsl:copy-of select="$content"/> <xsl:call-template name="user.footer.content"/> <xsl:call-template name="footer.navigation"> <xsl:with-param name="prev" select="$prev"/> <xsl:with-param name="next" select="$next"/> + <xsl:with-param name="nav.context" select="$nav.context"/> </xsl:call-template> <xsl:call-template name="user.footer.navigation"/> Index: phpdoc/xsl/docbook/html/chunk.xsl diff -u phpdoc/xsl/docbook/html/chunk.xsl:1.1 phpdoc/xsl/docbook/html/chunk.xsl:1.2 --- phpdoc/xsl/docbook/html/chunk.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/chunk.xsl Sun Mar 9 09:56:38 2003 @@ -1,7 +1,7 @@ <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" + xmlns:exsl="http://exslt.org/common" version="1.0" - exclude-result-prefixes="doc"> + exclude-result-prefixes="exsl"> <xsl:import href="docbook.xsl"/> <xsl:import href="chunk-common.xsl"/> @@ -9,22 +9,102 @@ <xsl:param name="onechunk" select="0"/> <xsl:param name="refentry.separator" select="0"/> +<xsl:param name="chunk.fast" select="0"/> + +<xsl:key name="genid" match="*" use="generate-id()"/> <!-- ==================================================================== --> -<xsl:template name="process-chunk-element"> +<xsl:variable name="chunk.hierarchy"> + <xsl:if test="$chunk.fast != 0"> + <xsl:choose> + <xsl:when test="function-available('exsl:node-set')"> + <xsl:message>Computing chunks...</xsl:message> + <xsl:apply-templates select="/*" mode="find.chunks"/> + </xsl:when> + <xsl:otherwise> + <xsl:message> + <xsl:text>Fast chunking requires exsl:node-set(). </xsl:text> + <xsl:text>Using "slow" chunking.</xsl:text> + </xsl:message> + </xsl:otherwise> + </xsl:choose> + </xsl:if> +</xsl:variable> + +<xsl:template match="*" mode="find.chunks"> + <xsl:variable name="chunk"> + <xsl:call-template name="chunk"/> + </xsl:variable> + <xsl:choose> - <xsl:when test="$onechunk != 0 and not(parent::*)"> - <xsl:call-template name="chunk-all-sections"/> - </xsl:when> - <xsl:when test="$onechunk != 0"> - <xsl:apply-imports/> + <xsl:when test="$chunk != 0"> + <div class="{local-name(.)}" id="{generate-id()}"> + <xsl:apply-templates select="*" mode="find.chunks"/> + </div> </xsl:when> - <xsl:when test="$chunk.first.sections = 0"> - <xsl:call-template name="chunk-first-section-with-parent"/> + <xsl:otherwise> + <xsl:apply-templates select="*" mode="find.chunks"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ==================================================================== --> + +<xsl:template name="process-chunk-element"> + <xsl:param name="content"> + <xsl:apply-imports/> + </xsl:param> + + <xsl:choose> + <xsl:when test="$chunk.fast != 0 and function-available('exsl:node-set')"> + <xsl:variable name="chunks" select="exsl:node-set($chunk.hierarchy)//div"/> + <xsl:variable name="genid" select="generate-id()"/> + + <xsl:variable name="div" select="$chunks[@id=$genid]"/> + + <xsl:variable name="prevdiv" + select="($div/preceding-sibling::div|$div/preceding::div|$div/parent::div)[last()]"/> + <xsl:variable name="prev" select="key('genid', $prevdiv/@id)"/> + + <xsl:variable name="nextdiv" + select="($div/following-sibling::div|$div/following::div|$div/div)[1]"/> + <xsl:variable name="next" select="key('genid', $nextdiv/@id)"/> + + <xsl:choose> + <xsl:when test="$onechunk != 0 and parent::*"> + <xsl:copy-of select="$content"/> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="process-chunk"> + <xsl:with-param name="prev" select="$prev"/> + <xsl:with-param name="next" select="$next"/> + <xsl:with-param name="content" select="$content"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> </xsl:when> <xsl:otherwise> - <xsl:call-template name="chunk-all-sections"/> + <xsl:choose> + <xsl:when test="$onechunk != 0 and not(parent::*)"> + <xsl:call-template name="chunk-all-sections"> + <xsl:with-param name="content" select="$content"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$onechunk != 0"> + <xsl:copy-of select="$content"/> + </xsl:when> + <xsl:when test="$chunk.first.sections = 0"> + <xsl:call-template name="chunk-first-section-with-parent"> + <xsl:with-param name="content" select="$content"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="chunk-all-sections"> + <xsl:with-param name="content" select="$content"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> </xsl:otherwise> </xsl:choose> </xsl:template> @@ -32,6 +112,9 @@ <xsl:template name="process-chunk"> <xsl:param name="prev" select="."/> <xsl:param name="next" select="."/> + <xsl:param name="content"> + <xsl:apply-imports/> + </xsl:param> <xsl:variable name="ischunk"> <xsl:call-template name="chunk"/> @@ -64,6 +147,7 @@ <xsl:call-template name="chunk-element-content"> <xsl:with-param name="prev" select="$prev"/> <xsl:with-param name="next" select="$next"/> + <xsl:with-param name="content" select="$content"/> </xsl:call-template> </xsl:with-param> <xsl:with-param name="quiet" select="$chunk.quietly"/> @@ -71,6 +155,10 @@ </xsl:template> <xsl:template name="chunk-first-section-with-parent"> + <xsl:param name="content"> + <xsl:apply-imports/> + </xsl:param> + <!-- These xpath expressions are really hairy. The trick is to pick sections --> <!-- that are not first children and are not the children of first children --> @@ -254,10 +342,15 @@ <xsl:call-template name="process-chunk"> <xsl:with-param name="prev" select="$prev"/> <xsl:with-param name="next" select="$next"/> + <xsl:with-param name="content" select="$content"/> </xsl:call-template> </xsl:template> <xsl:template name="chunk-all-sections"> + <xsl:param name="content"> + <xsl:apply-imports/> + </xsl:param> + <xsl:variable name="prev-v1" select="(preceding::sect1[$chunk.section.depth > 0][1] |preceding::sect2[$chunk.section.depth > 1][1] @@ -349,6 +442,7 @@ <xsl:call-template name="process-chunk"> <xsl:with-param name="prev" select="$prev"/> <xsl:with-param name="next" select="$next"/> + <xsl:with-param name="content" select="$content"/> </xsl:call-template> </xsl:template> @@ -366,25 +460,40 @@ </xsl:message> </xsl:when> <xsl:otherwise> - <xsl:apply-templates select="key('id',$rootid)"/> - <xsl:if test="$tex.math.in.alt != ''"> - <xsl:apply-templates select="key('id',$rootid)" mode="collect.tex.math"/> + <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="$generate.manifest != 0"> - <xsl:call-template name="generate.manifest"> - <xsl:with-param name="node" select="key('id',$rootid)"/> - </xsl:call-template> + <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:apply-templates select="/" mode="process.root"/> - <xsl:if test="$tex.math.in.alt != ''"> - <xsl:apply-templates select="/" mode="collect.tex.math"/> + <xsl:if test="$collect.xref.targets = 'yes' or + $collect.xref.targets = 'only'"> + <xsl:apply-templates select="/" mode="collect.targets"/> </xsl:if> - <xsl:if test="$generate.manifest != 0"> - <xsl:call-template name="generate.manifest"/> + <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:if> </xsl:if> </xsl:otherwise> </xsl:choose> @@ -394,6 +503,8 @@ <xsl:apply-templates select="."/> </xsl:template> +<!-- ====================================================================== --> + <xsl:template match="set|book|part|preface|chapter|appendix |article |reference|refentry @@ -441,6 +552,84 @@ <!-- ==================================================================== --> +<xsl:template name="make.lots"> + <xsl:param name="toc.params" select="''"/> + <xsl:param name="toc"/> + + <xsl:variable name="lots"> + <xsl:if test="contains($toc.params, 'toc')"> + <xsl:copy-of select="$toc"/> + </xsl:if> + + <xsl:if test="contains($toc.params, 'figure')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'figure'"/> + <xsl:with-param name="nodes" select=".//figure"/> + </xsl:call-template> + </xsl:if> + + <xsl:if test="contains($toc.params, 'table')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'table'"/> + <xsl:with-param name="nodes" select=".//table"/> + </xsl:call-template> + </xsl:if> + + <xsl:if test="contains($toc.params, 'example')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'example'"/> + <xsl:with-param name="nodes" select=".//example"/> + </xsl:call-template> + </xsl:if> + + <xsl:if test="contains($toc.params, 'equation')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'equation'"/> + <xsl:with-param name="nodes" select=".//equation[title]"/> + </xsl:call-template> + </xsl:if> + </xsl:variable> + + <xsl:if test="string($lots) != ''"> + <xsl:choose> + <xsl:when test="$chunk.tocs.and.lots != 0 and not(parent::*)"> + <xsl:call-template name="write.chunk"> + <xsl:with-param name="filename"> + <xsl:call-template name="make-relative-filename"> + <xsl:with-param name="base.dir" select="$base.dir"/> + <xsl:with-param name="base.name"> + <xsl:call-template name="dbhtml-dir"/> + <xsl:apply-templates select="." mode="recursive-chunk-filename"/> + <xsl:text>-toc</xsl:text> + <xsl:value-of select="$html.ext"/> + </xsl:with-param> + </xsl:call-template> + </xsl:with-param> + <xsl:with-param name="content"> + <xsl:call-template name="chunk-element-content"> + <xsl:with-param name="prev" select="/foo"/> + <xsl:with-param name="next" select="/foo"/> + <xsl:with-param name="nav.context" select="'toc'"/> + <xsl:with-param name="content"> + <h1> + <xsl:apply-templates select="." mode="object.title.markup"/> + </h1> + <xsl:copy-of select="$lots"/> + </xsl:with-param> + </xsl:call-template> + </xsl:with-param> + <xsl:with-param name="quiet" select="$chunk.quietly"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:copy-of select="$lots"/> + </xsl:otherwise> + </xsl:choose> + </xsl:if> +</xsl:template> + +<!-- ==================================================================== --> + <xsl:template name="in.other.chunk"> <xsl:param name="chunk" select="."/> <xsl:param name="node" select="."/> @@ -620,5 +809,7 @@ <xsl:call-template name="process.footnotes"/> </xsl:if> </xsl:template> + +<!-- ====================================================================== --> </xsl:stylesheet> Index: phpdoc/xsl/docbook/html/chunker.xsl diff -u phpdoc/xsl/docbook/html/chunker.xsl:1.1 phpdoc/xsl/docbook/html/chunker.xsl:1.2 --- phpdoc/xsl/docbook/html/chunker.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/chunker.xsl Sun Mar 9 09:56:38 2003 @@ -12,6 +12,18 @@ <!-- exsl:document, saxon:output, or xalanredirect:write --> <!-- Note: Only Saxon 6.4.2 or later is supported. --> +<xsl:param name="chunker.output.method" select="'html'"/> +<xsl:param name="chunker.output.encoding" select="'ISO-8859-1'"/> +<xsl:param name="chunker.output.indent" select="'no'"/> +<xsl:param name="chunker.output.omit-xml-declaration" select="'no'"/> +<xsl:param name="chunker.output.standalone" select="'no'"/> +<xsl:param name="chunker.output.doctype-public" select="''"/> +<xsl:param name="chunker.output.doctype-system" select="''"/> +<xsl:param name="chunker.output.media-type" select="''"/> +<xsl:param name="chunker.output.cdata-section-elements" select="''"/> + +<xsl:param name="saxon.character.representation" select="'entity;decimal'"/> + <!-- ==================================================================== --> <xsl:template name="make-relative-filename"> @@ -50,12 +62,22 @@ <xsl:template name="write.chunk"> <xsl:param name="filename" select="''"/> - <xsl:param name="method" select="$output.method"/> - <xsl:param name="encoding" select="$default.encoding"/> - <xsl:param name="indent" select="'no'"/> - <xsl:param name="content" select="''"/> <xsl:param name="quiet" select="0"/> + <xsl:param name="method" select="$chunker.output.method"/> + <xsl:param name="encoding" select="$chunker.output.encoding"/> + <xsl:param name="indent" select="$chunker.output.indent"/> + <xsl:param name="omit-xml-declaration" + select="$chunker.output.omit-xml-declaration"/> + <xsl:param name="standalone" select="$chunker.output.standalone"/> + <xsl:param name="doctype-public" select="$chunker.output.doctype-public"/> + <xsl:param name="doctype-system" select="$chunker.output.doctype-system"/> + <xsl:param name="media-type" select="$chunker.output.media-type"/> + <xsl:param name="cdata-section-elements" + select="$chunker.output.cdata-section-elements"/> + + <xsl:param name="content"/> + <xsl:if test="$quiet = 0"> <xsl:message> <xsl:text>Writing </xsl:text> @@ -74,28 +96,248 @@ <xsl:choose> <xsl:when test="element-available('exsl:document')"> - <exsl:document href="{$filename}" - method="{$method}" - encoding="{$encoding}" - indent="{$indent}"> - <xsl:copy-of select="$content"/> - </exsl:document> + <xsl:choose> + <!-- Handle the permutations ... --> + <xsl:when test="$media-type != ''"> + <xsl:choose> + <xsl:when test="$doctype-public != '' and $doctype-system != ''"> + <exsl:document href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + media-type="{$media-type}" + doctype-public="{$doctype-public}" + doctype-system="{$doctype-system}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </exsl:document> + </xsl:when> + <xsl:when test="$doctype-public != '' and $doctype-system = ''"> + <exsl:document href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + media-type="{$media-type}" + doctype-public="{$doctype-public}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </exsl:document> + </xsl:when> + <xsl:when test="$doctype-public = '' and $doctype-system != ''"> + <exsl:document href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + media-type="{$media-type}" + doctype-system="{$doctype-system}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </exsl:document> + </xsl:when> + <xsl:otherwise><!-- $doctype-public = '' and $doctype-system = ''"> --> + <exsl:document href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + media-type="{$media-type}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </exsl:document> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:otherwise> + <xsl:choose> + <xsl:when test="$doctype-public != '' and $doctype-system != ''"> + <exsl:document href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + doctype-public="{$doctype-public}" + doctype-system="{$doctype-system}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </exsl:document> + </xsl:when> + <xsl:when test="$doctype-public != '' and $doctype-system = ''"> + <exsl:document href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + doctype-public="{$doctype-public}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </exsl:document> + </xsl:when> + <xsl:when test="$doctype-public = '' and $doctype-system != ''"> + <exsl:document href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + doctype-system="{$doctype-system}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </exsl:document> + </xsl:when> + <xsl:otherwise><!-- $doctype-public = '' and $doctype-system = ''"> --> + <exsl:document href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </exsl:document> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> </xsl:when> + <xsl:when test="element-available('saxon:output')"> - <saxon:output href="{$filename}" - method="{$method}" - encoding="{$encoding}" - indent="{$indent}" - saxon:character-representation="{$saxon.character.representation}"> - <xsl:copy-of select="$content"/> - </saxon:output> + <xsl:choose> + <!-- Handle the permutations ... --> + <xsl:when test="$media-type != ''"> + <xsl:choose> + <xsl:when test="$doctype-public != '' and $doctype-system != ''"> + <saxon:output saxon:character-representation="{$saxon.character.representation}" + href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + media-type="{$media-type}" + doctype-public="{$doctype-public}" + doctype-system="{$doctype-system}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </saxon:output> + </xsl:when> + <xsl:when test="$doctype-public != '' and $doctype-system = ''"> + <saxon:output saxon:character-representation="{$saxon.character.representation}" + href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + media-type="{$media-type}" + doctype-public="{$doctype-public}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </saxon:output> + </xsl:when> + <xsl:when test="$doctype-public = '' and $doctype-system != ''"> + <saxon:output saxon:character-representation="{$saxon.character.representation}" + href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + media-type="{$media-type}" + doctype-system="{$doctype-system}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </saxon:output> + </xsl:when> + <xsl:otherwise><!-- $doctype-public = '' and $doctype-system = ''"> --> + <saxon:output saxon:character-representation="{$saxon.character.representation}" + href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + media-type="{$media-type}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </saxon:output> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:otherwise> + <xsl:choose> + <xsl:when test="$doctype-public != '' and $doctype-system != ''"> + <saxon:output saxon:character-representation="{$saxon.character.representation}" + href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + doctype-public="{$doctype-public}" + doctype-system="{$doctype-system}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </saxon:output> + </xsl:when> + <xsl:when test="$doctype-public != '' and $doctype-system = ''"> + <saxon:output saxon:character-representation="{$saxon.character.representation}" + href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + doctype-public="{$doctype-public}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </saxon:output> + </xsl:when> + <xsl:when test="$doctype-public = '' and $doctype-system != ''"> + <saxon:output saxon:character-representation="{$saxon.character.representation}" + href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + doctype-system="{$doctype-system}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </saxon:output> + </xsl:when> + <xsl:otherwise><!-- $doctype-public = '' and $doctype-system = ''"> --> + <saxon:output saxon:character-representation="{$saxon.character.representation}" + href="{$filename}" + method="{$method}" + encoding="{$encoding}" + indent="{$indent}" + omit-xml-declaration="{$omit-xml-declaration}" + cdata-section-elements="{$cdata-section-elements}" + standalone="{$standalone}"> + <xsl:copy-of select="$content"/> + </saxon:output> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> </xsl:when> + <xsl:when test="element-available('xalanredirect:write')"> <!-- Xalan uses xalanredirect --> <xalanredirect:write file="{$filename}"> <xsl:copy-of select="$content"/> </xalanredirect:write> </xsl:when> + <xsl:otherwise> <!-- it doesn't matter since we won't be making chunks... --> <xsl:message terminate="yes"> @@ -109,77 +351,59 @@ <xsl:template name="write.chunk.with.doctype"> <xsl:param name="filename" select="''"/> - <xsl:param name="method" select="$output.method"/> - <xsl:param name="encoding" select="$default.encoding"/> - <xsl:param name="indent" select="'no'"/> - <xsl:param name="doctype-public" select="''"/> - <xsl:param name="doctype-system" select="''"/> - <xsl:param name="content" select="''"/> <xsl:param name="quiet" select="0"/> - <xsl:if test="$quiet = 0"> - <xsl:message> - <xsl:text>Writing </xsl:text> - <xsl:value-of select="$filename"/> - <xsl:if test="name(.) != ''"> - <xsl:text> for </xsl:text> - <xsl:value-of select="name(.)"/> - </xsl:if> - </xsl:message> - </xsl:if> + <xsl:param name="method" select="$chunker.output.method"/> + <xsl:param name="encoding" select="$chunker.output.encoding"/> + <xsl:param name="indent" select="$chunker.output.indent"/> + <xsl:param name="omit-xml-declaration" + select="$chunker.output.omit-xml-declaration"/> + <xsl:param name="standalone" select="$chunker.output.standalone"/> + <xsl:param name="doctype-public" select="$chunker.output.doctype-public"/> + <xsl:param name="doctype-system" select="$chunker.output.doctype-system"/> + <xsl:param name="media-type" select="$chunker.output.media-type"/> + <xsl:param name="cdata-section-elements" + select="$chunker.output.cdata-section-elements"/> + <xsl:param name="content"/> - <xsl:choose> - <xsl:when test="element-available('exsl:document')"> - <exsl:document href="{$filename}" - method="{$method}" - encoding="{$encoding}" - indent="{$indent}" - doctype-public="{$doctype-public}" - doctype-system="{$doctype-system}"> - <xsl:copy-of select="$content"/> - </exsl:document> - </xsl:when> - <xsl:when test="element-available('saxon:output')"> - <!-- Saxon uses saxon:output --> - <saxon:output href="{$filename}" - method="{$method}" - encoding="{$encoding}" - indent="{$indent}" - doctype-public="{$doctype-public}" - doctype-system="{$doctype-system}" - saxon:character-representation="{$saxon.character.representation}"> - <xsl:copy-of select="$content"/> - </saxon:output> - </xsl:when> - <xsl:when test="element-available('xalanredirect:write')"> - <!-- Xalan uses xalanredirect --> - <xalanredirect:write file="{$filename}"> - <xsl:copy-of select="$content"/> - </xalanredirect:write> - </xsl:when> - <xsl:otherwise> - <!-- it doesn't matter since we won't be making chunks... --> - <xsl:message terminate="yes"> - <xsl:text>Can't make chunks with </xsl:text> - <xsl:value-of select="system-property('xsl:vendor')"/> - <xsl:text>'s processor.</xsl:text> - </xsl:message> - </xsl:otherwise> - </xsl:choose> + <xsl:call-template name="write.chunk"> + <xsl:with-param name="filename" select="$filename"/> + <xsl:with-param name="quiet" select="$quiet"/> + <xsl:with-param name="method" select="$method"/> + <xsl:with-param name="encoding" select="$encoding"/> + <xsl:with-param name="indent" select="$indent"/> + <xsl:with-param name="omit-xml-declaration" select="$omit-xml-declaration"/> + <xsl:with-param name="standalone" select="$standalone"/> + <xsl:with-param name="doctype-public" select="$doctype-public"/> + <xsl:with-param name="doctype-system" select="$doctype-system"/> + <xsl:with-param name="media-type" select="$media-type"/> + <xsl:with-param name="cdata-section-elements" select="$cdata-section-elements"/> + <xsl:with-param name="content" select="$content"/> + </xsl:call-template> </xsl:template> <xsl:template name="write.text.chunk"> <xsl:param name="filename" select="''"/> + <xsl:param name="quiet" select="0"/> <xsl:param name="method" select="'text'"/> - <xsl:param name="content" select="''"/> - <xsl:param name="encoding" select="'iso-8859-1'"/> + <xsl:param name="encoding" select="$chunker.output.encoding"/> + <xsl:param name="media-type" select="$chunker.output.media-type"/> + <xsl:param name="content"/> + <xsl:call-template name="write.chunk"> <xsl:with-param name="filename" select="$filename"/> + <xsl:with-param name="quiet" select="$quiet"/> <xsl:with-param name="method" select="$method"/> - <xsl:with-param name="content" select="$content"/> <xsl:with-param name="encoding" select="$encoding"/> - <xsl:with-param name="quiet" select="$chunk.quietly"/> + <xsl:with-param name="indent" select="'no'"/> + <xsl:with-param name="omit-xml-declaration" select="'no'"/> + <xsl:with-param name="standalone" select="'no'"/> + <xsl:with-param name="doctype-public"/> + <xsl:with-param name="doctype-system"/> + <xsl:with-param name="media-type" select="$media-type"/> + <xsl:with-param name="cdata-section-elements"/> + <xsl:with-param name="content" select="$content"/> </xsl:call-template> </xsl:template> Index: phpdoc/xsl/docbook/html/component.xsl diff -u phpdoc/xsl/docbook/html/component.xsl:1.1 phpdoc/xsl/docbook/html/component.xsl:1.2 --- phpdoc/xsl/docbook/html/component.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/component.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: component.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: component.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -54,6 +54,7 @@ <xsl:template match="dedication" mode="dedication"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:call-template name="dedication.titlepage"/> <xsl:apply-templates/> <xsl:call-template name="process.footnotes"/> @@ -81,6 +82,7 @@ <xsl:template match="colophon"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:if test="$generate.id.attributes != 0"> <xsl:attribute name="id"> <xsl:call-template name="object.id"/> @@ -102,6 +104,7 @@ <xsl:template match="preface"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:if test="$generate.id.attributes != 0"> <xsl:attribute name="id"> <xsl:call-template name="object.id"/> @@ -118,7 +121,10 @@ </xsl:variable> <xsl:if test="contains($toc.params, 'toc')"> - <xsl:call-template name="component.toc"/> + <xsl:call-template name="component.toc"> + <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/> + </xsl:call-template> + <xsl:call-template name="component.toc.separator"/> </xsl:if> <xsl:apply-templates/> <xsl:call-template name="process.footnotes"/> @@ -149,6 +155,7 @@ <xsl:template match="chapter"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:if test="$generate.id.attributes != 0"> <xsl:attribute name="id"> <xsl:call-template name="object.id"/> @@ -164,7 +171,10 @@ </xsl:call-template> </xsl:variable> <xsl:if test="contains($toc.params, 'toc')"> - <xsl:call-template name="component.toc"/> + <xsl:call-template name="component.toc"> + <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/> + </xsl:call-template> + <xsl:call-template name="component.toc.separator"/> </xsl:if> <xsl:apply-templates/> <xsl:call-template name="process.footnotes"/> @@ -194,45 +204,51 @@ <!-- ==================================================================== --> <xsl:template match="appendix"> + <xsl:variable name="ischunk"> + <xsl:call-template name="chunk"/> + </xsl:variable> + <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:if test="$generate.id.attributes != 0"> <xsl:attribute name="id"> <xsl:call-template name="object.id"/> </xsl:attribute> </xsl:if> - <xsl:call-template name="component.separator"/> - <xsl:call-template name="appendix.titlepage"/> + <xsl:choose> + <xsl:when test="parent::article and $ischunk = 0"> + <xsl:call-template name="section.heading"> + <xsl:with-param name="level" select="1"/> + <xsl:with-param name="title"> + <xsl:apply-templates select="." mode="object.title.markup"/> + </xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="component.separator"/> + <xsl:call-template name="appendix.titlepage"/> + </xsl:otherwise> + </xsl:choose> <xsl:variable name="toc.params"> <xsl:call-template name="find.path.params"> <xsl:with-param name="table" select="normalize-space($generate.toc)"/> </xsl:call-template> </xsl:variable> + <xsl:if test="contains($toc.params, 'toc')"> - <xsl:call-template name="component.toc"/> + <xsl:call-template name="component.toc"> + <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/> + </xsl:call-template> + <xsl:call-template name="component.toc.separator"/> </xsl:if> + <xsl:apply-templates/> - <xsl:call-template name="process.footnotes"/> - </div> -</xsl:template> -<xsl:template match="article/appendix"> - <div class="{name(.)}"> - <xsl:if test="$generate.id.attributes != 0"> - <xsl:attribute name="id"> - <xsl:call-template name="object.id"/> - </xsl:attribute> + <xsl:if test="not(parent::article) or $ischunk != 0"> + <xsl:call-template name="process.footnotes"/> </xsl:if> - - <xsl:call-template name="section.heading"> - <xsl:with-param name="level" select="2"/> - <xsl:with-param name="title"> - <xsl:apply-templates select="." mode="object.title.markup"/> - </xsl:with-param> - </xsl:call-template> - - <xsl:apply-templates/> </div> </xsl:template> @@ -328,6 +344,7 @@ <xsl:template match="article"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:if test="$generate.id.attributes != 0"> <xsl:attribute name="id"> <xsl:call-template name="object.id"/> @@ -341,9 +358,16 @@ <xsl:with-param name="table" select="normalize-space($generate.toc)"/> </xsl:call-template> </xsl:variable> - <xsl:if test="contains($toc.params, 'toc')"> - <xsl:call-template name="component.toc"/> - </xsl:if> + + <xsl:call-template name="make.lots"> + <xsl:with-param name="toc.params" select="$toc.params"/> + <xsl:with-param name="toc"> + <xsl:call-template name="component.toc"> + <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/> + </xsl:call-template> + </xsl:with-param> + </xsl:call-template> + <xsl:apply-templates/> <xsl:call-template name="process.footnotes"/> </div> Index: phpdoc/xsl/docbook/html/division.xsl diff -u phpdoc/xsl/docbook/html/division.xsl:1.1 phpdoc/xsl/docbook/html/division.xsl:1.2 --- phpdoc/xsl/docbook/html/division.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/division.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: division.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: division.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -16,6 +16,7 @@ <xsl:template match="set"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:if test="$generate.id.attributes != 0"> <xsl:attribute name="id"> <xsl:call-template name="object.id"/> @@ -24,14 +25,17 @@ <xsl:call-template name="set.titlepage"/> - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - <xsl:if test="contains($toc.params, 'toc')"> - <xsl:call-template name="set.toc"/> - </xsl:if> + <xsl:call-template name="make.lots"> + <xsl:with-param name="toc.params"> + <xsl:call-template name="find.path.params"> + <xsl:with-param name="table" select="normalize-space($generate.toc)"/> + </xsl:call-template> + </xsl:with-param> + <xsl:with-param name="toc"> + <xsl:call-template name="set.toc"/> + </xsl:with-param> + </xsl:call-template> + <xsl:apply-templates/> </div> </xsl:template> @@ -45,6 +49,7 @@ <xsl:template match="book"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:if test="$generate.id.attributes != 0"> <xsl:attribute name="id"> <xsl:call-template name="object.id"/> @@ -52,45 +57,19 @@ </xsl:if> <xsl:call-template name="book.titlepage"/> - <xsl:apply-templates select="dedication" mode="dedication"/> - - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - <xsl:if test="contains($toc.params, 'toc')"> - <xsl:call-template name="division.toc"/> - </xsl:if> - - <xsl:if test="contains($toc.params, 'figure')"> - <xsl:call-template name="list.of.titles"> - <xsl:with-param name="titles" select="'figure'"/> - <xsl:with-param name="nodes" select=".//figure"/> - </xsl:call-template> - </xsl:if> - - <xsl:if test="contains($toc.params, 'table')"> - <xsl:call-template name="list.of.titles"> - <xsl:with-param name="titles" select="'table'"/> - <xsl:with-param name="nodes" select=".//table"/> - </xsl:call-template> - </xsl:if> - - <xsl:if test="contains($toc.params, 'example')"> - <xsl:call-template name="list.of.titles"> - <xsl:with-param name="titles" select="'example'"/> - <xsl:with-param name="nodes" select=".//example"/> - </xsl:call-template> - </xsl:if> + <xsl:apply-templates select="dedication" mode="dedication"/> - <xsl:if test="contains($toc.params, 'equation')"> - <xsl:call-template name="list.of.titles"> - <xsl:with-param name="titles" select="'equation'"/> - <xsl:with-param name="nodes" select=".//equation[title]"/> - </xsl:call-template> - </xsl:if> + <xsl:call-template name="make.lots"> + <xsl:with-param name="toc.params"> + <xsl:call-template name="find.path.params"> + <xsl:with-param name="table" select="normalize-space($generate.toc)"/> + </xsl:call-template> + </xsl:with-param> + <xsl:with-param name="toc"> + <xsl:call-template name="division.toc"/> + </xsl:with-param> + </xsl:call-template> <xsl:apply-templates/> </div> @@ -105,6 +84,7 @@ <xsl:template match="part"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:if test="$generate.id.attributes != 0"> <xsl:attribute name="id"> <xsl:call-template name="object.id"/> @@ -141,6 +121,7 @@ <xsl:template match="partintro"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:if test="$generate.id.attributes != 0"> <xsl:attribute name="id"> <xsl:call-template name="object.id"/> Index: phpdoc/xsl/docbook/html/docbook.xsl diff -u phpdoc/xsl/docbook/html/docbook.xsl:1.1 phpdoc/xsl/docbook/html/docbook.xsl:1.2 --- phpdoc/xsl/docbook/html/docbook.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/docbook.xsl Sun Mar 9 09:56:38 2003 @@ -9,7 +9,7 @@ indent="no"/> <!-- ******************************************************************** - $Id: docbook.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: docbook.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -29,6 +29,7 @@ <xsl:include href="../common/titles.xsl"/> <xsl:include href="../common/subtitles.xsl"/> <xsl:include href="../common/gentext.xsl"/> +<xsl:include href="../common/targets.xsl"/> <xsl:include href="autotoc.xsl"/> <xsl:include href="autoidx.xsl"/> <xsl:include href="lists.xsl"/> @@ -75,6 +76,10 @@ <xsl:message> <xsl:text>No template matches </xsl:text> <xsl:value-of select="name(.)"/> + <xsl:if test="parent::*"> + <xsl:text> in </xsl:text> + <xsl:value-of select="name(parent::*)"/> + </xsl:if> <xsl:text>.</xsl:text> </xsl:message> @@ -103,15 +108,18 @@ <xsl:template name="head.content"> <xsl:param name="node" select="."/> + <xsl:param name="title"> + <xsl:apply-templates select="$node" mode="object.title.markup.textonly"/> + </xsl:param> <title> - <xsl:apply-templates select="$node" mode="object.title.markup.textonly"/> + <xsl:copy-of select="$title"/> </title> - <xsl:if test="$html.stylesheet"> - <link rel="stylesheet" - href="{$html.stylesheet}" - type="{$html.stylesheet.type}"/> + <xsl:if test="$html.stylesheet != ''"> + <xsl:call-template name="output.html.stylesheets"> + <xsl:with-param name="stylesheets" select="normalize-space($html.stylesheet)"/> + </xsl:call-template> </xsl:if> <xsl:if test="$link.mailto.url != ''"> @@ -125,11 +133,41 @@ <meta name="generator" content="DocBook XSL Stylesheets V{$VERSION}"/> + <xsl:if test="$generate.meta.abstract != 0"> + <xsl:variable name="info" select="(articleinfo + |bookinfo + |prefaceinfo + |chapterinfo + |appendixinfo + |sectioninfo + |sect1info + |sect2info + |sect3info + |sect4info + |sect5info + |referenceinfo + |refentryinfo + |partinfo + |docinfo)[1]"/> + <xsl:if test="$info and $info/abstract"> + <meta name="description"> + <xsl:attribute name="content"> + <xsl:for-each select="$info/abstract[1]/*"> + <xsl:value-of select="."/> + <xsl:if test="position() < last()"> + <xsl:text> </xsl:text> + </xsl:if> + </xsl:for-each> + </xsl:attribute> + </meta> + </xsl:if> + </xsl:if> + <xsl:if test="ancestor-or-self::*[@status][1]/@status = 'draft' and $draft.watermark.image != ''"> <style type="text/css"><xsl:text> -body { background-image: url("</xsl:text> -<xsl:value-of select="$draft.watermark.image"/><xsl:text>"); +body { background-image: url('</xsl:text> +<xsl:value-of select="$draft.watermark.image"/><xsl:text>'); background-repeat: no-repeat; background-position: top left; /* The following properties make the watermark "fixed" on the page. */ @@ -142,6 +180,34 @@ <xsl:apply-templates select="." mode="head.keywords.content"/> </xsl:template> +<xsl:template name="output.html.stylesheets"> + <xsl:param name="stylesheets" select="''"/> + + <xsl:choose> + <xsl:when test="contains($stylesheets, ' ')"> + <link rel="stylesheet" href="{substring-before($stylesheets, ' ')}"> + <xsl:if test="$html.stylesheet.type != ''"> + <xsl:attribute name="type"> + <xsl:value-of select="$html.stylesheet.type"/> + </xsl:attribute> + </xsl:if> + </link> + <xsl:call-template name="output.html.stylesheets"> + <xsl:with-param name="stylesheets" select="substring-after($stylesheets, ' ')"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$stylesheets != ''"> + <link rel="stylesheet" href="{$stylesheets}"> + <xsl:if test="$html.stylesheet.type != ''"> + <xsl:attribute name="type"> + <xsl:value-of select="$html.stylesheet.type"/> + </xsl:attribute> + </xsl:if> + </link> + </xsl:when> + </xsl:choose> +</xsl:template> + <!-- ============================================================ --> <xsl:template match="*" mode="head.keywords.content"> @@ -176,6 +242,17 @@ <!-- ============================================================ --> +<xsl:template name="system.head.content"> + <xsl:param name="node" select="."/> + + <!-- system.head.content is like user.head.content, except that + it is called before head.content. This is important because it + means, for example, that <style> elements output by system.head.content + have a lower CSS precedence than the users stylesheet. --> +</xsl:template> + +<!-- ============================================================ --> + <xsl:template name="user.head.content"> <xsl:param name="node" select="."/> </xsl:template> @@ -208,17 +285,32 @@ </xsl:message> </xsl:when> <xsl:otherwise> - <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 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> </xsl:otherwise> </xsl:choose> </xsl:when> <xsl:otherwise> - <xsl:apply-templates select="/" mode="process.root"/> - <xsl:if test="$tex.math.in.alt != ''"> - <xsl:apply-templates select="/" mode="collect.tex.math"/> + <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> </xsl:otherwise> </xsl:choose> @@ -226,26 +318,46 @@ <xsl:template match="*" mode="process.root"> <xsl:variable name="doc" select="self::*"/> + + <xsl:call-template name="root.messages"/> + <html> - <head> - <xsl:call-template name="head.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - <xsl:call-template name="user.head.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - </head> - <body> - <xsl:call-template name="body.attributes"/> - <xsl:call-template name="user.header.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - <xsl:apply-templates select="."/> - <xsl:call-template name="user.footer.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - </body> + <head> + <xsl:call-template name="system.head.content"> + <xsl:with-param name="node" select="$doc"/> + </xsl:call-template> + <xsl:call-template name="head.content"> + <xsl:with-param name="node" select="$doc"/> + </xsl:call-template> + <xsl:call-template name="user.head.content"> + <xsl:with-param name="node" select="$doc"/> + </xsl:call-template> + </head> + <body> + <xsl:call-template name="body.attributes"/> + <xsl:call-template name="user.header.content"> + <xsl:with-param name="node" select="$doc"/> + </xsl:call-template> + <xsl:apply-templates select="."/> + <xsl:call-template name="user.footer.content"> + <xsl:with-param name="node" select="$doc"/> + </xsl:call-template> + </body> </html> +</xsl:template> + +<xsl:template name="root.messages"> + <!-- redefine this any way you'd like to output messages --> + <!-- DO NOT OUTPUT ANYTHING FROM THIS TEMPLATE --> +</xsl:template> + +<!-- ==================================================================== --> + +<xsl:template name="chunk"> + <xsl:param name="node" select="."/> + + <!-- The default is that we are not chunking... --> + <xsl:text>0</xsl:text> </xsl:template> <!-- ==================================================================== --> Index: phpdoc/xsl/docbook/html/ebnf.xsl diff -u phpdoc/xsl/docbook/html/ebnf.xsl:1.1 phpdoc/xsl/docbook/html/ebnf.xsl:1.2 --- phpdoc/xsl/docbook/html/ebnf.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/ebnf.xsl Sun Mar 9 09:56:38 2003 @@ -5,7 +5,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: ebnf.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: ebnf.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -17,7 +17,7 @@ <doc:reference xmlns=""> <referenceinfo> <releaseinfo role="meta"> -$Id: ebnf.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ +$Id: ebnf.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ </releaseinfo> <author><surname>Walsh</surname> <firstname>Norman</firstname></author> Index: phpdoc/xsl/docbook/html/footnote.xsl diff -u phpdoc/xsl/docbook/html/footnote.xsl:1.1 phpdoc/xsl/docbook/html/footnote.xsl:1.2 --- phpdoc/xsl/docbook/html/footnote.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/footnote.xsl Sun Mar 9 09:56:38 2003 @@ -5,7 +5,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: footnote.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: footnote.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -24,7 +24,7 @@ </xsl:variable> <xsl:choose> - <xsl:when test="ancestor::table|ancestor::informaltable"> + <xsl:when test="ancestor::tgroup"> <sup> <xsl:text>[</xsl:text> <a name="{$name}" href="{$href}"> @@ -65,17 +65,34 @@ <xsl:template match="footnote" mode="footnote.number"> <xsl:choose> - <xsl:when test="ancestor::table or ancestor::informaltable"> - <xsl:number level="any" from="table|informaltable" format="a"/> - </xsl:when> - <xsl:when test="ancestor::refentry"> - <xsl:number level="any" from="refentry" format="1"/> + <xsl:when test="ancestor::tgroup"> + <xsl:variable name="tfnum"> + <xsl:number level="any" from="table|informaltable" format="1"/> + </xsl:variable> + + <xsl:choose> + <xsl:when test="string-length($table.footnote.number.symbols) >= $tfnum"> + <xsl:value-of select="substring($table.footnote.number.symbols, $tfnum, 1)"/> + </xsl:when> + <xsl:otherwise> + <xsl:number level="any" from="tgroup" + format="{$table.footnote.number.format}"/> + </xsl:otherwise> + </xsl:choose> </xsl:when> <xsl:otherwise> <xsl:variable name="pfoot" select="preceding::footnote"/> - <xsl:variable name="ptfoot" select="preceding::table//footnote - |preceding::informaltable//footnote"/> - <xsl:number value="count($pfoot) - count($ptfoot) + 1" format="1"/> + <xsl:variable name="ptfoot" select="preceding::tgroup//footnote"/> + <xsl:variable name="fnum" select="count($pfoot) - count($ptfoot) + 1"/> + + <xsl:choose> + <xsl:when test="string-length($footnote.number.symbols) >= $fnum"> + <xsl:value-of select="substring($footnote.number.symbols, $fnum, 1)"/> + </xsl:when> + <xsl:otherwise> + <xsl:number value="$fnum" format="{$footnote.number.format}"/> + </xsl:otherwise> + </xsl:choose> </xsl:otherwise> </xsl:choose> </xsl:template> @@ -140,18 +157,24 @@ <xsl:apply-templates select="."/> </xsl:variable> - <xsl:variable name="html-nodes" select="exsl:node-set($html)"/> - <xsl:choose> - <xsl:when test="$html-nodes//p"> - <xsl:apply-templates select="$html-nodes" mode="insert.html.p"> - <xsl:with-param name="mark" select="$footnote.mark"/> - </xsl:apply-templates> + <xsl:when test="function-available('exsl:node-set')"> + <xsl:variable name="html-nodes" select="exsl:node-set($html)"/> + <xsl:choose> + <xsl:when test="$html-nodes//p"> + <xsl:apply-templates select="$html-nodes" mode="insert.html.p"> + <xsl:with-param name="mark" select="$footnote.mark"/> + </xsl:apply-templates> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="$html-nodes" mode="insert.html.text"> + <xsl:with-param name="mark" select="$footnote.mark"/> + </xsl:apply-templates> + </xsl:otherwise> + </xsl:choose> </xsl:when> <xsl:otherwise> - <xsl:apply-templates select="$html-nodes" mode="insert.html.text"> - <xsl:with-param name="mark" select="$footnote.mark"/> - </xsl:apply-templates> + <xsl:copy-of select="$html"/> </xsl:otherwise> </xsl:choose> </xsl:template> @@ -184,7 +207,7 @@ <xsl:template name="process.footnotes"> <xsl:variable name="footnotes" select=".//footnote"/> <xsl:variable name="table.footnotes" - select=".//table//footnote|.//informaltable//footnote"/> + select=".//tgroup//footnote"/> <!-- Only bother to do this if there's at least one non-table footnote --> <xsl:if test="count($footnotes)>count($table.footnotes)"> @@ -229,7 +252,7 @@ </xsl:choose> </xsl:template> -<xsl:template match="informaltable//footnote|table//footnote" +<xsl:template match="tgroup//footnote" mode="process.footnote.mode"> </xsl:template> Index: phpdoc/xsl/docbook/html/formal.xsl diff -u phpdoc/xsl/docbook/html/formal.xsl:1.1 phpdoc/xsl/docbook/html/formal.xsl:1.2 --- phpdoc/xsl/docbook/html/formal.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/formal.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: formal.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: formal.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -14,9 +14,13 @@ <xsl:template name="formal.object"> <xsl:param name="placement" select="'before'"/> + <xsl:param name="class" select="local-name(.)"/> + + <div class="{$class}"> + <xsl:call-template name="anchor"> + <xsl:with-param name="conditional" select="0"/> + </xsl:call-template> - <div class="{name(.)}"> - <xsl:call-template name="anchor"/> <xsl:choose> <xsl:when test="$placement = 'before'"> <xsl:call-template name="formal.object.heading"/> @@ -47,9 +51,10 @@ </xsl:template> <xsl:template name="formal.object.heading"> + <xsl:param name="object" select="."/> <p class="title"> <b> - <xsl:apply-templates select="." mode="object.title.markup"> + <xsl:apply-templates select="$object" mode="object.title.markup"> <xsl:with-param name="allow-anchors" select="1"/> </xsl:apply-templates> </b> @@ -57,7 +62,9 @@ </xsl:template> <xsl:template name="informal.object"> - <div class="{name(.)}"> + <xsl:param name="class" select="local-name(.)"/> + + <div class="{$class}"> <xsl:if test="$spacing.paras != 0"><p/></xsl:if> <xsl:call-template name="anchor"/> <xsl:apply-templates/> @@ -74,19 +81,75 @@ <xsl:template name="semiformal.object"> <xsl:param name="placement" select="'before'"/> + <xsl:param name="class" select="local-name(.)"/> + <xsl:choose> <xsl:when test="title"> <xsl:call-template name="formal.object"> <xsl:with-param name="placement" select="$placement"/> + <xsl:with-param name="class" select="$class"/> </xsl:call-template> </xsl:when> <xsl:otherwise> - <xsl:call-template name="informal.object"/> + <xsl:call-template name="informal.object"> + <xsl:with-param name="class" select="$class"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="figure"> + <xsl:variable name="param.placement" + select="substring-after(normalize-space($formal.title.placement), + concat(local-name(.), ' '))"/> + + <xsl:variable name="placement"> + <xsl:choose> + <xsl:when test="contains($param.placement, ' ')"> + <xsl:value-of select="substring-before($param.placement, ' ')"/> + </xsl:when> + <xsl:when test="$param.placement = ''">before</xsl:when> + <xsl:otherwise> + <xsl:value-of select="$param.placement"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:choose> + <xsl:when test="@float and @float != 0"> + <xsl:variable name="float"> + <xsl:choose> + <xsl:when test="@float = 1"> + <xsl:value-of select="$default.float.class"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="@float"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <div class="figure-float"> + <xsl:if test="$float = 'left' or $float = 'right'"> + <xsl:attribute name="style"> + <xsl:text>float: </xsl:text> + <xsl:value-of select="$float"/> + <xsl:text>;</xsl:text> + </xsl:attribute> + </xsl:if> + <xsl:call-template name="formal.object"> + <xsl:with-param name="placement" select="$placement"/> + </xsl:call-template> + </div> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="formal.object"> + <xsl:with-param name="placement" select="$placement"/> + </xsl:call-template> </xsl:otherwise> </xsl:choose> </xsl:template> -<xsl:template match="figure|table|example"> +<xsl:template match="table|example"> <xsl:variable name="param.placement" select="substring-after(normalize-space($formal.title.placement), concat(local-name(.), ' '))"/> @@ -105,6 +168,17 @@ <xsl:call-template name="formal.object"> <xsl:with-param name="placement" select="$placement"/> + <xsl:with-param name="class"> + <xsl:choose> + <xsl:when test="@tabstyle"> + <!-- hack, this will only ever occur on table, not example --> + <xsl:value-of select="@tabstyle"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="local-name(.)"/> + </xsl:otherwise> + </xsl:choose> + </xsl:with-param> </xsl:call-template> </xsl:template> @@ -131,10 +205,14 @@ </xsl:template> <xsl:template match="figure/title"></xsl:template> +<xsl:template match="figure/titleabbrev"></xsl:template> <xsl:template match="table/title"></xsl:template> +<xsl:template match="table/titleabbrev"></xsl:template> <xsl:template match="table/textobject"></xsl:template> <xsl:template match="example/title"></xsl:template> +<xsl:template match="example/titleabbrev"></xsl:template> <xsl:template match="equation/title"></xsl:template> +<xsl:template match="equation/titleabbrev"></xsl:template> <xsl:template match="informalfigure"> <xsl:call-template name="informal.object"/> @@ -145,7 +223,18 @@ </xsl:template> <xsl:template match="informaltable"> - <xsl:call-template name="informal.object"/> + <xsl:call-template name="informal.object"> + <xsl:with-param name="class"> + <xsl:choose> + <xsl:when test="@tabstyle"> + <xsl:value-of select="@tabstyle"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="local-name(.)"/> + </xsl:otherwise> + </xsl:choose> + </xsl:with-param> + </xsl:call-template> </xsl:template> <xsl:template match="informaltable/textobject"></xsl:template> Index: phpdoc/xsl/docbook/html/glossary.xsl diff -u phpdoc/xsl/docbook/html/glossary.xsl:1.1 phpdoc/xsl/docbook/html/glossary.xsl:1.2 --- phpdoc/xsl/docbook/html/glossary.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/glossary.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: glossary.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: glossary.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -44,7 +44,9 @@ </xsl:otherwise> </xsl:choose> - <xsl:call-template name="process.footnotes"/> + <xsl:if test="not(parent::article)"> + <xsl:call-template name="process.footnotes"/> + </xsl:if> </div> </xsl:template> @@ -105,34 +107,83 @@ --> <xsl:template match="glossentry"> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="glossentry/glossterm"> - <dt> - <xsl:apply-templates/> - </dt> -</xsl:template> + <xsl:choose> + <xsl:when test="$glossentry.show.acronym = 'primary'"> + <dt> + <xsl:call-template name="anchor"> + <xsl:with-param name="conditional"> + <xsl:choose> + <xsl:when test="$glossterm.auto.link != 0">0</xsl:when> + <xsl:otherwise>1</xsl:otherwise> + </xsl:choose> + </xsl:with-param> + </xsl:call-template> -<xsl:template match="glossentry/glossterm[1]" priority="2"> - <dt> - <xsl:call-template name="anchor"> - <xsl:with-param name="node" select=".."/> - <xsl:with-param name="conditional"> <xsl:choose> - <xsl:when test="$glossterm.auto.link != 0">0</xsl:when> - <xsl:otherwise>1</xsl:otherwise> + <xsl:when test="acronym|abbrev"> + <xsl:apply-templates select="acronym|abbrev"/> + <xsl:text> (</xsl:text> + <xsl:apply-templates select="glossterm"/> + <xsl:text>)</xsl:text> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="glossterm"/> + </xsl:otherwise> </xsl:choose> - </xsl:with-param> - </xsl:call-template> - <xsl:apply-templates/> - </dt> + </dt> + </xsl:when> + <xsl:when test="$glossentry.show.acronym = 'yes'"> + <dt> + <xsl:call-template name="anchor"> + <xsl:with-param name="conditional"> + <xsl:choose> + <xsl:when test="$glossterm.auto.link != 0">0</xsl:when> + <xsl:otherwise>1</xsl:otherwise> + </xsl:choose> + </xsl:with-param> + </xsl:call-template> + + <xsl:apply-templates select="glossterm"/> + + <xsl:if test="acronym|abbrev"> + <xsl:text> (</xsl:text> + <xsl:apply-templates select="acronym|abbrev"/> + <xsl:text>)</xsl:text> + </xsl:if> + </dt> + </xsl:when> + <xsl:otherwise> + <dt> + <xsl:call-template name="anchor"> + <xsl:with-param name="conditional"> + <xsl:choose> + <xsl:when test="$glossterm.auto.link != 0">0</xsl:when> + <xsl:otherwise>1</xsl:otherwise> + </xsl:choose> + </xsl:with-param> + </xsl:call-template> + + <xsl:apply-templates select="glossterm"/> + </dt> + </xsl:otherwise> + </xsl:choose> + + <xsl:apply-templates select="indexterm|revhistory|glosssee|glossdef"/> +</xsl:template> + +<xsl:template match="glossentry/glossterm"> + <xsl:apply-templates/> + <xsl:if test="following-sibling::glossterm">, </xsl:if> </xsl:template> <xsl:template match="glossentry/acronym"> + <xsl:apply-templates/> + <xsl:if test="following-sibling::acronym|following-sibling::abbrev">, </xsl:if> </xsl:template> <xsl:template match="glossentry/abbrev"> + <xsl:apply-templates/> + <xsl:if test="following-sibling::acronym|following-sibling::abbrev">, </xsl:if> </xsl:template> <xsl:template match="glossentry/revhistory"> @@ -142,6 +193,7 @@ <xsl:variable name="otherterm" select="@otherterm"/> <xsl:variable name="targets" select="//node()[@id=$otherterm]"/> <xsl:variable name="target" select="$targets[1]"/> + <dd> <p> <xsl:call-template name="gentext.template"> @@ -149,11 +201,18 @@ <xsl:with-param name="name" select="'see'"/> </xsl:call-template> <xsl:choose> - <xsl:when test="@otherterm"> + <xsl:when test="$target"> <a href="#{@otherterm}"> <xsl:apply-templates select="$target" mode="xref"/> </a> </xsl:when> + <xsl:when test="$otherterm != '' and not($target)"> + <xsl:message> + <xsl:text>Warning: glosssee @otherterm reference not found: </xsl:text> + <xsl:value-of select="$otherterm"/> + </xsl:message> + <xsl:apply-templates/> + </xsl:when> <xsl:otherwise> <xsl:apply-templates/> </xsl:otherwise> @@ -184,11 +243,18 @@ <xsl:variable name="target" select="$targets[1]"/> <xsl:choose> - <xsl:when test="@otherterm"> + <xsl:when test="$target"> <a href="#{@otherterm}"> <xsl:apply-templates select="$target" mode="xref"/> </a> </xsl:when> + <xsl:when test="$otherterm != '' and not($target)"> + <xsl:message> + <xsl:text>Warning: glossseealso @otherterm reference not found: </xsl:text> + <xsl:value-of select="$otherterm"/> + </xsl:message> + <xsl:apply-templates/> + </xsl:when> <xsl:otherwise> <xsl:apply-templates/> </xsl:otherwise> @@ -206,16 +272,6 @@ <!-- ==================================================================== --> -<xsl:template match="glossentry" mode="xref"> - <xsl:apply-templates select="./glossterm[1]" mode="xref"/> -</xsl:template> - -<xsl:template match="glossterm" mode="xref"> - <xsl:apply-templates/> -</xsl:template> - -<!-- ==================================================================== --> - <!-- Glossary collection --> <xsl:template match="glossary[@role='auto']" priority="2"> @@ -270,7 +326,9 @@ </xsl:otherwise> </xsl:choose> - <xsl:call-template name="process.footnotes"/> + <xsl:if test="not(parent::article)"> + <xsl:call-template name="process.footnotes"/> + </xsl:if> </div> </xsl:template> @@ -294,24 +352,6 @@ </xsl:for-each> </dl> </div> -</xsl:template> - -<xsl:template match="glossentry" mode="auto-glossary"> - <xsl:apply-templates mode="auto-glossary"/> -</xsl:template> - -<xsl:template match="glossentry/glossterm[1]" priority="2" mode="auto-glossary"> - <xsl:variable name="id"> - <xsl:text>gl.</xsl:text> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select=".."/> - </xsl:call-template> - </xsl:variable> - - <dt> - <a name="{$id}"/> - <xsl:apply-templates/> - </dt> </xsl:template> <!-- ==================================================================== --> Index: phpdoc/xsl/docbook/html/graphics.xsl diff -u phpdoc/xsl/docbook/html/graphics.xsl:1.1 phpdoc/xsl/docbook/html/graphics.xsl:1.2 --- phpdoc/xsl/docbook/html/graphics.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/graphics.xsl Sun Mar 9 09:56:38 2003 @@ -11,7 +11,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: graphics.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: graphics.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -24,7 +24,6 @@ ******************************************************************** --> <lxslt:component prefix="xtext" elements="insertfile"/> - <lxslt:component prefix="ximg" functions="new getWidth getDepth"/> <!-- ==================================================================== --> @@ -70,10 +69,6 @@ <!-- ==================================================================== --> -<xsl:param name="nominal.image.width" select="6 * $pixels.per.inch"/> -<xsl:param name="nominal.image.depth" select="4 * $pixels.per.inch"/> -<xsl:param name="make.graphic.viewport" select="1"/> - <xsl:template name="process.image"> <!-- When this template is called, the current node should be --> <!-- a graphic, inlinegraphic, imagedata, or videodata. All --> @@ -156,18 +151,57 @@ alignment. --> + <xsl:variable name="width-units"> + <xsl:choose> + <xsl:when test="$ignore.image.scaling != 0"></xsl:when> + <xsl:when test="@width"> + <xsl:call-template name="length-units"> + <xsl:with-param name="length" select="@width"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="not(@depth) and $default.image.width != ''"> + <xsl:call-template name="length-units"> + <xsl:with-param name="length" select="$default.image.width"/> + </xsl:call-template> + </xsl:when> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="width"> + <xsl:choose> + <xsl:when test="$ignore.image.scaling != 0"></xsl:when> + <xsl:when test="@width"> + <xsl:choose> + <xsl:when test="$width-units = '%'"> + <xsl:value-of select="@width"/> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="length-spec"> + <xsl:with-param name="length" select="@width"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:when test="not(@depth) and $default.image.width != ''"> + <xsl:value-of select="$default.image.width"/> + </xsl:when> + </xsl:choose> + </xsl:variable> + <xsl:variable name="scalefit"> <xsl:choose> + <xsl:when test="$ignore.image.scaling != 0">0</xsl:when> <xsl:when test="@contentwidth or @contentdepth">0</xsl:when> <xsl:when test="@scale">0</xsl:when> <xsl:when test="@scalefit"><xsl:value-of select="@scalefit"/></xsl:when> - <xsl:when test="@width or @depth">1</xsl:when> + <xsl:when test="$width != '' or @depth">1</xsl:when> <xsl:otherwise>0</xsl:otherwise> </xsl:choose> </xsl:variable> <xsl:variable name="scale"> <xsl:choose> + <xsl:when test="$ignore.image.scaling != 0">1.0</xsl:when> <xsl:when test="@contentwidth or @contentdepth">1.0</xsl:when> <xsl:when test="@scale"> <xsl:value-of select="@scale div 100.0"/> @@ -195,12 +229,22 @@ </xsl:variable> <xsl:variable name="intrinsicwidth"> + <!-- This funny compound test works around a bug in XSLTC --> <xsl:choose> - <xsl:when test="function-available('simg:getWidth')"> - <xsl:value-of select="simg:getWidth(simg:new($filename), $nominal.image.width)"/> - </xsl:when> - <xsl:when test="function-available('ximg:getWidth')"> - <xsl:value-of select="ximg:getWidth(ximg:new($filename), $nominal.image.width)"/> + <xsl:when test="$use.extensions != 0 and $graphicsize.extension != 0"> + <xsl:choose> + <xsl:when test="function-available('simg:getWidth')"> + <xsl:value-of select="simg:getWidth(simg:new($filename), + $nominal.image.width)"/> + </xsl:when> + <xsl:when test="function-available('ximg:getWidth')"> + <xsl:value-of select="ximg:getWidth(ximg:new($filename), + $nominal.image.width)"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$nominal.image.width"/> + </xsl:otherwise> + </xsl:choose> </xsl:when> <xsl:otherwise> <xsl:value-of select="$nominal.image.width"/> @@ -209,15 +253,25 @@ </xsl:variable> <xsl:variable name="intrinsicdepth"> + <!-- This funny compound test works around a bug in XSLTC --> <xsl:choose> - <xsl:when test="function-available('simg:getDepth')"> - <xsl:value-of select="simg:getDepth(simg:new($filename), $nominal.image.depth)"/> - </xsl:when> - <xsl:when test="function-available('ximg:getDepth')"> - <xsl:value-of select="ximg:getDepth(ximg:new($filename), $nominal.image.width)"/> + <xsl:when test="$use.extensions != 0 and $graphicsize.extension != 0"> + <xsl:choose> + <xsl:when test="function-available('simg:getDepth')"> + <xsl:value-of select="simg:getDepth(simg:new($filename), + $nominal.image.depth)"/> + </xsl:when> + <xsl:when test="function-available('ximg:getDepth')"> + <xsl:value-of select="ximg:getDepth(ximg:new($filename), + $nominal.image.width)"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$nominal.image.depth"/> + </xsl:otherwise> + </xsl:choose> </xsl:when> <xsl:otherwise> - <xsl:value-of select="$nominal.image.depth"/> + <xsl:value-of select="$nominal.image.width"/> </xsl:otherwise> </xsl:choose> </xsl:variable> @@ -268,35 +322,13 @@ </xsl:if> </xsl:variable> - <xsl:variable name="width-units"> - <xsl:if test="@width"> - <xsl:call-template name="length-units"> - <xsl:with-param name="length" select="@width"/> - </xsl:call-template> - </xsl:if> - </xsl:variable> - - <xsl:variable name="width"> - <xsl:if test="@width"> - <xsl:choose> - <xsl:when test="$width-units = '%'"> - <xsl:value-of select="@width"/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="length-spec"> - <xsl:with-param name="length" select="@width"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:if> - </xsl:variable> - <xsl:variable name="html.width"> <xsl:choose> + <xsl:when test="$ignore.image.scaling != 0"></xsl:when> <xsl:when test="$width-units = '%'"> <xsl:value-of select="$width"/> </xsl:when> - <xsl:when test="@width and @width != ''"> + <xsl:when test="$width != ''"> <xsl:variable name="width.in.points"> <xsl:call-template name="length-in-points"> <xsl:with-param name="length" select="$width"/> @@ -304,7 +336,7 @@ <xsl:with-param name="em.size" select="$points.per.em"/> </xsl:call-template> </xsl:variable> - <xsl:value-of select="$width.in.points div 72.0 * $pixels.per.inch"/> + <xsl:value-of select="round($width.in.points div 72.0 * $pixels.per.inch)"/> </xsl:when> <xsl:otherwise></xsl:otherwise> </xsl:choose> @@ -381,6 +413,7 @@ <xsl:variable name="html.depth"> <xsl:choose> + <xsl:when test="$ignore.image.scaling != 0"></xsl:when> <xsl:when test="$depth-units = '%'"> <xsl:value-of select="$depth"/> </xsl:when> @@ -392,7 +425,7 @@ <xsl:with-param name="em.size" select="$points.per.em"/> </xsl:call-template> </xsl:variable> - <xsl:value-of select="$depth.in.points div 72.0 * $pixels.per.inch"/> + <xsl:value-of select="round($depth.in.points div 72.0 * $pixels.per.inch)"/> </xsl:when> <xsl:otherwise></xsl:otherwise> </xsl:choose> @@ -400,9 +433,10 @@ <xsl:variable name="viewport"> <xsl:choose> - <xsl:when test="inlinegraphic - | ancestor::inlinemediaobject - | ancestor::inlineequation">0</xsl:when> + <xsl:when test="$ignore.image.scaling != 0">0</xsl:when> + <xsl:when test="local-name(.) = 'inlinegraphic' + or ancestor::inlinemediaobject + or ancestor::inlineequation">0</xsl:when> <xsl:otherwise> <xsl:value-of select="$make.graphic.viewport"/> </xsl:otherwise> @@ -433,7 +467,7 @@ <xsl:when test="@format = 'SVG'"> <object data="{$filename}" type="image/svg+xml"> <xsl:call-template name="process.image.attributes"> - <xsl:with-param name="alt" select="$alt"/> + <!--xsl:with-param name="alt" select="$alt"/ there's no alt here--> <xsl:with-param name="html.depth" select="$html.depth"/> <xsl:with-param name="html.width" select="$html.width"/> <xsl:with-param name="longdesc" select="$longdesc"/> @@ -443,19 +477,31 @@ <xsl:with-param name="scaled.contentwidth" select="$scaled.contentwidth"/> <xsl:with-param name="viewport" select="$viewport"/> </xsl:call-template> - <embed src="{$filename}" type="image/svg+xml"> - <xsl:call-template name="process.image.attributes"> - <xsl:with-param name="alt" select="$alt"/> - <xsl:with-param name="html.depth" select="$html.depth"/> - <xsl:with-param name="html.width" select="$html.width"/> - <xsl:with-param name="longdesc" select="$longdesc"/> - <xsl:with-param name="scale" select="$scale"/> - <xsl:with-param name="scalefit" select="$scalefit"/> - <xsl:with-param name="scaled.contentdepth" select="$scaled.contentdepth"/> - <xsl:with-param name="scaled.contentwidth" select="$scaled.contentwidth"/> - <xsl:with-param name="viewport" select="$viewport"/> - </xsl:call-template> - </embed> + <xsl:if test="@align"> + <xsl:attribute name="align"> + <xsl:choose> + <xsl:when test="@align = 'center'">middle</xsl:when> + <xsl:otherwise> + <xsl:value-of select="@align"/> + </xsl:otherwise> + </xsl:choose> + </xsl:attribute> + </xsl:if> + <xsl:if test="$use.embed.for.svg != 0"> + <embed src="{$filename}" type="image/svg+xml"> + <xsl:call-template name="process.image.attributes"> + <!--xsl:with-param name="alt" select="$alt"/ there's no alt here --> + <xsl:with-param name="html.depth" select="$html.depth"/> + <xsl:with-param name="html.width" select="$html.width"/> + <xsl:with-param name="longdesc" select="$longdesc"/> + <xsl:with-param name="scale" select="$scale"/> + <xsl:with-param name="scalefit" select="$scalefit"/> + <xsl:with-param name="scaled.contentdepth" select="$scaled.contentdepth"/> + <xsl:with-param name="scaled.contentwidth" select="$scaled.contentwidth"/> + <xsl:with-param name="viewport" select="$viewport"/> + </xsl:call-template> + </embed> + </xsl:if> </object> </xsl:when> <xsl:otherwise> @@ -463,8 +509,29 @@ <xsl:attribute name="src"> <xsl:value-of select="$filename"/> </xsl:attribute> + + <xsl:if test="@align"> + <xsl:attribute name="align"> + <xsl:choose> + <xsl:when test="@align = 'center'">middle</xsl:when> + <xsl:otherwise> + <xsl:value-of select="@align"/> + </xsl:otherwise> + </xsl:choose> + </xsl:attribute> + </xsl:if> + <xsl:call-template name="process.image.attributes"> - <xsl:with-param name="alt" select="$alt"/> + <xsl:with-param name="alt"> + <xsl:choose> + <xsl:when test="$alt != ''"> + <xsl:copy-of select="$alt"/> + </xsl:when> + <xsl:when test="ancestor::figure"> + <xsl:value-of select="normalize-space(ancestor::figure/title)"/> + </xsl:when> + </xsl:choose> + </xsl:with-param> <xsl:with-param name="html.depth" select="$html.depth"/> <xsl:with-param name="html.width" select="$html.width"/> <xsl:with-param name="longdesc" select="$longdesc"/> @@ -479,8 +546,24 @@ </xsl:choose> </xsl:variable> + + <xsl:variable name="bgcolor"> + <xsl:call-template name="dbhtml-attribute"> + <xsl:with-param name="pis" + select="../processing-instruction('dbhtml')"/> + <xsl:with-param name="attribute" select="'background-color'"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="use.viewport" + select="$viewport != 0 + and ($html.width != '' + or ($html.depth != '' and $depth-units != '%') + or $bgcolor != '' + or @valign)"/> + <xsl:choose> - <xsl:when test="$viewport != 0"> + <xsl:when test="$use.viewport"> <table border="0" summary="manufactured viewport for HTML img" cellspacing="0" cellpadding="0"> <xsl:if test="$html.width != ''"> @@ -491,22 +574,36 @@ <tr> <xsl:if test="$html.depth != '' and $depth-units != '%'"> <!-- don't do this for percentages because browsers get confused --> - <xsl:attribute name="height"> - <xsl:value-of select="$html.depth"/> - </xsl:attribute> + <xsl:choose> + <xsl:when test="$css.decoration != 0"> + <xsl:attribute name="style"> + <xsl:text>height: </xsl:text> + <xsl:value-of select="$html.depth"/> + <xsl:text>px</xsl:text> + </xsl:attribute> + </xsl:when> + <xsl:otherwise> + <xsl:attribute name="height"> + <xsl:value-of select="$html.depth"/> + </xsl:attribute> + </xsl:otherwise> + </xsl:choose> </xsl:if> <td> - <xsl:variable name="bgcolor"> - <xsl:call-template name="dbhtml-attribute"> - <xsl:with-param name="pis" - select="../processing-instruction('dbhtml')"/> - <xsl:with-param name="attribute" select="'background-color'"/> - </xsl:call-template> - </xsl:variable> <xsl:if test="$bgcolor != ''"> - <xsl:attribute name="bgcolor"> - <xsl:value-of select="$bgcolor"/> - </xsl:attribute> + <xsl:choose> + <xsl:when test="$css.decoration != 0"> + <xsl:attribute name="style"> + <xsl:text>background-color: </xsl:text> + <xsl:value-of select="$bgcolor"/> + </xsl:attribute> + </xsl:when> + <xsl:otherwise> + <xsl:attribute name="bgcolor"> + <xsl:value-of select="$bgcolor"/> + </xsl:attribute> + </xsl:otherwise> + </xsl:choose> </xsl:if> <xsl:if test="@align"> <xsl:attribute name="align"> @@ -555,7 +652,7 @@ </xsl:if> </xsl:when> - <xsl:when test="$scale != 1.0"> + <xsl:when test="number($scale) != 1.0"> <!-- scaling is always uniform, so we only have to specify one dimension --> <!-- ignore @scalefit if specified --> <xsl:attribute name="width"> @@ -611,8 +708,8 @@ </xsl:when> <xsl:when test="$scaled.contentdepth != '' and $html.depth != ''"> - <xsl:attribute name="width"> - <xsl:value-of select="$html.width"/> + <xsl:attribute name="height"> + <xsl:value-of select="$html.depth"/> </xsl:attribute> </xsl:when> </xsl:choose> @@ -633,7 +730,12 @@ <xsl:if test="@align and $viewport = 0"> <xsl:attribute name="align"> - <xsl:value-of select="@align"/> + <xsl:choose> + <xsl:when test="@align = 'center'">middle</xsl:when> + <xsl:otherwise> + <xsl:value-of select="@align"/> + </xsl:otherwise> + </xsl:choose> </xsl:attribute> </xsl:if> </xsl:template> @@ -647,10 +749,15 @@ <xsl:call-template name="process.image"/> </xsl:when> <xsl:otherwise> - <p> + <div> + <xsl:if test="@align"> + <xsl:attribute name="align"> + <xsl:value-of select="@align"/> + </xsl:attribute> + </xsl:if> <xsl:call-template name="anchor"/> <xsl:call-template name="process.image"/> - </p> + </div> </xsl:otherwise> </xsl:choose> </xsl:template> @@ -705,11 +812,35 @@ <!-- ==================================================================== --> <xsl:template match="mediaobject|mediaobjectco"> + + <xsl:variable name="olist" select="imageobject|imageobjectco + |videoobject|audioobject + |textobject"/> + + <xsl:variable name="object.index"> + <xsl:call-template name="select.mediaobject.index"> + <xsl:with-param name="olist" select="$olist"/> + <xsl:with-param name="count" select="1"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="object" select="$olist[position() = $object.index]"/> + + <xsl:variable name="align"> + <xsl:value-of select="$object/imagedata[@align][1]/@align"/> + </xsl:variable> + <div class="{name(.)}"> + <xsl:if test="$align != '' "> + <xsl:attribute name="align"> + <xsl:value-of select="$align"/> + </xsl:attribute> + </xsl:if> <xsl:if test="@id"> <a name="{@id}"/> </xsl:if> - <xsl:call-template name="select.mediaobject"/> + + <xsl:apply-templates select="$object"/> <xsl:apply-templates select="caption"/> </div> </xsl:template> @@ -791,9 +922,13 @@ </xsl:call-template> </xsl:variable> + <xsl:variable name="phrases" + select="ancestor::mediaobject/textobject[phrase] + |ancestor::mediaobjectco/textobject[phrase]"/> + <xsl:call-template name="process.image"> <xsl:with-param name="alt"> - <xsl:apply-templates select="(../../textobject[not(@role) or @role!='tex']/phrase)[1]"/> + <xsl:apply-templates select="$phrases[not(@role) or @role!='tex'][1]"/> </xsl:with-param> <xsl:with-param name="longdesc"> <xsl:call-template name="write.longdesc"> @@ -867,7 +1002,11 @@ <xsl:with-param name="content"> <html> <head> - <title>Long Description</title> + <xsl:call-template name="system.head.content"/> + <xsl:call-template name="head.content"> + <xsl:with-param name="title" select="'Long Description'"/> + </xsl:call-template> + <xsl:call-template name="user.head.content"/> </head> <body> <xsl:call-template name="body.attributes"/> Index: phpdoc/xsl/docbook/html/html-rtf.xsl diff -u phpdoc/xsl/docbook/html/html-rtf.xsl:1.1 phpdoc/xsl/docbook/html/html-rtf.xsl:1.2 --- phpdoc/xsl/docbook/html/html-rtf.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/html-rtf.xsl Sun Mar 9 09:56:38 2003 @@ -32,11 +32,12 @@ </xsl:copy> </xsl:template> -<xsl:template match="p" mode="insert.html.p"> +<xsl:template xmlns:html="http://www.w3.org/1999/xhtml" + match="html:p|p" mode="insert.html.p"> <xsl:param name="mark" select="'?'"/> <xsl:copy> <xsl:copy-of select="@*"/> - <xsl:if test="not(preceding::p)"> + <xsl:if test="not(preceding::p|preceding::html:p)"> <xsl:copy-of select="$mark"/> </xsl:if> <xsl:apply-templates mode="insert.html.p"> @@ -106,12 +107,19 @@ </xsl:choose> </xsl:template> -<xsl:template match="p" mode="unwrap.p"> - <xsl:variable name="blocks" select="div|p|blockquote|table"/> - +<xsl:template xmlns:html="http://www.w3.org/1999/xhtml" + match="html:p|p" mode="unwrap.p"> + <!-- xmlns:html is necessary for the xhtml stylesheet case --> + <xsl:variable name="blocks" xmlns:html="http://www.w3.org/1999/xhtml" + select="address|blockquote|div|hr|h1|h2|h3|h4|h5|h6 + |layer|p|pre|table|dl|menu|ol|ul|form + |html:address|html:blockquote|html:div|html:hr + |html:h1|html:h2|html:h3|html:h4|html:h5|html:h6 + |html:layer|html:p|html:pre|html:table|html:dl + |html:menu|html:ol|html:ul|html:form"/> <xsl:choose> <xsl:when test="$blocks"> - <xsl:call-template name="unwrap.nodes"> + <xsl:call-template name="unwrap.p.nodes"> <xsl:with-param name="wrap" select="."/> <xsl:with-param name="first" select="1"/> <xsl:with-param name="nodes" select="node()"/> @@ -138,7 +146,7 @@ <xsl:copy/> </xsl:template> -<xsl:template name="unwrap.nodes"> +<xsl:template name="unwrap.p.nodes"> <xsl:param name="wrap" select="."/> <xsl:param name="first" select="0"/> <xsl:param name="nodes"/> @@ -152,22 +160,24 @@ and function-available('set:trailing')"> <xsl:choose> <xsl:when test="$blocks"> - <xsl:variable name="leading" select="set:leading($nodes,$blocks)"/> - <xsl:variable name="trailing" select="set:trailing($nodes,$blocks)"/> + <xsl:variable name="leading" select="set:leading($nodes,$block)"/> + <xsl:variable name="trailing" select="set:trailing($nodes,$block)"/> - <xsl:element name="{local-name($wrap)}" namespace="{namespace-uri($wrap)}"> - <xsl:for-each select="$wrap/@*"> - <xsl:if test="$first != 0 or local-name(.) != 'id'"> - <xsl:copy/> - </xsl:if> - </xsl:for-each> - <xsl:apply-templates select="$leading" mode="unwrap.p"/> - </xsl:element> + <xsl:if test="($wrap/@id and $first = 1) or $leading"> + <xsl:element name="{local-name($wrap)}" namespace="{namespace-uri($wrap)}"> + <xsl:for-each select="$wrap/@*"> + <xsl:if test="$first != 0 or local-name(.) != 'id'"> + <xsl:copy/> + </xsl:if> + </xsl:for-each> + <xsl:apply-templates select="$leading" mode="unwrap.p"/> + </xsl:element> + </xsl:if> <xsl:apply-templates select="$block" mode="unwrap.p"/> <xsl:if test="$trailing"> - <xsl:call-template name="unwrap.nodes"> + <xsl:call-template name="unwrap.p.nodes"> <xsl:with-param name="wrap" select="$wrap"/> <xsl:with-param name="nodes" select="$trailing"/> <xsl:with-param name="blocks" select="$blocks[position() > 1]"/> @@ -176,17 +186,99 @@ </xsl:when> <xsl:otherwise> - <xsl:element name="{local-name($wrap)}" namespace="{namespace-uri($wrap)}"> - <xsl:for-each select="$wrap/@*"> - <xsl:if test="$first != 0 or local-name(.) != 'id'"> - <xsl:copy/> - </xsl:if> - </xsl:for-each> - <xsl:apply-templates select="$nodes" mode="unwrap.p"/> - </xsl:element> + <xsl:if test="($wrap/@id and $first = 1) or $nodes"> + <xsl:element name="{local-name($wrap)}" namespace="{namespace-uri($wrap)}"> + <xsl:for-each select="$wrap/@*"> + <xsl:if test="$first != 0 or local-name(.) != 'id'"> + <xsl:copy/> + </xsl:if> + </xsl:for-each> + <xsl:apply-templates select="$nodes" mode="unwrap.p"/> + </xsl:element> + </xsl:if> </xsl:otherwise> </xsl:choose> </xsl:if> +</xsl:template> + +<!-- ==================================================================== --> +<!-- make.verbatim.mode replaces spaces and newlines --> + +<xsl:template match="/" mode="make.verbatim.mode"> + <xsl:apply-templates mode="make.verbatim.mode"/> +</xsl:template> + +<xsl:template match="*" mode="make.verbatim.mode"> + <xsl:copy> + <xsl:copy-of select="@*"/> + <xsl:apply-templates mode="make.verbatim.mode"/> + </xsl:copy> +</xsl:template> + +<xsl:template match="processing-instruction()|comment()" mode="make.verbatim.mode"> + <xsl:copy/> +</xsl:template> + +<xsl:template match="text()" mode="make.verbatim.mode"> + <xsl:variable name="text" select="translate(., ' ', ' ')"/> + + <xsl:choose> + <xsl:when test="not(contains($text, '
'))"> + <xsl:value-of select="$text"/> + </xsl:when> + + <xsl:otherwise> + <xsl:variable name="len" select="string-length($text)"/> + + <xsl:choose> + <xsl:when test="$len = 1"> + <br/><xsl:text>
</xsl:text> + </xsl:when> + + <xsl:otherwise> + <xsl:variable name="half" select="$len div 2"/> + <xsl:call-template name="make-verbatim-recursive"> + <xsl:with-param name="text" select="substring($text, 1, $half)"/> + </xsl:call-template> + <xsl:call-template name="make-verbatim-recursive"> + <xsl:with-param name="text" + select="substring($text, ($half + 1), $len)"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="make-verbatim-recursive"> + <xsl:param name="text" select="''"/> + + <xsl:choose> + <xsl:when test="not(contains($text, '
'))"> + <xsl:value-of select="$text"/> + </xsl:when> + + <xsl:otherwise> + <xsl:variable name="len" select="string-length($text)"/> + + <xsl:choose> + <xsl:when test="$len = 1"> + <br/><xsl:text>
</xsl:text> + </xsl:when> + + <xsl:otherwise> + <xsl:variable name="half" select="$len div 2"/> + <xsl:call-template name="make-verbatim-recursive"> + <xsl:with-param name="text" select="substring($text, 1, $half)"/> + </xsl:call-template> + <xsl:call-template name="make-verbatim-recursive"> + <xsl:with-param name="text" + select="substring($text, ($half + 1), $len)"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> </xsl:template> <!-- ==================================================================== --> Index: phpdoc/xsl/docbook/html/html.xsl diff -u phpdoc/xsl/docbook/html/html.xsl:1.1 phpdoc/xsl/docbook/html/html.xsl:1.2 --- phpdoc/xsl/docbook/html/html.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/html.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: html.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: html.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. Index: phpdoc/xsl/docbook/html/index.xsl diff -u phpdoc/xsl/docbook/html/index.xsl:1.1 phpdoc/xsl/docbook/html/index.xsl:1.2 --- phpdoc/xsl/docbook/html/index.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/index.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: index.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: index.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -14,7 +14,7 @@ <!-- ==================================================================== --> -<xsl:template match="index|setindex"> +<xsl:template match="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. Unless generate.index --> @@ -29,15 +29,49 @@ </xsl:attribute> </xsl:if> - <xsl:call-template name="anchor"/> <xsl:call-template name="index.titlepage"/> <xsl:apply-templates/> <xsl:if test="count(indexentry) = 0 and count(indexdiv) = 0"> - <xsl:call-template name="generate-index"/> + <xsl:call-template name="generate-index"> + <xsl:with-param name="scope" select="(ancestor::book|/)[last()]"/> + </xsl:call-template> </xsl:if> - <xsl:call-template name="process.footnotes"/> + <xsl:if test="not(parent::article)"> + <xsl:call-template name="process.footnotes"/> + </xsl:if> + </div> + </xsl:if> +</xsl:template> + +<xsl:template match="setindex"> + <!-- 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. Unless generate.index --> + <!-- is non-zero, in which case, this is where the automatically --> + <!-- generated index should go. --> + + <xsl:if test="count(*)>0 or $generate.index != '0'"> + <div class="{name(.)}"> + <xsl:if test="$generate.id.attributes != 0"> + <xsl:attribute name="id"> + <xsl:call-template name="object.id"/> + </xsl:attribute> + </xsl:if> + + <xsl:call-template name="setindex.titlepage"/> + <xsl:apply-templates/> + + <xsl:if test="count(indexentry) = 0 and count(indexdiv) = 0"> + <xsl:call-template name="generate-index"> + <xsl:with-param name="scope" select="/"/> + </xsl:call-template> + </xsl:if> + + <xsl:if test="not(parent::article)"> + <xsl:call-template name="process.footnotes"/> + </xsl:if> </div> </xsl:if> </xsl:template> Index: phpdoc/xsl/docbook/html/info.xsl diff -u phpdoc/xsl/docbook/html/info.xsl:1.1 phpdoc/xsl/docbook/html/info.xsl:1.2 --- phpdoc/xsl/docbook/html/info.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/info.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: info.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: info.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. Index: phpdoc/xsl/docbook/html/inline.xsl diff -u phpdoc/xsl/docbook/html/inline.xsl:1.1 phpdoc/xsl/docbook/html/inline.xsl:1.2 --- phpdoc/xsl/docbook/html/inline.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/inline.xsl Sun Mar 9 09:56:38 2003 @@ -1,11 +1,12 @@ <?xml version='1.0'?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xlink='http://www.w3.org/1999/xlink' - exclude-result-prefixes="xlink" + xmlns:suwl="http://nwalsh.com/xslt/ext/com.nwalsh.saxon.UnwrapLinks" + exclude-result-prefixes="xlink suwl" version='1.0'> <!-- ******************************************************************** - $Id: inline.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: inline.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -20,62 +21,74 @@ <xsl:apply-templates/> </xsl:param> - <xsl:choose> - <xsl:when test="$node/@xlink:type='simple' and $node/@xlink:href"> - <a> - <xsl:if test="@xlink.title"> - <xsl:attribute name="title"> - <xsl:value-of select="@xlink:title"/> - </xsl:attribute> - </xsl:if> + <xsl:variable name="link"> + <xsl:choose> + <xsl:when test="$node/@xlink:href + and (not($node/@xlink:type) or $node/@xlink:type='simple')"> + <a> + <xsl:if test="@xlink.title"> + <xsl:attribute name="title"> + <xsl:value-of select="@xlink:title"/> + </xsl:attribute> + </xsl:if> - <xsl:attribute name="href"> - <xsl:choose> - <!-- if the href starts with # and does not contain an "(" --> - <!-- or if the href starts with #xpointer(id(, it's just an ID --> - <xsl:when test="starts-with(@xlink:href,'#') - and (not(contains(@xlink:href,'(')) - or starts-with(@xlink:href,'#xpointer(id('))"> - <xsl:variable name="idref"> - <xsl:call-template name="xpointer.idref"> - <xsl:with-param name="xpointer" select="@xlink:href"/> - </xsl:call-template> - </xsl:variable> + <xsl:attribute name="href"> + <xsl:choose> + <!-- if the href starts with # and does not contain an "(" --> + <!-- or if the href starts with #xpointer(id(, it's just an ID --> + <xsl:when test="starts-with(@xlink:href,'#') + and (not(contains(@xlink:href,'(')) + or starts-with(@xlink:href,'#xpointer(id('))"> + <xsl:variable name="idref"> + <xsl:call-template name="xpointer.idref"> + <xsl:with-param name="xpointer" select="@xlink:href"/> + </xsl:call-template> + </xsl:variable> - <xsl:variable name="targets" select="key('id',$idref)"/> - <xsl:variable name="target" select="$targets[1]"/> + <xsl:variable name="targets" select="key('id',$idref)"/> + <xsl:variable name="target" select="$targets[1]"/> - <xsl:call-template name="check.id.unique"> - <xsl:with-param name="linkend" select="@linkend"/> - </xsl:call-template> + <xsl:call-template name="check.id.unique"> + <xsl:with-param name="linkend" select="@linkend"/> + </xsl:call-template> - <xsl:choose> - <xsl:when test="count($target) = 0"> - <xsl:message> - <xsl:text>XLink to nonexistent id: </xsl:text> - <xsl:value-of select="$idref"/> - </xsl:message> - <xsl:text>???</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="href.target"> - <xsl:with-param name="object" select="$target"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - - <!-- otherwise it's a URI --> - <xsl:otherwise> - <xsl:value-of select="@xlink:href"/> - </xsl:otherwise> - </xsl:choose> - </xsl:attribute> + <xsl:choose> + <xsl:when test="count($target) = 0"> + <xsl:message> + <xsl:text>XLink to nonexistent id: </xsl:text> + <xsl:value-of select="$idref"/> + </xsl:message> + <xsl:text>???</xsl:text> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="href.target"> + <xsl:with-param name="object" select="$target"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + + <!-- otherwise it's a URI --> + <xsl:otherwise> + <xsl:value-of select="@xlink:href"/> + </xsl:otherwise> + </xsl:choose> + </xsl:attribute> + <xsl:copy-of select="$content"/> + </a> + </xsl:when> + <xsl:otherwise> <xsl:copy-of select="$content"/> - </a> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:choose> + <xsl:when test="function-available('suwl:unwrapLinks')"> + <xsl:copy-of select="suwl:unwrapLinks($link)"/> </xsl:when> <xsl:otherwise> - <xsl:copy-of select="$content"/> + <xsl:copy-of select="$link"/> </xsl:otherwise> </xsl:choose> </xsl:template> @@ -89,7 +102,7 @@ </xsl:with-param> </xsl:call-template> </xsl:param> - <xsl:copy-of select="$content"/> + <span class="{local-name(.)}"><xsl:copy-of select="$content"/></span> </xsl:template> <xsl:template name="inline.monoseq"> @@ -101,7 +114,7 @@ </xsl:with-param> </xsl:call-template> </xsl:param> - <tt><xsl:copy-of select="$content"/></tt> + <tt class="{local-name(.)}"><xsl:copy-of select="$content"/></tt> </xsl:template> <xsl:template name="inline.boldseq"> @@ -122,7 +135,7 @@ <xsl:copy-of select="$content"/> </xsl:when> <xsl:otherwise> - <b><xsl:copy-of select="$content"/></b> + <b class="{local-name(.)}"><xsl:copy-of select="$content"/></b> </xsl:otherwise> </xsl:choose> </xsl:template> @@ -136,7 +149,7 @@ </xsl:with-param> </xsl:call-template> </xsl:param> - <i><xsl:copy-of select="$content"/></i> + <i class="{local-name(.)}"><xsl:copy-of select="$content"/></i> </xsl:template> <xsl:template name="inline.boldmonoseq"> @@ -156,10 +169,10 @@ or local-name(../..) = 'example' or local-name(../..) = 'table' or local-name(../..) = 'formalpara')"> - <tt><xsl:copy-of select="$content"/></tt> + <tt class="{local-name(.)}"><xsl:copy-of select="$content"/></tt> </xsl:when> <xsl:otherwise> - <b><tt><xsl:copy-of select="$content"/></tt></b> + <b class="{local-name(.)}"><tt><xsl:copy-of select="$content"/></tt></b> </xsl:otherwise> </xsl:choose> </xsl:template> @@ -173,7 +186,7 @@ </xsl:with-param> </xsl:call-template> </xsl:param> - <i><tt><xsl:copy-of select="$content"/></tt></i> + <i class="{local-name(.)}"><tt><xsl:copy-of select="$content"/></tt></i> </xsl:template> <xsl:template name="inline.superscriptseq"> @@ -204,15 +217,24 @@ <!-- some special cases --> <xsl:template match="author"> - <span class="{name(.)}"><xsl:call-template name="person.name"/></span> + <span class="{name(.)}"> + <xsl:call-template name="anchor"/> + <xsl:call-template name="person.name"/> + </span> </xsl:template> <xsl:template match="editor"> - <span class="{name(.)}"><xsl:call-template name="person.name"/></span> + <span class="{name(.)}"> + <xsl:call-template name="anchor"/> + <xsl:call-template name="person.name"/> + </span> </xsl:template> <xsl:template match="othercredit"> - <span class="{name(.)}"><xsl:call-template name="person.name"/></span> + <span class="{name(.)}"> + <xsl:call-template name="anchor"/> + <xsl:call-template name="person.name"/> + </span> </xsl:template> <xsl:template match="authorinitials"> @@ -277,6 +299,10 @@ <xsl:call-template name="inline.charseq"/> </xsl:template> +<xsl:template match="errortext"> + <xsl:call-template name="inline.charseq"/> +</xsl:template> + <xsl:template match="envar"> <xsl:call-template name="inline.monoseq"/> </xsl:template> @@ -522,6 +548,9 @@ </xsl:otherwise> </xsl:choose> </xsl:when> + <xsl:when test="@role and $emphasis.propagates.style != 0"> + <xsl:apply-templates/> + </xsl:when> <xsl:otherwise> <em><xsl:apply-templates/></em> </xsl:otherwise> @@ -532,7 +561,12 @@ </xsl:template> <xsl:template match="foreignphrase"> - <xsl:call-template name="inline.italicseq"/> + <span class="foreignphrase"> + <xsl:if test="@lang or @xml:lang"> + <xsl:call-template name="language.attribute"/> + </xsl:if> + <xsl:call-template name="inline.italicseq"/> + </span> </xsl:template> <xsl:template match="markup"> @@ -541,6 +575,9 @@ <xsl:template match="phrase"> <span> + <xsl:if test="@lang or @xml:lang"> + <xsl:call-template name="language.attribute"/> + </xsl:if> <xsl:if test="@role and $phrase.propagates.style != 0"> <xsl:attribute name="class"> <xsl:value-of select="@role"/> @@ -584,7 +621,9 @@ </xsl:template> <xsl:template match="lineannotation"> - <xsl:call-template name="inline.charseq"/> + <i class="{local-name(.)}"> + <xsl:call-template name="inline.charseq"/> + </i> </xsl:template> <xsl:template match="superscript"> @@ -729,15 +768,16 @@ <xsl:variable name="term"> <xsl:choose> <xsl:when test="@baseform"> - <xsl:value-of select="@baseform"/> + <xsl:value-of select="normalize-space(@baseform)"/> </xsl:when> <xsl:otherwise> - <xsl:value-of select="."/> + <xsl:value-of select="normalize-space(.)"/> </xsl:otherwise> </xsl:choose> </xsl:variable> <xsl:variable name="targets" - select="//glossentry[glossterm=$term or glossterm/@baseform=$term]"/> + select="//glossentry[normalize-space(glossterm)=$term + or normalize-space(glossterm/@baseform)=$term]"/> <xsl:variable name="target" select="$targets[1]"/> <xsl:choose> @@ -914,9 +954,11 @@ <xsl:choose> <xsl:when test="name($node)='guimenuitem' or name($node)='guisubmenu'"> - <xsl:text>-></xsl:text> + <xsl:value-of select="$menuchoice.menu.separator"/> </xsl:when> - <xsl:otherwise>+</xsl:otherwise> + <xsl:otherwise> + <xsl:value-of select="$menuchoice.separator"/> + </xsl:otherwise> </xsl:choose> <xsl:apply-templates select="$node"/> <xsl:call-template name="process.menuchoice"> Index: phpdoc/xsl/docbook/html/keywords.xsl diff -u phpdoc/xsl/docbook/html/keywords.xsl:1.1 phpdoc/xsl/docbook/html/keywords.xsl:1.2 --- phpdoc/xsl/docbook/html/keywords.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/keywords.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: keywords.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: keywords.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. Index: phpdoc/xsl/docbook/html/lists.xsl diff -u phpdoc/xsl/docbook/html/lists.xsl:1.1 phpdoc/xsl/docbook/html/lists.xsl:1.2 --- phpdoc/xsl/docbook/html/lists.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/lists.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: lists.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: lists.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -15,16 +15,21 @@ <!-- ==================================================================== --> <xsl:template match="itemizedlist"> - <xsl:variable name="itemsymbol"> - <xsl:call-template name="list.itemsymbol"/> - </xsl:variable> - <div class="{name(.)}"> <xsl:call-template name="anchor"/> <xsl:if test="title"> - <xsl:apply-templates select="title"/> + <xsl:call-template name="formal.object.heading"/> </xsl:if> - <ul type="{$itemsymbol}"> + + <xsl:apply-templates select="*[not(self::listitem or self::title)]"/> + + <ul> + <xsl:if test="$css.decoration != 0"> + <xsl:attribute name="type"> + <xsl:call-template name="list.itemsymbol"/> + </xsl:attribute> + </xsl:if> + <xsl:if test="@spacing='compact'"> <xsl:attribute name="compact"> <xsl:value-of select="@spacing"/> @@ -36,7 +41,7 @@ </xsl:template> <xsl:template match="itemizedlist/title"> - <p class="title"><b><xsl:apply-templates/></b></p> + <!-- nop --> </xsl:template> <xsl:template match="itemizedlist/listitem"> @@ -56,6 +61,7 @@ <xsl:variable name="cssmark"> <xsl:choose> + <xsl:when test="$usemark = 'opencircle'">circle</xsl:when> <xsl:when test="$usemark = 'bullet'">disc</xsl:when> <xsl:when test="$usemark = 'box'">square</xsl:when> <xsl:otherwise> @@ -93,29 +99,6 @@ </li> </xsl:template> -<xsl:template name="orderedlist-starting-number"> - <xsl:param name="list" select="."/> - <xsl:choose> - <xsl:when test="$list/@continuation != 'continues'">1</xsl:when> - <xsl:otherwise> - <xsl:variable name="prevlist" - select="$list/preceding::orderedlist[1]"/> - <xsl:choose> - <xsl:when test="count($prevlist) = 0">2</xsl:when> - <xsl:otherwise> - <xsl:variable name="prevlength" select="count($prevlist/listitem)"/> - <xsl:variable name="prevstart"> - <xsl:call-template name="orderedlist-starting-number"> - <xsl:with-param name="list" select="$prevlist"/> - </xsl:call-template> - </xsl:variable> - <xsl:value-of select="$prevstart + $prevlength"/> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - <xsl:template match="orderedlist"> <xsl:variable name="start"> <xsl:choose> @@ -150,32 +133,36 @@ <div class="{name(.)}"> <xsl:call-template name="anchor"/> + <xsl:if test="title"> - <xsl:apply-templates select="title"/> + <xsl:call-template name="formal.object.heading"/> </xsl:if> + + <xsl:apply-templates select="*[not(self::listitem or self::title)]"/> + <ol> - <xsl:if test="$start != '1'"> - <xsl:attribute name="start"> - <xsl:value-of select="$start"/> - </xsl:attribute> - </xsl:if> - <xsl:if test="$numeration != ''"> - <xsl:attribute name="type"> - <xsl:value-of select="$type"/> - </xsl:attribute> - </xsl:if> - <xsl:if test="@spacing='compact'"> - <xsl:attribute name="compact"> - <xsl:value-of select="compact"/> - </xsl:attribute> - </xsl:if> - <xsl:apply-templates select="listitem"/> + <xsl:if test="$start != '1'"> + <xsl:attribute name="start"> + <xsl:value-of select="$start"/> + </xsl:attribute> + </xsl:if> + <xsl:if test="$numeration != ''"> + <xsl:attribute name="type"> + <xsl:value-of select="$type"/> + </xsl:attribute> + </xsl:if> + <xsl:if test="@spacing='compact'"> + <xsl:attribute name="compact"> + <xsl:value-of select="@spacing"/> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates select="listitem"/> </ol> </div> </xsl:template> <xsl:template match="orderedlist/title"> - <p class="title"><b><xsl:apply-templates/></b></p> + <!-- nop --> </xsl:template> <xsl:template match="orderedlist/listitem"> @@ -257,7 +244,7 @@ <div class="{name(.)}"> <xsl:call-template name="anchor"/> <xsl:if test="title"> - <xsl:apply-templates select="title"/> + <xsl:call-template name="formal.object.heading"/> </xsl:if> <xsl:choose> @@ -273,7 +260,7 @@ <xsl:value-of select="$table-summary"/> </xsl:attribute> </xsl:if> - <col align="left"> + <col align="left" valign="top"> <xsl:if test="$term-width != ''"> <xsl:attribute name="width"> <xsl:value-of select="$term-width"/> @@ -295,7 +282,7 @@ </xsl:template> <xsl:template match="variablelist/title"> - <p class="title"><b><xsl:apply-templates/></b></p> + <!-- nop --> </xsl:template> <xsl:template match="listitem" mode="xref"> @@ -314,6 +301,12 @@ </xsl:when> <xsl:otherwise> <p> + <xsl:if test="@role and $para.propagates.style != 0"> + <xsl:attribute name="class"> + <xsl:value-of select="@role"/> + </xsl:attribute> + </xsl:if> + <xsl:call-template name="anchor"/> <xsl:apply-templates/> </p> @@ -348,6 +341,12 @@ </xsl:call-template> </xsl:variable> <tr> + <xsl:call-template name="tr.attributes"> + <xsl:with-param name="rownum"> + <xsl:number from="variablelist" count="varlistentry"/> + </xsl:with-param> + </xsl:call-template> + <td> <xsl:call-template name="anchor"/> <xsl:choose> @@ -476,6 +475,11 @@ <xsl:if test="$cell <= count($members)"> <tr> + <xsl:call-template name="tr.attributes"> + <xsl:with-param name="row" select="$members[1]"/> + <xsl:with-param name="rownum" select="(($cell - 1) div $cols) + 1"/> + </xsl:call-template> + <xsl:call-template name="simplelist.horiz.row"> <xsl:with-param name="cols" select="$cols"/> <xsl:with-param name="cell" select="$cell"/> @@ -525,6 +529,11 @@ <xsl:if test="$cell <= $rows"> <tr> + <xsl:call-template name="tr.attributes"> + <xsl:with-param name="row" select="$members[1]"/> + <xsl:with-param name="rownum" select="$cell"/> + </xsl:call-template> + <xsl:call-template name="simplelist.vert.row"> <xsl:with-param name="cols" select="$cols"/> <xsl:with-param name="rows" select="$rows"/> @@ -570,6 +579,7 @@ </xsl:template> <xsl:template match="member"> + <xsl:call-template name="anchor"/> <xsl:apply-templates/> </xsl:template> @@ -609,14 +619,7 @@ <xsl:call-template name="anchor"/> <xsl:if test="title and $placement = 'before'"> - <xsl:choose> - <xsl:when test="$formal.procedures != 0"> - <xsl:call-template name="formal.object.heading"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="title"/> - </xsl:otherwise> - </xsl:choose> + <xsl:call-template name="formal.object.heading"/> </xsl:if> <xsl:apply-templates select="$preamble"/> @@ -638,32 +641,13 @@ </xsl:choose> <xsl:if test="title and $placement != 'before'"> - <xsl:choose> - <xsl:when test="$formal.procedures != 0"> - <xsl:call-template name="formal.object.heading"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="title"/> - </xsl:otherwise> - </xsl:choose> + <xsl:call-template name="formal.object.heading"/> </xsl:if> </div> </xsl:template> <xsl:template match="procedure/title"> - <p class="title"> - <b> - <xsl:apply-templates/> - </b> - </p> -</xsl:template> - -<xsl:template match="title" mode="procedure.title.mode"> - <p class="title"> - <b> - <xsl:apply-templates/> - </b> - </p> + <!-- nop --> </xsl:template> <xsl:template match="substeps"> @@ -686,7 +670,11 @@ </xsl:template> <xsl:template match="step/title"> - <xsl:apply-templates select="." mode="procedure.title.mode"/> + <p class="title"> + <b> + <xsl:apply-templates/> + </b> + </p> </xsl:template> <!-- ==================================================================== --> @@ -788,6 +776,10 @@ </xsl:if> <thead> <tr> + <xsl:call-template name="tr.attributes"> + <xsl:with-param name="row" select="segtitle[1]"/> + <xsl:with-param name="rownum" select="1"/> + </xsl:call-template> <xsl:apply-templates select="segtitle" mode="seglist-table"/> </tr> </thead> @@ -802,7 +794,14 @@ </xsl:template> <xsl:template match="seglistitem" mode="seglist-table"> + <xsl:variable name="seglinum"> + <xsl:number from="segmentedlist" count="seglistitem"/> + </xsl:variable> + <tr> + <xsl:call-template name="tr.attributes"> + <xsl:with-param name="rownum" select="$seglinum + 1"/> + </xsl:call-template> <xsl:apply-templates mode="seglist-table"/> </tr> </xsl:template> @@ -816,12 +815,8 @@ <xsl:template match="calloutlist"> <div class="{name(.)}"> <xsl:call-template name="anchor"/> - <xsl:if test="./title"> - <p> - <b> - <xsl:apply-templates select="./title" mode="calloutlist.title.mode"/> - </b> - </p> + <xsl:if test="title"> + <xsl:call-template name="formal.object.heading"/> </xsl:if> <xsl:choose> <xsl:when test="$callout.list.table != 0"> @@ -839,14 +834,16 @@ <xsl:template match="calloutlist/title"> </xsl:template> -<xsl:template match="calloutlist/title" mode="calloutlist.title.mode"> - <xsl:apply-templates/> -</xsl:template> - <xsl:template match="callout"> <xsl:choose> <xsl:when test="$callout.list.table != 0"> <tr> + <xsl:call-template name="tr.attributes"> + <xsl:with-param name="rownum"> + <xsl:number from="calloutlist" count="callout"/> + </xsl:with-param> + </xsl:call-template> + <td width="5%" valign="top" align="left"> <xsl:call-template name="anchor"/> <xsl:call-template name="callout.arearefs"> Index: phpdoc/xsl/docbook/html/manifest.xsl diff -u phpdoc/xsl/docbook/html/manifest.xsl:1.1 phpdoc/xsl/docbook/html/manifest.xsl:1.2 --- phpdoc/xsl/docbook/html/manifest.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/manifest.xsl Sun Mar 9 09:56:38 2003 @@ -11,7 +11,7 @@ <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:with-param name="encoding" select="$chunker.output.encoding"/> </xsl:call-template> </xsl:template> Index: phpdoc/xsl/docbook/html/math.xsl diff -u phpdoc/xsl/docbook/html/math.xsl:1.1 phpdoc/xsl/docbook/html/math.xsl:1.2 --- phpdoc/xsl/docbook/html/math.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/math.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: math.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: math.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -54,7 +54,7 @@ </xsl:otherwise> </xsl:choose> </xsl:with-param> - <xsl:with-param name="encoding" select="$default.encoding"/> + <xsl:with-param name="encoding" select="$chunker.output.encoding"/> </xsl:call-template> </xsl:template> @@ -226,57 +226,19 @@ <xsl:param name="olist" select="imageobject|imageobjectco |videoobject|audioobject|textobject"/> - <xsl:param name="count">1</xsl:param> - <xsl:if test="$count <= count($olist)"> - <xsl:variable name="object" select="$olist[position()=$count]"/> - - <xsl:variable name="useobject"> - <xsl:choose> - <!-- The phrase is never used --> - <xsl:when test="name($object)='textobject' and $object/phrase"> - <xsl:text>0</xsl:text> - </xsl:when> - <!-- The first textobject is not a reasonable fallback for equation image --> - <xsl:when test="name($object)='textobject'"> - <xsl:text>0</xsl:text> - </xsl:when> - <!-- If there's only one object, use it --> - <xsl:when test="$count = 1 and count($olist) = 1"> - <xsl:text>1</xsl:text> - </xsl:when> - <!-- Otherwise, see if this one is a useable graphic --> - <xsl:otherwise> - <xsl:choose> - <!-- peek inside imageobjectco to simplify the test --> - <xsl:when test="local-name($object) = 'imageobjectco'"> - <xsl:call-template name="is.acceptable.mediaobject"> - <xsl:with-param name="object" select="$object/imageobject"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="is.acceptable.mediaobject"> - <xsl:with-param name="object" select="$object"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> + <xsl:variable name="mediaobject.index"> + <xsl:call-template name="select.mediaobject.index"> + <xsl:with-param name="olist" select="$olist"/> + <xsl:with-param name="count" select="1"/> + </xsl:call-template> + </xsl:variable> - <xsl:choose> - <xsl:when test="$useobject='1'"> - <xsl:call-template name="mediaobject.filename"> - <xsl:with-param name="object" select="$object"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="select.mediaobject"> - <xsl:with-param name="olist" select="$olist"/> - <xsl:with-param name="count" select="$count + 1"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> + <xsl:if test="$mediaobject.index != ''"> + <xsl:call-template name="mediaobject.filename"> + <xsl:with-param name="object" + select="$olist[position() = $mediaobject.index]"/> + </xsl:call-template> </xsl:if> </xsl:template> Index: phpdoc/xsl/docbook/html/param.ent diff -u phpdoc/xsl/docbook/html/param.ent:1.1 phpdoc/xsl/docbook/html/param.ent:1.2 --- phpdoc/xsl/docbook/html/param.ent:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/param.ent Sun Mar 9 09:56:38 2003 @@ -21,20 +21,30 @@ <!ENTITY callout.unicode.start.character SYSTEM "../params/callout.unicode.start.character.xml"> <!ENTITY callouts.extension SYSTEM "../params/callouts.extension.xml"> <!ENTITY chapter.autolabel SYSTEM "../params/chapter.autolabel.xml"> -<!ENTITY chunk.datafile SYSTEM "../params/chunk.datafile.xml"> <!ENTITY chunk.first.sections SYSTEM "../params/chunk.first.sections.xml"> <!ENTITY chunk.quietly SYSTEM "../params/chunk.quietly.xml"> <!ENTITY chunk.section.depth SYSTEM "../params/chunk.section.depth.xml"> <!ENTITY chunk.toc SYSTEM "../params/chunk.toc.xml"> +<!ENTITY chunker.output.cdata-section-elements SYSTEM "../params/chunker.output.cdata-section-elements.xml"> +<!ENTITY chunker.output.doctype-public SYSTEM "../params/chunker.output.doctype-public.xml"> +<!ENTITY chunker.output.doctype-system SYSTEM "../params/chunker.output.doctype-system.xml"> +<!ENTITY chunker.output.encoding SYSTEM "../params/chunker.output.encoding.xml"> +<!ENTITY chunker.output.indent SYSTEM "../params/chunker.output.indent.xml"> +<!ENTITY chunker.output.media-type SYSTEM "../params/chunker.output.media-type.xml"> +<!ENTITY chunker.output.method SYSTEM "../params/chunker.output.method.xml"> +<!ENTITY chunker.output.omit-xml-declaration SYSTEM "../params/chunker.output.omit-xml-declaration.xml"> +<!ENTITY chunker.output.standalone SYSTEM "../params/chunker.output.standalone.xml"> <!ENTITY citerefentry.link SYSTEM "../params/citerefentry.link.xml"> +<!ENTITY collect.xref.targets SYSTEM "../params/collect.xref.targets.xml"> <!ENTITY css.decoration SYSTEM "../params/css.decoration.xml"> -<!ENTITY default.encoding SYSTEM "../params/default.encoding.xml"> +<!ENTITY current.docid SYSTEM "../params/current.docid.xml"> <!ENTITY default.table.width SYSTEM "../params/default.table.width.xml"> <!ENTITY draft.watermark.image SYSTEM "../params/draft.watermark.image.xml"> <!ENTITY ebnf.table.bgcolor SYSTEM "../params/ebnf.table.bgcolor.xml"> <!ENTITY ebnf.table.border SYSTEM "../params/ebnf.table.border.xml"> <!ENTITY emphasis.propagates.style SYSTEM "../params/emphasis.propagates.style.xml"> <!ENTITY firstterm.only.link SYSTEM "../params/firstterm.only.link.xml"> +<!ENTITY footer.rule SYSTEM "../params/footer.rule.xml"> <!ENTITY formal.procedures SYSTEM "../params/formal.procedures.xml"> <!ENTITY formal.title.placement SYSTEM "../params/formal.title.placement.xml"> <!ENTITY funcsynopsis.decoration SYSTEM "../params/funcsynopsis.decoration.xml"> @@ -44,11 +54,13 @@ <!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.meta.abstract SYSTEM "../params/generate.meta.abstract.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 glossterm.auto.link SYSTEM "../params/glossterm.auto.link.xml"> <!ENTITY graphic.default.extension SYSTEM "../params/graphic.default.extension.xml"> +<!ENTITY header.rule SYSTEM "../params/header.rule.xml"> <!ENTITY html.base SYSTEM "../params/html.base.xml"> <!ENTITY html.cleanup SYSTEM "../params/html.cleanup.xml"> <!ENTITY html.ext SYSTEM "../params/html.ext.xml"> @@ -59,19 +71,46 @@ <!ENTITY html.stylesheet.type SYSTEM "../params/html.stylesheet.type.xml"> <!ENTITY htmlhelp.alias.file SYSTEM "../params/htmlhelp.alias.file.xml"> <!ENTITY htmlhelp.autolabel SYSTEM "../params/htmlhelp.autolabel.xml"> +<!ENTITY htmlhelp.button.back SYSTEM "../params/htmlhelp.button.back.xml"> +<!ENTITY htmlhelp.button.forward SYSTEM "../params/htmlhelp.button.forward.xml"> +<!ENTITY htmlhelp.button.hideshow SYSTEM "../params/htmlhelp.button.hideshow.xml"> +<!ENTITY htmlhelp.button.home SYSTEM "../params/htmlhelp.button.home.xml"> +<!ENTITY htmlhelp.button.home.url SYSTEM "../params/htmlhelp.button.home.url.xml"> +<!ENTITY htmlhelp.button.jump1 SYSTEM "../params/htmlhelp.button.jump1.xml"> +<!ENTITY htmlhelp.button.jump1.title SYSTEM "../params/htmlhelp.button.jump1.title.xml"> +<!ENTITY htmlhelp.button.jump1.url SYSTEM "../params/htmlhelp.button.jump1.url.xml"> +<!ENTITY htmlhelp.button.jump2 SYSTEM "../params/htmlhelp.button.jump2.xml"> +<!ENTITY htmlhelp.button.jump2.title SYSTEM "../params/htmlhelp.button.jump2.title.xml"> +<!ENTITY htmlhelp.button.jump2.url SYSTEM "../params/htmlhelp.button.jump2.url.xml"> +<!ENTITY htmlhelp.button.locate SYSTEM "../params/htmlhelp.button.locate.xml"> +<!ENTITY htmlhelp.button.next SYSTEM "../params/htmlhelp.button.next.xml"> +<!ENTITY htmlhelp.button.options SYSTEM "../params/htmlhelp.button.options.xml"> +<!ENTITY htmlhelp.button.prev SYSTEM "../params/htmlhelp.button.prev.xml"> +<!ENTITY htmlhelp.button.print SYSTEM "../params/htmlhelp.button.print.xml"> +<!ENTITY htmlhelp.button.refresh SYSTEM "../params/htmlhelp.button.refresh.xml"> +<!ENTITY htmlhelp.button.stop SYSTEM "../params/htmlhelp.button.stop.xml"> +<!ENTITY htmlhelp.button.zoom SYSTEM "../params/htmlhelp.button.zoom.xml"> <!ENTITY htmlhelp.chm SYSTEM "../params/htmlhelp.chm.xml"> <!ENTITY htmlhelp.default.topic SYSTEM "../params/htmlhelp.default.topic.xml"> <!ENTITY htmlhelp.encoding SYSTEM "../params/htmlhelp.encoding.xml"> <!ENTITY htmlhelp.enumerate.images SYSTEM "../params/htmlhelp.enumerate.images.xml"> <!ENTITY htmlhelp.force.map.and.alias SYSTEM "../params/htmlhelp.force.map.and.alias.xml"> <!ENTITY htmlhelp.hhc SYSTEM "../params/htmlhelp.hhc.xml"> +<!ENTITY htmlhelp.hhc.binary SYSTEM "../params/htmlhelp.hhc.binary.xml"> <!ENTITY htmlhelp.hhc.folders.instead.books SYSTEM "../params/htmlhelp.hhc.folders.instead.books.xml"> <!ENTITY htmlhelp.hhc.section.depth SYSTEM "../params/htmlhelp.hhc.section.depth.xml"> <!ENTITY htmlhelp.hhc.show.root SYSTEM "../params/htmlhelp.hhc.show.root.xml"> +<!ENTITY htmlhelp.hhk SYSTEM "../params/htmlhelp.hhk.xml"> <!ENTITY htmlhelp.hhp SYSTEM "../params/htmlhelp.hhp.xml"> <!ENTITY htmlhelp.hhp.tail SYSTEM "../params/htmlhelp.hhp.tail.xml"> +<!ENTITY htmlhelp.hhp.window SYSTEM "../params/htmlhelp.hhp.window.xml"> <!ENTITY htmlhelp.map.file SYSTEM "../params/htmlhelp.map.file.xml"> +<!ENTITY htmlhelp.only SYSTEM "../params/htmlhelp.only.xml"> +<!ENTITY htmlhelp.show.advanced.search SYSTEM "../params/htmlhelp.show.advanced.search.xml"> +<!ENTITY htmlhelp.show.favorities SYSTEM "../params/htmlhelp.show.favorities.xml"> +<!ENTITY htmlhelp.show.menu SYSTEM "../params/htmlhelp.show.menu.xml"> <!ENTITY htmlhelp.title SYSTEM "../params/htmlhelp.title.xml"> +<!ENTITY htmlhelp.use.hhk SYSTEM "../params/htmlhelp.use.hhk.xml"> <!ENTITY inherit.keywords SYSTEM "../params/inherit.keywords.xml"> <!ENTITY label.from.part SYSTEM "../params/label.from.part.xml"> <!ENTITY linenumbering.everyNth SYSTEM "../params/linenumbering.everyNth.xml"> @@ -79,8 +118,9 @@ <!ENTITY linenumbering.separator SYSTEM "../params/linenumbering.separator.xml"> <!ENTITY linenumbering.width SYSTEM "../params/linenumbering.width.xml"> <!ENTITY link.mailto.url SYSTEM "../params/link.mailto.url.xml"> -<!ENTITY make.valid.html SYSTEM "../params/make.valid.html.xml"> +<!ENTITY make.graphic.viewport SYSTEM "../params/make.graphic.viewport.xml"> <!ENTITY make.single.year.ranges SYSTEM "../params/make.single.year.ranges.xml"> +<!ENTITY make.valid.html SYSTEM "../params/make.valid.html.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"> @@ -88,21 +128,26 @@ <!ENTITY navig.graphics.extension SYSTEM "../params/navig.graphics.extension.xml"> <!ENTITY navig.graphics.path SYSTEM "../params/navig.graphics.path.xml"> <!ENTITY navig.showtitles SYSTEM "../params/navig.showtitles.xml"> +<!ENTITY nominal.image.depth SYSTEM "../params/nominal.image.depth.xml"> +<!ENTITY nominal.image.width SYSTEM "../params/nominal.image.width.xml"> <!ENTITY nominal.table.width SYSTEM "../params/nominal.table.width.xml"> +<!ENTITY olink.base.uri SYSTEM "../params/olink.base.uri.xml"> +<!ENTITY olink.doctitle SYSTEM "../params/olink.doctitle.xml"> <!ENTITY olink.fragid SYSTEM "../params/olink.fragid.xml"> <!ENTITY olink.outline.ext SYSTEM "../params/olink.outline.ext.xml"> <!ENTITY olink.pubid SYSTEM "../params/olink.pubid.xml"> <!ENTITY olink.resolver SYSTEM "../params/olink.resolver.xml"> <!ENTITY olink.sysid SYSTEM "../params/olink.sysid.xml"> -<!ENTITY output.method SYSTEM "../params/output.method.xml"> <!ENTITY part.autolabel SYSTEM "../params/part.autolabel.xml"> <!ENTITY phrase.propagates.style SYSTEM "../params/phrase.propagates.style.xml"> <!ENTITY pixels.per.inch SYSTEM "../params/pixels.per.inch.xml"> <!ENTITY points.per.em SYSTEM "../params/points.per.em.xml"> <!ENTITY preface.autolabel SYSTEM "../params/preface.autolabel.xml"> +<!ENTITY preferred.mediaobject.role SYSTEM "../params/preferred.mediaobject.role.xml"> <!ENTITY process.empty.source.toc SYSTEM "../params/process.empty.source.toc.xml"> <!ENTITY process.source.toc SYSTEM "../params/process.source.toc.xml"> <!ENTITY profile.arch SYSTEM "../params/profile.arch.xml"> +<!ENTITY profile.attribute SYSTEM "../params/profile.attribute.xml"> <!ENTITY profile.condition SYSTEM "../params/profile.condition.xml"> <!ENTITY profile.conformance SYSTEM "../params/profile.conformance.xml"> <!ENTITY profile.lang SYSTEM "../params/profile.lang.xml"> @@ -111,11 +156,10 @@ <!ENTITY profile.revisionflag SYSTEM "../params/profile.revisionflag.xml"> <!ENTITY profile.role SYSTEM "../params/profile.role.xml"> <!ENTITY profile.security SYSTEM "../params/profile.security.xml"> +<!ENTITY profile.separator SYSTEM "../params/profile.separator.xml"> <!ENTITY profile.userlevel SYSTEM "../params/profile.userlevel.xml"> -<!ENTITY profile.vendor SYSTEM "../params/profile.vendor.xml"> -<!ENTITY profile.attribute SYSTEM "../params/profile.attribute.xml"> <!ENTITY profile.value SYSTEM "../params/profile.value.xml"> -<!ENTITY profile.separator SYSTEM "../params/profile.separator.xml"> +<!ENTITY profile.vendor SYSTEM "../params/profile.vendor.xml"> <!ENTITY punct.honorific SYSTEM "../params/punct.honorific.xml"> <!ENTITY qanda.defaultlabel SYSTEM "../params/qanda.defaultlabel.xml"> <!ENTITY qanda.inherit.numeration SYSTEM "../params/qanda.inherit.numeration.xml"> @@ -137,20 +181,53 @@ <!ENTITY show.comments SYSTEM "../params/show.comments.xml"> <!ENTITY show.revisionflag SYSTEM "../params/show.revisionflag.xml"> <!ENTITY spacing.paras SYSTEM "../params/spacing.paras.xml"> +<!ENTITY suppress.footer.navigation SYSTEM "../params/suppress.footer.navigation.xml"> +<!ENTITY suppress.header.navigation SYSTEM "../params/suppress.header.navigation.xml"> <!ENTITY suppress.navigation SYSTEM "../params/suppress.navigation.xml"> -<!ENTITY table.border.color SYSTEM "../params/table.border.color.xml"> -<!ENTITY table.border.style SYSTEM "../params/table.border.style.xml"> -<!ENTITY table.border.thickness SYSTEM "../params/table.border.thickness.xml"> <!ENTITY table.borders.with.css SYSTEM "../params/table.borders.with.css.xml"> <!ENTITY tablecolumns.extension SYSTEM "../params/tablecolumns.extension.xml"> -<!ENTITY textinsert.extension SYSTEM "../params/textinsert.extension.xml"> +<!ENTITY targets.filename SYSTEM "../params/targets.filename.xml"> +<!ENTITY target.database.document SYSTEM "../params/target.database.document.xml"> <!ENTITY tex.math.delims SYSTEM "../params/tex.math.delims.xml"> -<!ENTITY tex.math.in.alt SYSTEM "../params/tex.math.in.alt.xml"> <!ENTITY tex.math.file SYSTEM "../params/tex.math.file.xml"> +<!ENTITY tex.math.in.alt SYSTEM "../params/tex.math.in.alt.xml"> +<!ENTITY textinsert.extension SYSTEM "../params/textinsert.extension.xml"> <!ENTITY toc.list.type SYSTEM "../params/toc.list.type.xml"> <!ENTITY toc.section.depth SYSTEM "../params/toc.section.depth.xml"> <!ENTITY ulink.target SYSTEM "../params/ulink.target.xml"> +<!ENTITY use.embed.for.svg SYSTEM "../params/use.embed.for.svg.xml"> <!ENTITY use.extensions SYSTEM "../params/use.extensions.xml"> <!ENTITY use.id.as.filename SYSTEM "../params/use.id.as.filename.xml"> +<!ENTITY use.local.olink.style SYSTEM "../params/use.local.olink.style.xml"> +<!ENTITY use.role.as.xrefstyle SYSTEM "../params/use.role.as.xrefstyle.xml"> +<!ENTITY use.role.for.mediaobject SYSTEM "../params/use.role.for.mediaobject.xml"> <!ENTITY use.svg SYSTEM "../params/use.svg.xml"> <!ENTITY variablelist.as.table SYSTEM "../params/variablelist.as.table.xml"> +<!ENTITY para.propagates.style SYSTEM "../params/para.propagates.style.xml"> +<!ENTITY html.cellpadding SYSTEM "../params/html.cellpadding.xml"> +<!ENTITY html.cellspacing SYSTEM "../params/html.cellspacing.xml"> +<!ENTITY menuchoice.separator SYSTEM "../params/menuchoice.separator.xml"> +<!ENTITY menuchoice.menu.separator SYSTEM "../params/menuchoice.menu.separator.xml"> +<!ENTITY bibliography.numbered SYSTEM "../params/bibliography.numbered.xml"> +<!ENTITY chunk.tocs.and.lots SYSTEM "../params/chunk.tocs.and.lots.xml"> +<!ENTITY graphicsize.extension SYSTEM "../params/graphicsize.extension.xml"> +<!ENTITY l10n.gentext.language SYSTEM "../params/l10n.gentext.language.xml"> +<!ENTITY l10n.gentext.default.language SYSTEM "../params/l10n.gentext.default.language.xml"> +<!ENTITY l10n.gentext.use.xref.language SYSTEM "../params/l10n.gentext.use.xref.language.xml"> +<!ENTITY default.image.width SYSTEM "../params/default.image.width.xml"> +<!ENTITY default.float.class SYSTEM "../params/default.float.class.xml"> +<!ENTITY funcsynopsis.tabular.threshold SYSTEM "../params/funcsynopsis.tabular.threshold.xml"> +<!ENTITY table.cell.border.color SYSTEM "../params/table.cell.border.color.xml"> +<!ENTITY table.cell.border.style SYSTEM "../params/table.cell.border.style.xml"> +<!ENTITY table.cell.border.thickness SYSTEM "../params/table.cell.border.thickness.xml"> +<!ENTITY table.frame.border.color SYSTEM "../params/table.frame.border.color.xml"> +<!ENTITY table.frame.border.style SYSTEM "../params/table.frame.border.style.xml"> +<!ENTITY table.frame.border.thickness SYSTEM "../params/table.frame.border.thickness.xml"> +<!ENTITY ignore.image.scaling SYSTEM "../params/ignore.image.scaling.xml"> +<!ENTITY footnote.number.format SYSTEM "../params/footnote.number.format.xml"> +<!ENTITY table.footnote.number.format SYSTEM "../params/table.footnote.number.format.xml"> +<!ENTITY footnote.number.symbols SYSTEM "../params/footnote.number.symbols.xml"> +<!ENTITY table.footnote.number.symbols SYSTEM "../params/table.footnote.number.symbols.xml"> +<!ENTITY entry.propagates.style SYSTEM "../params/entry.propagates.style.xml"> +<!ENTITY glossentry.show.acronym SYSTEM "../params/glossentry.show.acronym.xml"> +<!ENTITY xref.with.number.and.title SYSTEM "../params/xref.with.number.and.title.xml"> Index: phpdoc/xsl/docbook/html/param.xml diff -u phpdoc/xsl/docbook/html/param.xml:1.1 phpdoc/xsl/docbook/html/param.xml:1.2 --- phpdoc/xsl/docbook/html/param.xml:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/param.xml Sun Mar 9 09:56:38 2003 @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8"?> -<!-- This file was generated by weave.xsl version 0.00+. Do not edit! --> +<!-- This file was generated by weave.xsl version 1.0. Do not edit! --> <!-- See http://sourceforge.net/projects/docbook/ --> <!DOCTYPE book PUBLIC "-//DocBook Open Repository//DTD DocBook Literate Programming V0.0//EN" "http://docbook.sourceforge.net/release/litprog/current/dtd/ldocbook.dtd"> @@ -7,7 +7,7 @@ <bookinfo> <title>HTML Parameter Reference</title> <releaseinfo role="meta"> -$Id: param.xml,v 1.1 2002/08/13 15:51:37 goba Exp $ +$Id: param.xml,v 1.2 2003/03/09 14:56:38 tom Exp $ </releaseinfo> <author> <surname>Walsh</surname> @@ -675,17 +675,23 @@ <refsynopsisdiv> <src:fragment id="generate.toc.frag"><xsl:param name="generate.toc"> -appendix toc -article toc -book toc,figure,table,example,equation -chapter toc -part toc -preface toc +appendix toc,title +article/appendix nop +article toc,title +book toc,title,figure,table,example,equation +chapter toc,title +part toc,title +preface toc,title qandadiv toc qandaset toc -reference toc +reference toc,title +sect1 toc +sect2 toc +sect3 toc +sect4 toc +sect5 toc section toc -set toc +set toc,title </xsl:param> </src:fragment> </refsynopsisdiv> @@ -735,6 +741,11 @@ without a matching value. That'd be just begging the silly little path/value parser to get confused.</para> +<para>Section ToCs are further controlled by the +<parameter moreinfo="none">generate.section.toc.level</parameter> parameter. +For a given section level to have a ToC, it must have both an entry in +<parameter moreinfo="none">generate.toc</parameter> and be within the range enabled by +<parameter moreinfo="none">generate.section.toc.level</parameter>.</para> </refsect1> </refentry> @@ -939,6 +950,31 @@ </refsect1> </refentry> +<refentry id="graphicsize.extension"> +<refmeta> +<refentrytitle>graphicsize.extension</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>graphicsize.extension</refname> +<refpurpose>Enable the getWidth()/getDepth() extension functions</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="graphicsize.extension.frag"><xsl:param name="graphicsize.extension" + select="1"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If non-zero (and if <parameter moreinfo="none">use.extensions</parameter> is non-zero +and if you're using a processor that supports extension functions), the +<function moreinfo="none">getWidth</function> and <function moreinfo="none">getDepth</function> functions +will be used to extract image sizes from graphics.</para> + +</refsect1> +</refentry> + <refentry id="use.extensions"> <refmeta> <refentrytitle>use.extensions</refentrytitle> @@ -1219,7 +1255,7 @@ </refmeta> <refnamediv> <refname>html.stylesheet</refname> -<refpurpose>Name of the stylesheet to use in the generated HTML</refpurpose> +<refpurpose>Name of the stylesheet(s) to use in the generated HTML</refpurpose> </refnamediv> <refsynopsisdiv> @@ -1229,9 +1265,15 @@ <refsect1><title>Description</title> -<para>The name of the stylesheet to place in the HTML <sgmltag>LINK</sgmltag> -tag, or the empty string to suppress the stylesheet <sgmltag>LINK</sgmltag>. -</para> +<para>The <parameter moreinfo="none">html.stylesheet</parameter> parameter is either empty, +indicating that no stylesheet <sgmltag>LINK</sgmltag> tag should be generated +in the HTML output, or it is a list of one or more stylesheets.</para> + +<para>Multiple stylesheets are space-delimited. If you need to +reference a stylesheet URI that includes a space, encode it with +<literal moreinfo="none">%20</literal>. A seprate HTML <sgmltag>LINK</sgmltag> element will +be generated for each stylesheet in the order they are listed in the +parameter.</para> </refsect1> </refentry> @@ -1272,7 +1314,8 @@ </refnamediv> <refsynopsisdiv> -<src:fragment id="css.decoration.frag"><xsl:param name="css.decoration">1</xsl:param></src:fragment> +<src:fragment id="css.decoration.frag"><xsl:param name="css.decoration" + select="1"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> @@ -1337,6 +1380,30 @@ </refsect1> </refentry> +<refentry id="para.propagates.style"> +<refmeta> +<refentrytitle>para.propagates.style</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>para.propagates.style</refname> +<refpurpose>Pass para role attribute through to HTML?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="para.propagates.style.frag"><xsl:param name="para.propagates.style" + select="1"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If true, the role attribute of <sgmltag>para</sgmltag> elements +will be passed through to the HTML as a class attribute on the +<sgmltag>p</sgmltag> generated for the paragraph.</para> + +</refsect1> +</refentry> + <refentry id="phrase.propagates.style"> <refmeta> <refentrytitle>phrase.propagates.style</refentrytitle> @@ -1361,6 +1428,31 @@ </refsect1> </refentry> +<refentry id="entry.propagates.style"> +<refmeta> +<refentrytitle>entry.propagates.style</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>entry.propagates.style</refname> +<refpurpose>Pass entry role attribute through to HTML?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="entry.propagates.style.frag"><xsl:param name="entry.propagates.style" + select="1"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If true, the role attribute of <sgmltag>entry</sgmltag> elements +will be passed through to the HTML as a class attribute on the +<sgmltag>td</sgmltag> or <sgmltag>th</sgmltag> generated for the table +cell.</para> + +</refsect1> +</refentry> + <refentry id="html.longdesc"> <refmeta> <refentrytitle>html.longdesc</refentrytitle> @@ -1552,6 +1644,29 @@ </refsect1> </refentry> +<refentry id="generate.meta.abstract"> +<refmeta> +<refentrytitle>generate.meta.abstract</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>generate.meta.abstract</refname> +<refpurpose>Generate HTML <sgmltag>META</sgmltag> element from <sgmltag>abstract</sgmltag>?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="generate.meta.abstract.frag"><xsl:param name="generate.meta.abstract" + select="1"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If non-zero, document abstracts will be reproduced in the HTML +<sgmltag>HEAD</sgmltag> with <sgmltag class="starttag">meta name="description" content="..."</sgmltag>.</para> + +</refsect1> +</refentry> + </reference> <reference><title>XSLT Processing</title> @@ -1607,6 +1722,96 @@ </refsect1> </refentry> +<refentry id="suppress.navigation"> +<refmeta> +<refentrytitle>suppress.header.navigation</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>suppress.header.navigation</refname> +<refpurpose>Disable header navigation</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="suppress.header.navigation.frag"><xsl:param name="suppress.header.navigation">0</xsl:param></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para> +If <literal moreinfo="none">suppress.header.navigation</literal> is turned on, header +navigation will be suppressed.</para> + +</refsect1> +</refentry> + +<refentry id="suppress.navigation"> +<refmeta> +<refentrytitle>suppress.footer.navigation</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>suppress.footer.navigation</refname> +<refpurpose>Disable footer navigation</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="suppress.footer.navigation.frag"><xsl:param name="suppress.footer.navigation">0</xsl:param></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para> +If <literal moreinfo="none">suppress.footer.navigation</literal> is turned on, footer +navigation will be suppressed.</para> + +</refsect1> +</refentry> + +<refentry id="header.rule"> +<refmeta> +<refentrytitle>header.rule</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>header.rule</refname> +<refpurpose>Rule under headers?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="header.rule.frag"><xsl:param name="header.rule" + select="1"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If non-zero, a rule will be drawn below the page headers.</para> + +</refsect1> +</refentry> + +<refentry id="footer.rule"> +<refmeta> +<refentrytitle>footer.rule</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>footer.rule</refname> +<refpurpose>Rule over footers?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="footer.rule.frag"><xsl:param name="footer.rule" + select="1"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If non-zero, a rule will be drawn above the page footers.</para> + +</refsect1> +</refentry> + </reference> <reference><title>Meta/*Info</title> @@ -1787,6 +1992,30 @@ </refsect1> </refentry> +<refentry id="funcsynopsis.tabular.threshold"> +<refmeta> +<refentrytitle>funcsynopsis.tabular.threshold</refentrytitle> +<refmiscinfo role="type">integer</refmiscinfo> +</refmeta> +<refnamediv> +<refname>funcsynopsis.tabular.threshold</refname> +<refpurpose>Width beyond which a tabular presentation will be used</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="funcsynopsis.tabular.threshold.frag"><xsl:param name="funcsynopsis.tabular.threshold" + select="40"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If <parameter moreinfo="none">funcsynopsis.tabular.threshold</parameter> is greater than +zero then if a <sgmltag>funcprototype</sgmltag> is wider than the threshold +value, it will be presented in a table.</para> + +</refsect1> +</refentry> + <refentry id="function.parens"> <refmeta> <refentrytitle>function.parens</refentrytitle> @@ -1830,7 +2059,10 @@ <para>If true (non-zero), a "NAME" section title is output before the list of 'RefName's. This parameter and -<parameter moreinfo="none">refentry.generate.title</parameter> are mutually exclusive. +<parameter moreinfo="none">refentry.generate.title</parameter> are mutually +exclusive. This means that if you change this parameter to zero, you +should set <parameter moreinfo="none">refentry.generate.title</parameter> to 1 unless +you want get quite strange output. </para> </refsect1> @@ -1856,7 +2088,9 @@ <para>If true (non-zero), the reference page title or first name is output before the list of 'RefName's. This parameter and <parameter moreinfo="none">refentry.generate.name</parameter> are mutually exclusive. -</para> +This means that if you change this parameter to 1, you +should set <parameter moreinfo="none">refentry.generate.name</parameter> to 0 unless +you want get quite strange output.</para> </refsect1> @@ -2012,18 +2246,18 @@ </refsect1> </refentry> -<refentry id="table.border.style"> +<refentry id="table.cell.border.style"> <refmeta> -<refentrytitle>table.border.style</refentrytitle> +<refentrytitle>table.cell.border.style</refentrytitle> <refmiscinfo role="type"/> </refmeta> <refnamediv> -<refname>table.border.style</refname> +<refname>table.cell.border.style</refname> <refpurpose/> </refnamediv> <refsynopsisdiv> -<src:fragment id="table.border.style.frag"><xsl:param name="table.border.style" +<src:fragment id="table.cell.border.style.frag"><xsl:param name="table.cell.border.style" select="'solid'"/></src:fragment> </refsynopsisdiv> @@ -2034,18 +2268,18 @@ </refsect1> </refentry> -<refentry id="table.border.thickness"> +<refentry id="table.cell.border.thickness"> <refmeta> -<refentrytitle>table.border.thickness</refentrytitle> +<refentrytitle>table.cell.border.thickness</refentrytitle> <refmiscinfo role="type"/> </refmeta> <refnamediv> -<refname>table.border.thickness</refname> +<refname>table.cell.border.thickness</refname> <refpurpose/> </refnamediv> <refsynopsisdiv> -<src:fragment id="table.border.thickness.frag"><xsl:param name="table.border.thickness" +<src:fragment id="table.cell.border.thickness.frag"><xsl:param name="table.cell.border.thickness" select="'0.5pt'"/></src:fragment> </refsynopsisdiv> @@ -2056,19 +2290,87 @@ </refsect1> </refentry> -<refentry id="table.border.color"> +<refentry id="table.cell.border.color"> +<refmeta> +<refentrytitle>table.cell.border.color</refentrytitle> +<refmiscinfo role="type"/> +</refmeta> +<refnamediv> +<refname>table.cell.border.color</refname> +<refpurpose/> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="table.cell.border.color.frag"><xsl:param name="table.cell.border.color" + select="''"/> +</src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>FIXME:</para> + +</refsect1> +</refentry> + +<refentry id="table.frame.border.style"> +<refmeta> +<refentrytitle>table.frame.border.style</refentrytitle> +<refmiscinfo role="type"/> +</refmeta> +<refnamediv> +<refname>table.frame.border.style</refname> +<refpurpose/> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="table.frame.border.style.frag"><xsl:param name="table.frame.border.style" + select="'solid'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>FIXME:</para> + +</refsect1> +</refentry> + +<refentry id="table.frame.border.thickness"> +<refmeta> +<refentrytitle>table.frame.border.thickness</refentrytitle> +<refmiscinfo role="type"/> +</refmeta> +<refnamediv> +<refname>table.frame.border.thickness</refname> +<refpurpose>Specifies the thickness of the frame border</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="table.frame.border.thickness.frag"><xsl:param name="table.frame.border.thickness" + select="'0.5pt'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Specifies the thickness of the border on the table's frame.</para> + +</refsect1> +</refentry> + +<refentry id="table.frame.border.color"> <refmeta> -<refentrytitle>table.border.color</refentrytitle> +<refentrytitle>table.frame.border.color</refentrytitle> <refmiscinfo role="type"/> </refmeta> <refnamediv> -<refname>table.border.color</refname> +<refname>table.frame.border.color</refname> <refpurpose/> </refnamediv> <refsynopsisdiv> -<src:fragment id="table.border.color.frag"><xsl:param name="table.border.color" - select="'black'"/></src:fragment> +<src:fragment id="table.frame.border.color.frag"><xsl:param name="table.frame.border.color" + select="''"/> +</src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> @@ -2078,6 +2380,52 @@ </refsect1> </refentry> +<refentry id="html.cellspacing"> +<refmeta> +<refentrytitle>html.cellspacing</refentrytitle> +<refmiscinfo role="type">integer</refmiscinfo> +</refmeta> +<refnamediv> +<refname>html.cellspacing</refname> +<refpurpose>Default value for cellspacing in HTML tables</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="html.cellspacing.frag"><xsl:param name="html.cellspacing" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If specified, this value will be used as the default cellspacing value +in HTML tables.</para> + +</refsect1> +</refentry> + +<refentry id="html.cellpadding"> +<refmeta> +<refentrytitle>html.cellpadding</refentrytitle> +<refmiscinfo role="type">integer</refmiscinfo> +</refmeta> +<refnamediv> +<refname>html.cellpadding</refname> +<refpurpose>Default value for cellpadding in HTML tables</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="html.cellpadding.frag"><xsl:param name="html.cellpadding" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If specified, this value will be used as the default cellpadding value +in HTML tables.</para> + +</refsect1> +</refentry> + </reference> <reference><title>QAndASet</title> @@ -2132,6 +2480,171 @@ </reference> <reference><title>Linking</title> +<refentry id="target.database.document"> +<refmeta> +<refentrytitle>target.database.document</refentrytitle> +<refmiscinfo role="type">uri</refmiscinfo> +</refmeta> +<refnamediv> +<refname>target.database.document</refname> +<refpurpose>Name of master database file for resolving +olinks</refpurpose> +</refnamediv> +<refsynopsisdiv> <src:fragment id="target.database.document.frag"><xsl:param name="target.database.document" + select="''"/></src:fragment> +</refsynopsisdiv> +<refsect1> +<title>Description</title> +<para> +To resolve olinks between documents, the stylesheets use +a master database document that identifies the target datafiles for all the documents within the scope +of the olinks. This parameter value is the URI of +the master document to be read during processing to resolve olinks. +The default value is <filename moreinfo="none">olinkdb.xml</filename>.</para> +<para>The data structure of the file is defined in the <filename moreinfo="none">targetdatabase.dtd</filename> DTD. The database file provides the high level elements to record the identifiers, locations, and relationships of documents. The cross reference data for individual documents is generally pulled into the database using system entity references or XIncludes. See also <parameter moreinfo="none">targets.filename</parameter>. + +</para> +</refsect1> +</refentry> + +<refentry id="targets.filename"> +<refmeta> +<refentrytitle>targets.filename</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>targets.filename</refname> +<refpurpose>Name of cross reference targets data file</refpurpose> +</refnamediv> +<refsynopsisdiv> <src:fragment id="targets.filename.frag"><xsl:param name="targets.filename" + select="'target.db'"/></src:fragment> +</refsynopsisdiv> +<refsect1> +<title>Description</title> +<para> +In order to resolve olinks efficiently, the stylesheets can +generate an external data file containing information about +all potential cross reference endpoints in a document. +This parameter lets you change the name of the generated +file from the default name <filename moreinfo="none">target.db</filename>. +The name must agree with that used in the target database +used to resolve olinks during processing. +See also <parameter moreinfo="none">target.database.document</parameter>. +</para> +</refsect1> +</refentry> + +<refentry id="collect.xref.targets"> +<refmeta> +<refentrytitle>collect.xref.targets</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>collect.xref.targets</refname> +<refpurpose>Controls whether cross reference data is +collected</refpurpose> +</refnamediv> +<refsynopsisdiv> <src:fragment id="collect.xref.targets.frag"><xsl:param name="collect.xref.targets" + select="'no'"/></src:fragment> +</refsynopsisdiv> +<refsect1> +<title>Description</title> +<para> +In order to resolve olinks efficiently, the stylesheets can +generate an external data file containing information about +all potential cross reference endpoints in a document. +This parameter determines whether the collection process is run when the document is processed by the stylesheet. The default value is <literal moreinfo="none">no</literal>, which means the data file is not generated during processing. The other choices are <literal moreinfo="none">yes</literal>, which means the data file is created and the document is processed for output, and <literal moreinfo="none">only</literal>, which means the data file is created but the document is not processed for output. +See also <parameter moreinfo="none">targets.filename</parameter>. +</para> +</refsect1> +</refentry> + +<refentry id="olink.base.uri"> +<refmeta> +<refentrytitle>olink.base.uri</refentrytitle> +<refmiscinfo role="type">uri</refmiscinfo> +</refmeta> +<refnamediv> +<refname>olink.base.uri</refname> +<refpurpose>Base URI used in olink hrefs</refpurpose> +</refnamediv> +<refsynopsisdiv> <src:fragment id="olink.base.uri.frag"><xsl:param name="olink.base.uri" + select="''"/> </src:fragment> +</refsynopsisdiv> +<refsect1> +<title>Description</title> +<para>When cross reference data is collected for resolving olinks, it may be necessary to prepend a base URI to each target's href. This parameter lets you set that base URI when cross reference data is collected. This feature is needed when you want to link to a document that is processed without chunking. The output filename for such a document is not known to the XSL stylesheet; the only target information consists of fragment identifiers such as <literal moreinfo="none">#idref</literal>. To enable the resolution of olinks between documents, you should pass the name of the HTML output file as the value of this parameter. Then the hrefs recorded in the cross reference data collection look like <literal moreinfo="none">outfile.html#idref</literal>, which can be reached as links from other documents.</para> +</refsect1> +</refentry> + +<refentry id="use.local.olink.style"> +<refmeta> +<refentrytitle>use.local.olink.style</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>use.local.olink.style</refname> +<refpurpose>Process olinks using xref style of current +document</refpurpose> +</refnamediv> +<refsynopsisdiv> <src:fragment id="use.local.olink.style.frag"><xsl:param name="use.local.olink.style" + select="0"/> </src:fragment> +</refsynopsisdiv> +<refsect1> +<title>Description</title> +<para>When cross reference data is collected for use by olinks, the data for each potential target includes one field containing a completely assembled cross reference string, as if it were an xref generated in that document. Other fields record the separate title, number, and element name of each target. When an olink is formed to a target from another document, the olink resolves to that preassembled string by default. If the <parameter moreinfo="none">use.local.olink.style</parameter> parameter is set to non-zero, then instead the cross +reference string is formed again from the target title, number, and +element name, using the stylesheet processing the targeting document. +Then olinks will match the xref style in the targeting document +rather than in the target document. If both documents are processed +with the same stylesheet, then the results will be the same.</para> +</refsect1> +</refentry> + +<refentry id="current.docid"> +<refmeta> +<refentrytitle>current.docid</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>current.docid</refname> +<refpurpose>targetdoc identifier for the document being +processed</refpurpose> +</refnamediv> +<refsynopsisdiv> <src:fragment id="current.docid.frag"><xsl:param name="current.docid" + select="''"/> </src:fragment> +</refsynopsisdiv> +<refsect1> +<title>Description</title> +<para>When olinks between documents are resolved for HTML output, the stylesheet can compute the relative path between the current document and the target document. The stylesheet needs to know the <literal moreinfo="none">targetdoc</literal> identifiers for both documents, as they appear in the <parameter moreinfo="none">target.database.document</parameter> database file. This parameter passes to the stylesheet +the targetdoc identifier of the current document, since that +identifier does not appear in the document itself. </para> +<para>This parameter can also be used for print output. If an olink's <literal moreinfo="none">targetdoc</literal> id differs from the <literal moreinfo="none">current.docid</literal>, then the stylesheet can append the target document's title to the generated olink text. That identifies to the reader that the link is to a different document, not the current document. See also <parameter moreinfo="none">olink.doctitle</parameter> to enable that feature.</para> +</refsect1> +</refentry> + +<refentry id="olink.doctitle"> +<refmeta> +<refentrytitle>olink.doctitle</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>olink.doctitle</refname> +<refpurpose>show the document title for external olinks?</refpurpose> + +</refnamediv> +<refsynopsisdiv> <src:fragment id="olink.doctitle.frag"><xsl:param name="olink.doctitle" + select="0"/> </src:fragment> +</refsynopsisdiv> +<refsect1> +<title>Description</title> +<para>When olinks between documents are resolved for print output, the generated text may not make it clear that the reference is to another document. It is possible for the stylesheets to append the other document's title to external olinks. For this to happen, two parameters must be set. The <parameter moreinfo="none">olink.doctitle</parameter> parameter should be set to nonzero to enable this +feature. And you should set the <parameter moreinfo="none">current.docid</parameter> parameter to the document id for the document currently +being processed for output. If an olink's <literal moreinfo="none">targetdoc</literal> id differs from the <literal moreinfo="none">current.docid</literal>, then the stylesheet can append the target document's +title to the generated olink text. </para> +</refsect1> +</refentry> + <refentry id="link.mailto.url"> <refmeta> <refentrytitle>link.mailto.url</refentrytitle> @@ -2412,6 +2925,28 @@ </refsect1> </refentry> +<refentry id="bibliography.numbered"> +<refmeta> +<refentrytitle>bibliography.numbered</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>bibliography.numbered</refname> +<refpurpose>Should bibliography entries be numbered?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="bibliography.numbered.frag"><xsl:param name="bibliography.numbered" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If non-zero bibliography entries will be numbered</para> + +</refsect1> +</refentry> + </reference> <reference><title>Glossary</title> @@ -2653,37 +3188,99 @@ <para>The stylesheets will format the glossary in your document as if all of the entries implicilty referenced appeared there literally.</para> </refsect2> -</refsect1> -</refentry> -</reference> +<refsect2><title>Limitations</title> -<reference><title>Miscellaneous</title> -<refentry id="graphic.default.extension"> +<para>Glossary cross-references <emphasis>within the glossary</emphasis> are +not supported. For example, this <emphasis>will not</emphasis> work:</para> + +<informalexample> +<programlisting format="linespecific"><glossentry> +<glossterm>gloss-1</glossterm> +<glossdef><para>A description that references <glossterm>gloss-2</glossterm>.</para> +<glossseealso>gloss-2</glossseealso> +</glossdef> +</glossentry></programlisting> +</informalexample> + +<para>If you put glossary cross-references in your glossary that way, +you'll get the cryptic error: <computeroutput moreinfo="none">Warning: +glossary.collection specified, but there are 0 automatic +glossaries</computeroutput>.</para> + +<para>Instead, you must do two things:</para> + +<orderedlist inheritnum="ignore" continuation="restarts"> +<listitem> +<para>Markup your glossary using <sgmltag>glossseealso</sgmltag>:</para> + +<informalexample> +<programlisting format="linespecific"><glossentry> +<glossterm>gloss-1</glossterm> +<glossdef><para>A description that references <glossterm>gloss-2</glossterm>.</para> +<glossseealso>gloss-2</glossseealso> +</glossdef> +</glossentry></programlisting> +</informalexample> +</listitem> + +<listitem> +<para>Make sure there is at least one <sgmltag>glossterm</sgmltag> reference to +<glossterm>gloss-2</glossterm> <emphasis>in your document</emphasis>. The +easiest way to do that is probably within a <sgmltag>remark</sgmltag> in your +automatic glossary:</para> + +<informalexample> +<programlisting format="linespecific"><glossary role="auto"> +<remark>Make sure there's a reference to <glossterm>gloss-2</glossterm>.</remark> +<glossentry> +<glossterm>Irrelevant</glossterm> +<glossdef> +<para>If you can see this, the document was processed incorrectly. Use +the <parameter>glossary.collection</parameter> parameter.</para> +</glossdef> +</glossentry> +</glossary></programlisting> +</informalexample> +</listitem> +</orderedlist> +</refsect2> + +</refsect1> +</refentry> + +<refentry id="glossentry.show.acronym"> <refmeta> -<refentrytitle>graphic.default.extension</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>glossentry.show.acronym</refentrytitle> +<refmiscinfo role="type">list</refmiscinfo> </refmeta> <refnamediv> -<refname>graphic.default.extension</refname> -<refpurpose>Default extension for graphic filenames</refpurpose> +<refname>glossentry.show.acronym</refname> +<refpurpose>Display <sgmltag>glossentry</sgmltag> acronyms?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="graphic.default.extension.frag"><xsl:param name="graphic.default.extension"/></src:fragment> +<src:fragment id="glossentry.show.acronym.frag"><xsl:param name="glossentry.show.acronym" + select="'no'"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>If a <sgmltag>graphic</sgmltag> or <sgmltag>mediaobject</sgmltag> -includes a reference to a filename that does not include an extension, -and the <sgmltag class="attribute">format</sgmltag> attribute is -<emphasis>unspecified</emphasis>, the default extension will be used. -</para> +<para>A setting of <quote>yes</quote> means they should be displayed; +<quote>no</quote> means they shouldn't. If <quote>primary</quote> is used, +then they are shown as the primary text for the entry.</para> + +<note> +<para>This setting controls both <sgmltag>acronym</sgmltag> and +<sgmltag>abbrev</sgmltag> elements in the <sgmltag>glossentry</sgmltag>.</para> +</note> </refsect1> </refentry> +</reference> + +<reference><title>Miscellaneous</title> <refentry id="formal.procedures"> <refmeta> <refentrytitle>formal.procedures</refentrytitle> @@ -3145,1261 +3742,2789 @@ </refsect1> </refentry> -</reference> - -<reference><title>Chunking</title> -<refentry id="html.ext"> +<refentry id="use.role.as.xrefstyle"> <refmeta> -<refentrytitle>html.ext</refentrytitle> - +<refentrytitle>use.role.as.xrefstyle</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>html.ext</refname> -<refpurpose>Identifies the extension of generated HTML files</refpurpose> +<refname>use.role.as.xrefstyle</refname> +<refpurpose>Use <sgmltag class="attribute">role</sgmltag> attribute for +<sgmltag class="attribute">xrefstyle</sgmltag> on <sgmltag>xref</sgmltag>?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="html.ext.frag"><xsl:param name="html.ext" - select="'.html'"/></src:fragment> +<src:fragment id="use.role.as.xrefstyle.frag"><xsl:param name="use.role.as.xrefstyle" + select="1"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>The extension identified by <parameter moreinfo="none">html.ext</parameter> will -be used as the filename extension for chunks created by this stylesheet. -</para> +<para>If non-zero, the <sgmltag class="attribute">role</sgmltag> attribute on +<sgmltag>xref</sgmltag> will be used to select the cross reference style. +The <ulink url="http://www.oasis-open.org/docbook/">DocBook +Technical Committee</ulink> recently added an +<sgmltag class="attribute">xrefstyle</sgmltag> attribute for this purpose. +If the <sgmltag class="attribute">xrefstyle</sgmltag> attribute +is present, <sgmltag class="attribute">role</sgmltag> will be ignored, regardless +of this setting.</para> + +<para>Until an official DocBook release that includes the new +attribute, this flag allows <sgmltag class="attribute">role</sgmltag> +to serve that purpose.</para> + +</refsect1> + +<refsect1><title>Example</title> +<para>The following small stylesheet shows how to configure the stylesheets to make +use of the cross reference style:</para> + +<programlisting format="linespecific"><?xml version="1.0"?> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + version="1.0"> + +<xsl:import href="../xsl/html/docbook.xsl"/> + +<xsl:output method="html"/> + +<xsl:param name="local.l10n.xml" select="document('')"/> +<l:i18n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0"> + <l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="en"> + <l:context name="xref"> + <l:template name="chapter" style="title" text="Chapter %n, %t"/> + <l:template name="chapter" text="Chapter %n"/> + </l:context> + </l:l10n> +</l:i18n> + +</xsl:stylesheet></programlisting> + +<para>With this stylesheet, the cross references in the following document:</para> + +<programlisting format="linespecific"><?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" + "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"> +<book id="book"><title>Book</title> + +<preface> +<title>Preface</title> + +<para>Normal: <xref linkend="ch1"/>.</para> +<para>Title: <xref xrefstyle="title" linkend="ch1"/>.</para> + +</preface> + +<chapter id="ch1"> +<title>First Chapter</title> + +<para>Irrelevant.</para> + +</chapter> +</book></programlisting> + +<para>will appear as:</para> + +<informalexample> +<para>Normal: Chapter 1.</para> +<para>Title: Chapter 1, <emphasis>First Chapter</emphasis>.</para> +</informalexample> </refsect1> + </refentry> -<refentry id="html.extra.head.links"> +<refentry id="menuchoice.separator"> <refmeta> -<refentrytitle>html.extra.head.links</refentrytitle> -<refmiscinfo role="type">boolean</refmiscinfo> +<refentrytitle>menuchoice.separator</refentrytitle> +<refmiscinfo role="type"/> </refmeta> <refnamediv> -<refname>html.extra.head.links</refname> -<refpurpose>Toggle extra HTML head link information</refpurpose> +<refname>menuchoice.separator</refname> +<refpurpose/> </refnamediv> <refsynopsisdiv> -<src:fragment id="html.extra.head.links.frag"><xsl:param name="html.extra.head.links" - select="1"/></src:fragment> +<src:fragment id="menuchoice.separator.frag"><xsl:param name="menuchoice.separator" + select="'+'"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>If non-zero, extra <sgmltag>link</sgmltag> elements will be -generated in the <sgmltag>head</sgmltag> of chunked HTML files. These -extra links point to chapters, appendixes, sections, etc. as supported -by the <quote>Site Navigation Bar</quote> in Mozilla 1.0 (as of CR1, at least). +<para>Separator used to connect items of a <sgmltag>menuchoice</sgmltag> other +than <sgmltag>guimenuitem</sgmltag> and <sgmltag>guisubmenu</sgmltag>. The latter +elements are linked with <parameter moreinfo="none">menuchoice.menu.separator</parameter>. </para> </refsect1> </refentry> -<refentry id="root.filename"> +<refentry id="menuchoice.menu.separator"> <refmeta> -<refentrytitle>root.filename</refentrytitle> - +<refentrytitle>menuchoice.menu.separator</refentrytitle> +<refmiscinfo role="type"/> </refmeta> <refnamediv> -<refname>root.filename</refname> -<refpurpose>Identifies the name of the root HTML file when chunking</refpurpose> +<refname>menuchoice.menu.separator</refname> +<refpurpose/> </refnamediv> <refsynopsisdiv> -<src:fragment id="root.filename.frag"><xsl:param name="root.filename" - select="'index'"/></src:fragment> +<src:fragment id="menuchoice.menu.separator.frag"><xsl:param name="menuchoice.menu.separator" + select="'->'"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>The <parameter moreinfo="none">root.filename</parameter> is the base filename for -the chunk created for the root of each document processed. +<para>Separator used to connect items of a <sgmltag>menuchoice</sgmltag> with +<sgmltag>guimenuitem</sgmltag> or <sgmltag>guisubmenu</sgmltag>. Other elements +are linked with <parameter moreinfo="none">menuchoice.separator</parameter>. </para> </refsect1> </refentry> -<refentry id="base.dir"> +<refentry id="default.float.class"> <refmeta> -<refentrytitle>base.dir</refentrytitle> - +<refentrytitle>default.float.class</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>base.dir</refname> -<refpurpose>The base directory of chunks</refpurpose> +<refname>default.float.class</refname> +<refpurpose>Specifies the default float class</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="base.dir.frag"><xsl:param name="base.dir" - select="''"/></src:fragment> +<src:fragment id="default.float.class.frag"><xsl:param name="default.float.class" + select="'before'"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>If specified, the <literal moreinfo="none">base.dir</literal> identifies -the output directory for chunks. (If not specified, the output directory -is system dependent.)</para> +<para>FIXME:</para> </refsect1> </refentry> -<refentry id="generate.manifest"> - <refmeta> - <refentrytitle>generate.manifest</refentrytitle> - <refmiscinfo role="type">boolean</refmiscinfo> - </refmeta> - <refnamediv> - <refname>generate.manifest</refname> - <refpurpose>Generate a 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>If non-zero, a list of HTML files generated by the - stylesheet transformation is written to the file named by - the <parameter moreinfo="none">manifest</parameter> parameter.</para> - - </refsect1> -</refentry> - -<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>The name of the file to which a manifest is written (if the - value of the <parameter moreinfo="none">generate.manifest</parameter> parameter - is non-zero).</para> - - </refsect1> -</refentry> - -<refentry id="chunk.toc"> +<refentry id="footnote.number.format"> <refmeta> -<refentrytitle>chunk.toc</refentrytitle> +<refentrytitle>footnote.number.format</refentrytitle> <refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>chunk.toc</refname> -<refpurpose>An explicit TOC to be used for chunking</refpurpose> +<refname>footnote.number.format</refname> +<refpurpose>Identifies the format used for footnote numbers</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="chunk.toc.frag"><xsl:param name="chunk.toc" - select="''"/></src:fragment> +<src:fragment id="footnote.number.format.frag"><xsl:param name="footnote.number.format" + select="'1'"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>The <parameter moreinfo="none">chunk.toc</parameter> identifies an explicit TOC that -will be used for chunking. This parameter is only used by the -<filename moreinfo="none">chunktoc.xsl</filename> stylesheet (and customization layers built -from it).</para> +<para>The <parameter moreinfo="none">footnote.number.format</parameter> specifies the format +to use for footnote numeration (1, i, I, a, or A).</para> </refsect1> </refentry> -<refentry id="chunk.section.depth"> +<refentry id="table.footnote.number.format"> <refmeta> -<refentrytitle>chunk.section.depth</refentrytitle> -<refmiscinfo role="type">integer</refmiscinfo> +<refentrytitle>table.footnote.number.format</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>chunk.section.depth</refname> -<refpurpose>Depth to which sections should be chunked</refpurpose> +<refname>table.footnote.number.format</refname> +<refpurpose>Identifies the format used for footnote numbers in tables</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="chunk.section.depth.frag"><xsl:param name="chunk.section.depth" - select="1"/></src:fragment> +<src:fragment id="table.footnote.number.format.frag"><xsl:param name="table.footnote.number.format" + select="'a'"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>This parameter sets the depth of section chunking.</para> +<para>The <parameter moreinfo="none">table.footnote.number.format</parameter> specifies the format +to use for footnote numeration (1, i, I, a, or A) in tables.</para> </refsect1> </refentry> -<refentry id="chunk.first.sections"> +<refentry id="footnote.number.symbols"> <refmeta> -<refentrytitle>chunk.first.sections</refentrytitle> - +<refentrytitle>footnote.number.symbols</refentrytitle> +<refmiscinfo role="type"/> </refmeta> <refnamediv> -<refname>chunk.first.sections</refname> -<refpurpose>Chunk the first top-level section?</refpurpose> +<refname>footnote.number.symbols</refname> +<refpurpose/> </refnamediv> <refsynopsisdiv> -<src:fragment id="chunk.first.sections.frag"><xsl:param name="chunk.first.sections" - select="0"/></src:fragment> +<src:fragment id="footnote.number.symbols.frag"><xsl:param name="footnote.number.symbols" + select="''"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>If non-zero, a chunk will be created for the first top-level -<sgmltag>sect1</sgmltag> or <sgmltag>section</sgmltag> elements in -each component. Otherwise, that section will be part of the chunk for -its parent. -</para> +<para>If <parameter moreinfo="none">footnote.number.symbols</parameter> is not the empty string, +footnotes will use the characters it contains as footnote symbols. For example, +<quote>*&#x2020;&#x2021;&#x25CA;&#x2720;</quote> will identify +footnotes with <quote>*</quote>, <quote>â </quote>, <quote>â¡</quote>, +<quote>â</quote>, and <quote>â </quote>. If there are more footnotes +than symbols, the stylesheets will fall back to numbered footnotes using +<parameter moreinfo="none">footnote.number.format</parameter>.</para> + +<para>The use of symbols for footnotes depends on the ability of your +processor (or browser) to render the symbols you select. Not all systems are +capable of displaying the full range of Unicode characters. If the quoted characters +in the preceding paragraph are not displayed properly, that's a good indicator +that you may have trouble using those symbols for footnotes.</para> </refsect1> </refentry> -<refentry id="chunk.quietly"> +<refentry id="table.footnote.number.symbols"> <refmeta> -<refentrytitle>chunk.quietly</refentrytitle> - +<refentrytitle>table.footnote.number.symbols</refentrytitle> +<refmiscinfo role="type"/> </refmeta> <refnamediv> -<refname>chunk.quietly</refname> -<refpurpose>Omit the chunked filename messages.</refpurpose> +<refname>table.footnote.number.symbols</refname> +<refpurpose/> </refnamediv> <refsynopsisdiv> -<src:fragment id="chunk.quietly.frag"><xsl:param name="chunk.quietly" - select="0"/></src:fragment> +<src:fragment id="table.footnote.number.symbols.frag"><xsl:param name="table.footnote.number.symbols" + select="''"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>If zero (the default), the XSL processor emits a message naming -each separate chunk filename as it is being output. -If nonzero, then the messages are suppressed. -</para> +<para>If <parameter moreinfo="none">table.footnote.number.symbols</parameter> is not the empty string, +table footnotes will use the characters it contains as footnote symbols. For example, +<quote>*&#x2020;&#x2021;&#x25CA;&#x2720;</quote> will identify +footnotes with <quote>*</quote>, <quote>â </quote>, <quote>â¡</quote>, +<quote>â</quote>, and <quote>â </quote>. If there are more footnotes +than symbols, the stylesheets will fall back to numbered footnotes using +<parameter moreinfo="none">table.footnote.number.format</parameter>.</para> + +<para>The use of symbols for footnotes depends on the ability of your +processor (or browser) to render the symbols you select. Not all systems are +capable of displaying the full range of Unicode characters. If the quoted characters +in the preceding paragraph are not displayed properly, that's a good indicator +that you may have trouble using those symbols for footnotes.</para> </refsect1> </refentry> -<refentry id="saxon.character.representation"> +<refentry id="xref.with.number.and.title"> <refmeta> -<refentrytitle>saxon.character.representation</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>xref.with.number.and.title</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>saxon.character.representation</refname> -<refpurpose>Saxon character representation used in generated HTML pages</refpurpose> +<refname>xref.with.number.and.title</refname> +<refpurpose>Use number and title in cross references</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="saxon.character.representation.frag"><xsl:param name="saxon.character.representation" - select="'entity;decimal'"/></src:fragment> +<src:fragment id="xref.with.number.and.title.frag"><xsl:param name="xref.with.number.and.title" + select="1"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>This character representation is used in files generated by chunking stylesheet. If -you want to suppress entity references for characters with direct representation -in default.encoding, set this parameter to value <literal moreinfo="none">native</literal>. -</para> +<para>FIXME:</para> </refsect1> </refentry> -<refentry id="default.encoding"> +</reference> + +<reference><title>Graphics</title> +<refentry id="graphic.default.extension"> <refmeta> -<refentrytitle>default.encoding</refentrytitle> +<refentrytitle>graphic.default.extension</refentrytitle> <refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>default.encoding</refname> -<refpurpose>Encoding used in generated HTML pages</refpurpose> +<refname>graphic.default.extension</refname> +<refpurpose>Default extension for graphic filenames</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="default.encoding.frag"><xsl:param name="default.encoding" - select="'ISO-8859-1'"/></src:fragment> +<src:fragment id="graphic.default.extension.frag"><xsl:param name="graphic.default.extension"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>This encoding is used in files generated by chunking stylesheet. Currently -only Saxon is able to change output encoding. +<para>If a <sgmltag>graphic</sgmltag> or <sgmltag>mediaobject</sgmltag> +includes a reference to a filename that does not include an extension, +and the <sgmltag class="attribute">format</sgmltag> attribute is +<emphasis>unspecified</emphasis>, the default extension will be used. </para> </refsect1> </refentry> -<refentry id="output.method"> +<refentry id="default.image.width"> <refmeta> -<refentrytitle>output.method</refentrytitle> -<refmiscinfo role="type">list</refmiscinfo> -<refmiscinfo role="value">html</refmiscinfo> -<refmiscinfo role="value">xml</refmiscinfo> +<refentrytitle>default.image.width</refentrytitle> +<refmiscinfo role="type">length</refmiscinfo> </refmeta> <refnamediv> -<refname>output.method</refname> -<refpurpose/> +<refname>default.image.width</refname> +<refpurpose>The default width of images</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="output.method.frag"><xsl:param name="output.method" - select="'html'"/></src:fragment> +<src:fragment id="default.image.width.frag"><xsl:param name="default.image.width" + select="''"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Selects the output method for chunked documents.</para> +<para>If specified, this value will be used for the +<sgmltag class="attribute">width</sgmltag> attribute on +images that do not specify any +<ulink url="http://docbook.org/tdg/en/html/imagedata.html#viewport.area">viewport +dimensions</ulink>.</para> </refsect1> </refentry> -<refentry id="chunk.datafile"> +<refentry id="nominal.image.width"> <refmeta> -<refentrytitle>chunk.datafile</refentrytitle> - +<refentrytitle>nominal.image.width</refentrytitle> +<refmiscinfo role="type">length</refmiscinfo> </refmeta> <refnamediv> -<refname>chunk.datafile</refname> -<refpurpose>Name of the temporary file used to hold chunking data</refpurpose> +<refname>nominal.image.width</refname> +<refpurpose>The nominal image width</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="chunk.datafile.frag"><xsl:param name="chunk.datafile" - select="'.chunks'"/></src:fragment> +<src:fragment id="nominal.image.width.frag"><xsl:param name="nominal.image.width" + select="6 * $pixels.per.inch"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Chunking is now a two-step process. The -<parameter moreinfo="none">chunk.datafile</parameter> is the name of the file used to -hold the chunking data. -</para> +<para>Graphic widths expressed as a percentage are problematic. In the +following discussion, we speak of width and contentwidth, but +the same issues apply to depth and contentdepth.</para> + +<para>A width of 50% means "half of the available space for the image." +That's fine. But note that in HTML, this is a dynamic property and +the image size will vary if the browser window is resized.</para> + +<para>A contentwidth of 50% means "half of the actual image width". +But what does that mean if the stylesheets cannot assess the image's +actual size? Treating this as a width of 50% is one possibility, but +it produces behavior (dynamic scaling) that seems entirely out of +character with the meaning.</para> + +<para>Instead, the stylesheets define a +<parameter moreinfo="none">nominal.image.width</parameter> and convert percentages to +actual values based on that nominal size.</para> </refsect1> </refentry> -<refentry id="navig.graphics"> +<refentry id="nominal.image.depth"> <refmeta> -<refentrytitle>navig.graphics</refentrytitle> -<refmiscinfo role="type">boolean</refmiscinfo> +<refentrytitle>nominal.image.depth</refentrytitle> +<refmiscinfo role="type">length</refmiscinfo> </refmeta> <refnamediv> -<refname>navig.graphics</refname> -<refpurpose>Use graphics in navigational headers and footers?</refpurpose> +<refname>nominal.image.depth</refname> +<refpurpose>Nominal image depth</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="navig.graphics.frag"><xsl:param name="navig.graphics" - select="0"/></src:fragment> +<src:fragment id="nominal.image.depth.frag"><xsl:param name="nominal.image.depth" + select="4 * $pixels.per.inch"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>If true (non-zero), the navigational headers and footers in chunked -HTML are presented in an alternate style that uses -graphical icons for Next, Previous, Up, and Home. -Default graphics are provided in the distribution. -</para> +<para>See <parameter moreinfo="none">nominal.image.width</parameter>.</para> </refsect1> </refentry> -<refentry id="navig.graphics.extension"> +<refentry id="use.embed.for.svg"> <refmeta> -<refentrytitle>navig.graphics.extension</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>use.embed.for.svg</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>navig.graphics.extension</refname> -<refpurpose>Extension for navigational graphics</refpurpose> +<refname>use.embed.for.svg</refname> +<refpurpose>Use HTML <sgmltag>embed</sgmltag> for SVG?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="navig.graphics.extension.frag"><xsl:param name="navig.graphics.extension" - select="'.gif'"/></src:fragment> +<src:fragment id="use.embed.for.svg.frag"><xsl:param name="use.embed.for.svg" + select="0"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Sets the filename extension to use on navigational graphics used -in the headers and footers of chunked HTML.</para> +<para>If non-zero, an <sgmltag>embed</sgmltag> element will be created for +SVG figures. An <sgmltag>object</sgmltag> is <emphasis>always</emphasis> created, +this parameter merely controls whether or not an additional <sgmltag>embed</sgmltag> +is generated inside the <sgmltag>object</sgmltag>.</para> + +<para>On the plus side, this may be more portable among browsers and plug-ins. +On the minus side, it isn't valid HTML.</para> </refsect1> </refentry> -<refentry id="navig.graphics.path"> +<refentry id="make.graphic.viewport"> <refmeta> -<refentrytitle>navig.graphics.path</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>make.graphic.viewport</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>navig.graphics.path</refname> -<refpurpose>Path to navigational graphics</refpurpose> +<refname>make.graphic.viewport</refname> +<refpurpose>Use tables in HTML to make viewports for graphics</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="navig.graphics.path.frag"><xsl:param name="navig.graphics.path">images/</xsl:param></src:fragment> +<src:fragment id="make.graphic.viewport.frag"><xsl:param name="make.graphic.viewport" + select="1"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Sets the path, probably relative to the directory where the HTML -files are created, to the navigational graphics used in the -headers and footers of chunked HTML. +<para>The HTML <sgmltag>img</sgmltag> element only supports the notion +of content-area scaling; it doesn't support the distinction between a +content-area and a viewport-area, so we have to make some compromises.</para> + +<para>If <parameter moreinfo="none">make.graphic.viewport</parameter> is non-zero, a table +will be used to frame the image. This creates an effective viewport-area. </para> +<para>Tables and alignment don't work together, so this parameter is ignored +if alignment is specified on an image.</para> </refsect1> </refentry> -<refentry id="navig.showtitles"> +<refentry id="preferred.mediaobject.role"> <refmeta> -<refentrytitle>navig.showtitles</refentrytitle> -<refmiscinfo role="type">boolean</refmiscinfo> +<refentrytitle>preferred.mediaobject.role</refentrytitle> </refmeta> <refnamediv> -<refname>navig.showtitles</refname> -<refpurpose>Display titles in HTML headers and footers?</refpurpose> +<refname>preferred.mediaobject.role</refname> +<refpurpose>Select which mediaobject to use based on +this value of an object's <sgmltag class="attribute">role</sgmltag> attribute. +</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="navig.showtitles.frag"><xsl:param name="navig.showtitles">1</xsl:param></src:fragment> +<src:fragment id="preferred.mediaobject.role.frag"><xsl:param name="preferred.mediaobject.role"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>If true (non-zero), -the headers and footers of chunked HTML -display the titles of the next and previous chunks, -along with the words 'Next' and 'Previous' (or the -equivalent graphical icons if navig.graphics is true). -If false (zero), then only the words 'Next' and 'Previous' -(or the icons) are displayed. +<para>A mediaobject may contain several objects such as imageobjects. +If the parameter <parameter moreinfo="none">use.role.for.mediaobject</parameter> +is non-zero, then the <sgmltag class="attribute">role</sgmltag> attribute on +<sgmltag>imageobject</sgmltag>s and other objects within a <sgmltag>mediaobject</sgmltag> container will be used to select which object will be +used. If one of the objects has a role value that matches the +preferred.mediaobject.role parameter, then it has first +priority for selection. If more than one has such a +role value, the first one is used. </para> - +<para> +See the <parameter moreinfo="none">use.role.for.mediaobject</parameter> parameter +for the sequence of selection.</para> </refsect1> </refentry> -</reference> - -<reference><title>Profiling</title> -<partintro> -<para>Following parameters can be used for attribute value based -profiling of your document. For more info about profiling look at -<ulink url="http://docbook.sourceforge.net/projects/xsl/doc/tools/profiling.html">http://docbook.sourceforge.net/projects/xsl/doc/tools/profiling.html</ulink>.</para> -</partintro> -<refentry id="profile.arch"> +<refentry id="use.role.for.mediaobject"> <refmeta> -<refentrytitle>profile.arch</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>use.role.for.mediaobject</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.arch</refname> -<refpurpose>Target profile for <sgmltag class="attribute">arch</sgmltag> -attribute</refpurpose> +<refname>use.role.for.mediaobject</refname> +<refpurpose>Use <sgmltag class="attribute">role</sgmltag> attribute +value for selecting which of several objects within a mediaobject to use. +</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="profile.arch.frag"><xsl:param name="profile.arch" - select="''"/></src:fragment> +<src:fragment id="use.role.for.mediaobject.frag"><xsl:param name="use.role.for.mediaobject" + select="1"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Value of this parameter specifies profiles which should be -included in the output. You can specify multiple profiles by -separating them by semicolon. You can change separator character by -<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> -parameter.</para> - -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> - +<para>If non-zero, the <sgmltag class="attribute">role</sgmltag> attribute on +<sgmltag>imageobject</sgmltag>s or other objects within a <sgmltag>mediaobject</sgmltag> container will be used to select which object will be +used. +</para> +<para> +The order of selection when then parameter is non-zero is: +</para> +<orderedlist inheritnum="ignore" continuation="restarts"> +<listitem> + <para>If the stylesheet parameter <parameter moreinfo="none">preferred.mediaojbect.role</parameter> has a value, then the object whose role equals that value is selected.</para> +</listitem> +<listitem> +<para>Else if an object's role attribute has a value of +<literal moreinfo="none">html</literal> for HTML processing or +<literal moreinfo="none">fo</literal> for FO output, then the first +of such objects is selected. +</para> +</listitem> +<listitem> +<para>Else the first suitable object is selected.</para> +</listitem> +</orderedlist> +<para> +If the value of +<parameter moreinfo="none">use.role.for.mediaobject</parameter> +is zero, then role attributes are not considered +and the first suitable object +with or without a role value is used. +</para> </refsect1> </refentry> -<refentry id="profile.condition"> +<refentry id="ignore.image.scaling"> <refmeta> -<refentrytitle>profile.condition</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>ignore.image.scaling</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.condition</refname> -<refpurpose>Target profile for <sgmltag class="attribute">condition</sgmltag> -attribute</refpurpose> +<refname>ignore.image.scaling</refname> +<refpurpose>Tell the stylesheets to ignore the author's image scaling attributes</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="profile.condition.frag"><xsl:param name="profile.condition" - select="''"/></src:fragment> +<src:fragment id="ignore.image.scaling.frag"><xsl:param name="ignore.image.scaling" + select="0"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Value of this parameter specifies profiles which should be -included in the output. You can specify multiple profiles by -separating them by semicolon. You can change separator character by -<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> -parameter.</para> - -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> +<para>If non-zero, the scaling attributes on graphics and media objects are +ignored.</para> </refsect1> </refentry> -<refentry id="profile.conformance"> +</reference> + +<reference><title>Chunking</title> +<refentry id="chunker.output.cdata-section-elements"> <refmeta> -<refentrytitle>profile.conformance</refentrytitle> +<refentrytitle>chunker.output.cdata-section-elements</refentrytitle> <refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.conformance</refname> -<refpurpose>Target profile for <sgmltag class="attribute">conformance</sgmltag> -attribute</refpurpose> +<refname>chunker.output.cdata-section-elements</refname> +<refpurpose>List of elements to escape with CDATA sections</refpurpose> </refnamediv> -<refsynopsisdiv> -<src:fragment id="profile.conformance.frag"><xsl:param name="profile.conformance" - select="''"/></src:fragment> +<refsynopsisdiv><xsl:param name="chunker.output.cdata-section-elements" select="''"/> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Value of this parameter specifies profiles which should be -included in the output. You can specify multiple profiles by -separating them by semicolon. You can change separator character by -<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> -parameter.</para> +<para>This parameter specifies the list of elements that should be escaped +as CDATA sections by the chunking stylesheet. Not all processors support +specification of this parameter. +</para> -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> +<note> +<para>This parameter is documented here, but the declaration is actually +in the <filename moreinfo="none">chunker.xsl</filename> stylesheet module.</para> +</note> </refsect1> </refentry> -<refentry id="profile.lang"> +<refentry id="chunker.output.doctype-public"> <refmeta> -<refentrytitle>profile.lang</refentrytitle> +<refentrytitle>chunker.output.doctype-public</refentrytitle> <refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.lang</refname> -<refpurpose>Target profile for <sgmltag class="attribute">lang</sgmltag> -attribute</refpurpose> +<refname>chunker.output.doctype-public</refname> +<refpurpose>Public identifer to use in the document type of generated pages</refpurpose> </refnamediv> -<refsynopsisdiv> -<src:fragment id="profile.lang.frag"><xsl:param name="profile.lang" - select="''"/></src:fragment> +<refsynopsisdiv><xsl:param name="chunker.output.doctype-public" select="''"/> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Value of this parameter specifies profiles which should be -included in the output. You can specify multiple profiles by -separating them by semicolon. You can change separator character by -<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> -parameter.</para> +<para>This parameter specifies the public identifier that should be used by +the chunking stylesheet in the document type declaration of chunked pages. +Not all processors support specification of +this parameter. +</para> -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> +<note> +<para>This parameter is documented here, but the declaration is actually +in the <filename moreinfo="none">chunker.xsl</filename> stylesheet module.</para> +</note> </refsect1> </refentry> -<refentry id="profile.os"> +<refentry id="chunker.output.doctype-system"> <refmeta> -<refentrytitle>profile.os</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>chunker.output.doctype-system</refentrytitle> +<refmiscinfo role="type">uri</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.os</refname> -<refpurpose>Target profile for <sgmltag class="attribute">os</sgmltag> -attribute</refpurpose> +<refname>chunker.output.doctype-system</refname> +<refpurpose>System identifier to use for the document type in generated pages</refpurpose> </refnamediv> -<refsynopsisdiv> -<src:fragment id="profile.os.frag"><xsl:param name="profile.os" - select="''"/></src:fragment> +<refsynopsisdiv><xsl:param name="chunker.output.doctype-system" select="''"/> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Value of this parameter specifies profiles which should be -included in the output. You can specify multiple profiles by -separating them by semicolon. You can change separator character by -<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> -parameter.</para> +<para>This parameter specifies the system identifier that should be used by +the chunking stylesheet in the document type declaration of chunked pages. +Not all processors support specification of +this parameter. +</para> -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> +<note> +<para>This parameter is documented here, but the declaration is actually +in the <filename moreinfo="none">chunker.xsl</filename> stylesheet module.</para> +</note> </refsect1> </refentry> -<refentry id="profile.revision"> +<refentry id="chunker.output.encoding"> <refmeta> -<refentrytitle>profile.revision</refentrytitle> +<refentrytitle>chunker.output.encoding</refentrytitle> <refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.revision</refname> -<refpurpose>Target profile for <sgmltag class="attribute">revision</sgmltag> -attribute</refpurpose> +<refname>chunker.output.encoding</refname> +<refpurpose>Encoding used in generated pages</refpurpose> </refnamediv> -<refsynopsisdiv> -<src:fragment id="profile.revision.frag"><xsl:param name="profile.revision" - select="''"/></src:fragment> +<refsynopsisdiv><xsl:param name="chunker.output.encoding" select="'ISO-8859-1'"/> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Value of this parameter specifies profiles which should be -included in the output. You can specify multiple profiles by -separating them by semicolon. You can change separator character by -<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> -parameter.</para> +<para>This parameter specifies the encoding to be used in files +generated by the chunking stylesheet. Not all processors support +specification of this parameter. +</para> -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> +<para>This parameter used to be named <literal moreinfo="none">default.encoding</literal>.</para> + +<note> +<para>This parameter is documented here, but the declaration is actually +in the <filename moreinfo="none">chunker.xsl</filename> stylesheet module.</para> +</note> </refsect1> </refentry> -<refentry id="profile.revisionflag"> +<refentry id="chunker.output.indent"> <refmeta> -<refentrytitle>profile.revisionflag</refentrytitle> +<refentrytitle>chunker.output.indent</refentrytitle> <refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.revisionflag</refname> -<refpurpose>Target profile for <sgmltag class="attribute">revisionflag</sgmltag> -attribute</refpurpose> +<refname>chunker.output.indent</refname> +<refpurpose>Specification of indentation on generated pages</refpurpose> </refnamediv> -<refsynopsisdiv> -<src:fragment id="profile.revisionflag.frag"><xsl:param name="profile.revisionflag" - select="''"/></src:fragment> +<refsynopsisdiv><xsl:param name="chunker.output.indent" select="'no'"/> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Value of this parameter specifies profiles which should be -included in the output. You can specify multiple profiles by -separating them by semicolon. You can change separator character by -<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> -parameter.</para> +<para>This parameter specifies the value of the indent +specification for generated pages. Not all processors support +specification of this parameter. +</para> -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> +<note> +<para>This parameter is documented here, but the declaration is actually +in the <filename moreinfo="none">chunker.xsl</filename> stylesheet module.</para> +</note> </refsect1> </refentry> -<refentry id="profile.role"> +<refentry id="chunker.output.media-type"> <refmeta> -<refentrytitle>profile.role</refentrytitle> +<refentrytitle>chunker.output.media-type</refentrytitle> <refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.role</refname> -<refpurpose>Target profile for <sgmltag class="attribute">role</sgmltag> -attribute</refpurpose> +<refname>chunker.output.media-type</refname> +<refpurpose>Media type to use in generated pages</refpurpose> </refnamediv> -<refsynopsisdiv> -<src:fragment id="profile.role.frag"><xsl:param name="profile.role" - select="''"/></src:fragment> +<refsynopsisdiv><xsl:param name="chunker.output.media-type" select="''"/> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Value of this parameter specifies profiles which should be -included in the output. You can specify multiple profiles by -separating them by semicolon. You can change separator character by -<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> -parameter.</para> +<para>This parameter specifies the media type that should be used by +the chunking stylesheet. Not all processors support specification of +this parameter. +</para> -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> +<note> +<para>This parameter is documented here, but the declaration is actually +in the <filename moreinfo="none">chunker.xsl</filename> stylesheet module.</para> +</note> </refsect1> </refentry> -<refentry id="profile.security"> +<refentry id="chunker.output.method"> <refmeta> -<refentrytitle>profile.security</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>chunker.output.method</refentrytitle> +<refmiscinfo role="type">list</refmiscinfo> +<refmiscinfo role="value">html</refmiscinfo> +<refmiscinfo role="value">xml</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.security</refname> -<refpurpose>Target profile for <sgmltag class="attribute">security</sgmltag> -attribute</refpurpose> +<refname>chunker.output.method</refname> +<refpurpose>Method used in generated pages</refpurpose> </refnamediv> -<refsynopsisdiv> -<src:fragment id="profile.security.frag"><xsl:param name="profile.security" - select="''"/></src:fragment> +<refsynopsisdiv><xsl:param name="chunker.output.method" select="'html'"/> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Value of this parameter specifies profiles which should be -included in the output. You can specify multiple profiles by -separating them by semicolon. You can change separator character by -<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> -parameter.</para> +<para>This parameter specifies the output method to be used in files +generated by the chunking stylesheet. +</para> -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> +<para>This parameter used to be named <literal moreinfo="none">output.method</literal>.</para> + +<note> +<para>This parameter is documented here, but the declaration is actually +in the <filename moreinfo="none">chunker.xsl</filename> stylesheet module.</para> +</note> </refsect1> </refentry> -<refentry id="profile.userlevel"> +<refentry id="chunker.output.omit-xml-declaration"> <refmeta> -<refentrytitle>profile.userlevel</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>chunker.output.omit-xml-declaration</refentrytitle> +<refmiscinfo role="type"/> </refmeta> <refnamediv> -<refname>profile.userlevel</refname> +<refname>chunker.output.omit-xml-declaration</refname> +<refpurpose>Omit-xml-declaration for generated pages</refpurpose> +</refnamediv> + +<refsynopsisdiv><xsl:param name="chunker.output.omit-xml-declaration" select="'no'"/> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>This parameter specifies the value of the omit-xml-declaration +specification for generated pages. Not all processors support +specification of this parameter. +</para> + +<note> +<para>This parameter is documented here, but the declaration is actually +in the <filename moreinfo="none">chunker.xsl</filename> stylesheet module.</para> +</note> + +</refsect1> +</refentry> + +<refentry id="chunker.output.standalone"> +<refmeta> +<refentrytitle>chunker.output.standalone</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>chunker.output.standalone</refname> +<refpurpose>Standalone declaration for generated pages</refpurpose> +</refnamediv> + +<refsynopsisdiv><xsl:param name="chunker.output.standalone" select="'no'"/> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>This parameter specifies the value of the standalone +specification for generated pages. Not all processors support +specification of this parameter. +</para> + +<note> +<para>This parameter is documented here, but the declaration is actually +in the <filename moreinfo="none">chunker.xsl</filename> stylesheet module.</para> +</note> + +</refsect1> +</refentry> + +<refentry id="saxon.character.representation"> +<refmeta> +<refentrytitle>saxon.character.representation</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>saxon.character.representation</refname> +<refpurpose>Saxon character representation used in generated HTML pages</refpurpose> +</refnamediv> + +<refsynopsisdiv><xsl:param name="saxon.character.representation" select="'entity;decimal'"/> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>This character representation is used in files generated by chunking stylesheet. If +you want to suppress entity references for characters with direct representation +in default.encoding, set this parameter to value <literal moreinfo="none">native</literal>. +</para> + +<note> +<para>This parameter is documented here, but the declaration is actually +in the <filename moreinfo="none">chunker.xsl</filename> stylesheet module.</para> +</note> + +</refsect1> +</refentry> + +<refentry id="html.ext"> +<refmeta> +<refentrytitle>html.ext</refentrytitle> + +</refmeta> +<refnamediv> +<refname>html.ext</refname> +<refpurpose>Identifies the extension of generated HTML files</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="html.ext.frag"><xsl:param name="html.ext" + select="'.html'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>The extension identified by <parameter moreinfo="none">html.ext</parameter> will +be used as the filename extension for chunks created by this stylesheet. +</para> + +</refsect1> +</refentry> + +<refentry id="html.extra.head.links"> +<refmeta> +<refentrytitle>html.extra.head.links</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>html.extra.head.links</refname> +<refpurpose>Toggle extra HTML head link information</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="html.extra.head.links.frag"><xsl:param name="html.extra.head.links" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If non-zero, extra <sgmltag>link</sgmltag> elements will be +generated in the <sgmltag>head</sgmltag> of chunked HTML files. These +extra links point to chapters, appendixes, sections, etc. as supported +by the <quote>Site Navigation Bar</quote> in Mozilla 1.0 (as of CR1, at least). +</para> + +</refsect1> +</refentry> + +<refentry id="root.filename"> +<refmeta> +<refentrytitle>root.filename</refentrytitle> + +</refmeta> +<refnamediv> +<refname>root.filename</refname> +<refpurpose>Identifies the name of the root HTML file when chunking</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="root.filename.frag"><xsl:param name="root.filename" + select="'index'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>The <parameter moreinfo="none">root.filename</parameter> is the base filename for +the chunk created for the root of each document processed. +</para> + +</refsect1> +</refentry> + +<refentry id="base.dir"> +<refmeta> +<refentrytitle>base.dir</refentrytitle> + +</refmeta> +<refnamediv> +<refname>base.dir</refname> +<refpurpose>The base directory of chunks</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="base.dir.frag"><xsl:param name="base.dir" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If specified, the <literal moreinfo="none">base.dir</literal> identifies +the output directory for chunks. (If not specified, the output directory +is system dependent.)</para> + +</refsect1> +</refentry> + +<refentry id="generate.manifest"> + <refmeta> + <refentrytitle>generate.manifest</refentrytitle> + <refmiscinfo role="type">boolean</refmiscinfo> + </refmeta> + <refnamediv> + <refname>generate.manifest</refname> + <refpurpose>Generate a 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>If non-zero, a list of HTML files generated by the + stylesheet transformation is written to the file named by + the <parameter moreinfo="none">manifest</parameter> parameter.</para> + + </refsect1> +</refentry> + +<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>The name of the file to which a manifest is written (if the + value of the <parameter moreinfo="none">generate.manifest</parameter> parameter + is non-zero).</para> + + </refsect1> +</refentry> + +<refentry id="chunk.toc"> +<refmeta> +<refentrytitle>chunk.toc</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>chunk.toc</refname> +<refpurpose>An explicit TOC to be used for chunking</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="chunk.toc.frag"><xsl:param name="chunk.toc" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>The <parameter moreinfo="none">chunk.toc</parameter> identifies an explicit TOC that +will be used for chunking. This parameter is only used by the +<filename moreinfo="none">chunktoc.xsl</filename> stylesheet (and customization layers built +from it).</para> + +</refsect1> +</refentry> + +<refentry id="chunk.tocs.and.lots"> +<refmeta> +<refentrytitle>chunk.tocs.and.lots</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>chunk.tocs.and.lots</refname> +<refpurpose>Should ToC and LoTs be in separate chunks?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="chunk.tocs.and.lots.frag"><xsl:param name="chunk.tocs.and.lots" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If non-zero, ToC and LoT (List of Examples, List of Figures, etc.) +will be put in a separate chunk. At the moment, this chunk is not in the +normal forward/backward navigation list. Instead, a new link is added to the +navigation footer.</para> + +<para>This feature is still somewhat experimental. Feedback welcome.</para> + +</refsect1> +</refentry> + +<refentry id="chunk.section.depth"> +<refmeta> +<refentrytitle>chunk.section.depth</refentrytitle> +<refmiscinfo role="type">integer</refmiscinfo> +</refmeta> +<refnamediv> +<refname>chunk.section.depth</refname> +<refpurpose>Depth to which sections should be chunked</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="chunk.section.depth.frag"><xsl:param name="chunk.section.depth" + select="1"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>This parameter sets the depth of section chunking.</para> + +</refsect1> +</refentry> + +<refentry id="chunk.first.sections"> +<refmeta> +<refentrytitle>chunk.first.sections</refentrytitle> + +</refmeta> +<refnamediv> +<refname>chunk.first.sections</refname> +<refpurpose>Chunk the first top-level section?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="chunk.first.sections.frag"><xsl:param name="chunk.first.sections" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If non-zero, a chunk will be created for the first top-level +<sgmltag>sect1</sgmltag> or <sgmltag>section</sgmltag> elements in +each component. Otherwise, that section will be part of the chunk for +its parent. +</para> + +</refsect1> +</refentry> + +<refentry id="chunk.quietly"> +<refmeta> +<refentrytitle>chunk.quietly</refentrytitle> + +</refmeta> +<refnamediv> +<refname>chunk.quietly</refname> +<refpurpose>Omit the chunked filename messages.</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="chunk.quietly.frag"><xsl:param name="chunk.quietly" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If zero (the default), the XSL processor emits a message naming +each separate chunk filename as it is being output. +If nonzero, then the messages are suppressed. +</para> + +</refsect1> +</refentry> + +<refentry id="navig.graphics"> +<refmeta> +<refentrytitle>navig.graphics</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>navig.graphics</refname> +<refpurpose>Use graphics in navigational headers and footers?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="navig.graphics.frag"><xsl:param name="navig.graphics" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If true (non-zero), the navigational headers and footers in chunked +HTML are presented in an alternate style that uses +graphical icons for Next, Previous, Up, and Home. +Default graphics are provided in the distribution. +</para> + +</refsect1> +</refentry> + +<refentry id="navig.graphics.extension"> +<refmeta> +<refentrytitle>navig.graphics.extension</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>navig.graphics.extension</refname> +<refpurpose>Extension for navigational graphics</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="navig.graphics.extension.frag"><xsl:param name="navig.graphics.extension" + select="'.gif'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Sets the filename extension to use on navigational graphics used +in the headers and footers of chunked HTML.</para> + +</refsect1> +</refentry> + +<refentry id="navig.graphics.path"> +<refmeta> +<refentrytitle>navig.graphics.path</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>navig.graphics.path</refname> +<refpurpose>Path to navigational graphics</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="navig.graphics.path.frag"><xsl:param name="navig.graphics.path">images/</xsl:param></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Sets the path, probably relative to the directory where the HTML +files are created, to the navigational graphics used in the +headers and footers of chunked HTML. +</para> + +</refsect1> +</refentry> + +<refentry id="navig.showtitles"> +<refmeta> +<refentrytitle>navig.showtitles</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>navig.showtitles</refname> +<refpurpose>Display titles in HTML headers and footers?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="navig.showtitles.frag"><xsl:param name="navig.showtitles">1</xsl:param></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If true (non-zero), +the headers and footers of chunked HTML +display the titles of the next and previous chunks, +along with the words 'Next' and 'Previous' (or the +equivalent graphical icons if navig.graphics is true). +If false (zero), then only the words 'Next' and 'Previous' +(or the icons) are displayed. +</para> + +</refsect1> +</refentry> + +</reference> + +<reference><title>Profiling</title> +<partintro> +<para>Following parameters can be used for attribute value based +profiling of your document. For more info about profiling look at +<ulink url="http://docbook.sourceforge.net/projects/xsl/doc/tools/profiling.html">http://docbook.sourceforge.net/projects/xsl/doc/tools/profiling.html</ulink>.</para> +</partintro> +<refentry id="profile.arch"> +<refmeta> +<refentrytitle>profile.arch</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.arch</refname> +<refpurpose>Target profile for <sgmltag class="attribute">arch</sgmltag> +attribute</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.arch.frag"><xsl:param name="profile.arch" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Value of this parameter specifies profiles which should be +included in the output. You can specify multiple profiles by +separating them by semicolon. You can change separator character by +<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> +parameter.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +</refsect1> +</refentry> + +<refentry id="profile.condition"> +<refmeta> +<refentrytitle>profile.condition</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.condition</refname> +<refpurpose>Target profile for <sgmltag class="attribute">condition</sgmltag> +attribute</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.condition.frag"><xsl:param name="profile.condition" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Value of this parameter specifies profiles which should be +included in the output. You can specify multiple profiles by +separating them by semicolon. You can change separator character by +<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> +parameter.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +</refsect1> +</refentry> + +<refentry id="profile.conformance"> +<refmeta> +<refentrytitle>profile.conformance</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.conformance</refname> +<refpurpose>Target profile for <sgmltag class="attribute">conformance</sgmltag> +attribute</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.conformance.frag"><xsl:param name="profile.conformance" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Value of this parameter specifies profiles which should be +included in the output. You can specify multiple profiles by +separating them by semicolon. You can change separator character by +<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> +parameter.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +</refsect1> +</refentry> + +<refentry id="profile.lang"> +<refmeta> +<refentrytitle>profile.lang</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.lang</refname> +<refpurpose>Target profile for <sgmltag class="attribute">lang</sgmltag> +attribute</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.lang.frag"><xsl:param name="profile.lang" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Value of this parameter specifies profiles which should be +included in the output. You can specify multiple profiles by +separating them by semicolon. You can change separator character by +<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> +parameter.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +</refsect1> +</refentry> + +<refentry id="profile.os"> +<refmeta> +<refentrytitle>profile.os</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.os</refname> +<refpurpose>Target profile for <sgmltag class="attribute">os</sgmltag> +attribute</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.os.frag"><xsl:param name="profile.os" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Value of this parameter specifies profiles which should be +included in the output. You can specify multiple profiles by +separating them by semicolon. You can change separator character by +<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> +parameter.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +</refsect1> +</refentry> + +<refentry id="profile.revision"> +<refmeta> +<refentrytitle>profile.revision</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.revision</refname> +<refpurpose>Target profile for <sgmltag class="attribute">revision</sgmltag> +attribute</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.revision.frag"><xsl:param name="profile.revision" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Value of this parameter specifies profiles which should be +included in the output. You can specify multiple profiles by +separating them by semicolon. You can change separator character by +<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> +parameter.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +</refsect1> +</refentry> + +<refentry id="profile.revisionflag"> +<refmeta> +<refentrytitle>profile.revisionflag</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.revisionflag</refname> +<refpurpose>Target profile for <sgmltag class="attribute">revisionflag</sgmltag> +attribute</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.revisionflag.frag"><xsl:param name="profile.revisionflag" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Value of this parameter specifies profiles which should be +included in the output. You can specify multiple profiles by +separating them by semicolon. You can change separator character by +<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> +parameter.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +</refsect1> +</refentry> + +<refentry id="profile.role"> +<refmeta> +<refentrytitle>profile.role</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.role</refname> +<refpurpose>Target profile for <sgmltag class="attribute">role</sgmltag> +attribute</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.role.frag"><xsl:param name="profile.role" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Value of this parameter specifies profiles which should be +included in the output. You can specify multiple profiles by +separating them by semicolon. You can change separator character by +<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> +parameter.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +<warning> +<para>Note that <sgmltag class="attribute">role</sgmltag> is often +used for other purposes than profiling. For example it is commonly +used to get emphasize in bold font:</para> + +<programlisting format="linespecific"><emphasis role="bold">very important</emphasis></programlisting> + +<para>If you are using <sgmltag class="attribute">role</sgmltag> for +these purposes do not forget to add values like <literal moreinfo="none">bold</literal> to +value of this parameter. If you forgot you will get document with +small pieces missing which are very hard to track.</para> + +<para>For this reason it is not recommended to use <sgmltag class="attribute">role</sgmltag> attribute for profiling. You should +rather use profiling specific attributes like <sgmltag class="attribute">userlevel</sgmltag>, <sgmltag class="attribute">os</sgmltag>, <sgmltag class="attribute">arch</sgmltag>, <sgmltag class="attribute">condition</sgmltag>, etc.</para> +</warning> + +</refsect1> +</refentry> + +<refentry id="profile.security"> +<refmeta> +<refentrytitle>profile.security</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.security</refname> +<refpurpose>Target profile for <sgmltag class="attribute">security</sgmltag> +attribute</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.security.frag"><xsl:param name="profile.security" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Value of this parameter specifies profiles which should be +included in the output. You can specify multiple profiles by +separating them by semicolon. You can change separator character by +<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> +parameter.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +</refsect1> +</refentry> + +<refentry id="profile.userlevel"> +<refmeta> +<refentrytitle>profile.userlevel</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.userlevel</refname> <refpurpose>Target profile for <sgmltag class="attribute">userlevel</sgmltag> attribute</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="profile.userlevel.frag"><xsl:param name="profile.userlevel" +<src:fragment id="profile.userlevel.frag"><xsl:param name="profile.userlevel" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Value of this parameter specifies profiles which should be +included in the output. You can specify multiple profiles by +separating them by semicolon. You can change separator character by +<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> +parameter.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +</refsect1> +</refentry> + +<refentry id="profile.vendor"> +<refmeta> +<refentrytitle>profile.vendor</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.vendor</refname> +<refpurpose>Target profile for <sgmltag class="attribute">vendor</sgmltag> +attribute</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.vendor.frag"><xsl:param name="profile.vendor" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Value of this parameter specifies profiles which should be +included in the output. You can specify multiple profiles by +separating them by semicolon. You can change separator character by +<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> +parameter.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +</refsect1> +</refentry> + +<refentry id="profile.attribute"> +<refmeta> +<refentrytitle>profile.attribute</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.attribute</refname> +<refpurpose>Name of user-specified profiling attribute</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.attribute.frag"><xsl:param name="profile.attribute" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>This parameter is used in conjuction with <link linkend="profile.value"><parameter moreinfo="none">profile.value</parameter></link>.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +</refsect1> +</refentry> + +<refentry id="profile.value"> +<refmeta> +<refentrytitle>profile.value</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.value</refname> +<refpurpose>Target profile for user-specified attribute</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.value.frag"><xsl:param name="profile.value" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>When you are using this parameter you must also specify name of +profiling attribute with parameter <link linkend="profile.attribute"><parameter moreinfo="none">profile.attribute</parameter></link>.</para> + +<para>Value of this parameter specifies profiles which should be +included in the output. You can specify multiple profiles by +separating them by semicolon. You can change separator character by +<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> +parameter.</para> + +<para>This parameter has effect only when you are using profiling +stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, +<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal +ones (<filename moreinfo="none">docbook.xsl</filename>, +<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> + +</refsect1> +</refentry> + +<refentry id="profile.separator"> +<refmeta> +<refentrytitle>profile.separator</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>profile.separator</refname> +<refpurpose>Separator character for compound profile values</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="profile.separator.frag"><xsl:param name="profile.separator" + select="';'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Separator character for compound profile values.</para> + +</refsect1> +</refentry> + +</reference> + +<reference><title>HTML Help</title> +<refentry id="htmlhelp.encoding"> +<refmeta> +<refentrytitle>htmlhelp.encoding</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.encoding</refname> +<refpurpose>Character encoding to use in files for HTML Help compiler.</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.encoding.frag"><xsl:param name="htmlhelp.encoding" + select="'iso-8859-1'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>HTML Help Compiler is not UTF-8 aware, so you should always use +apropriate single-byte encoding here.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.autolabel"> +<refmeta> +<refentrytitle>htmlhelp.autolabel</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.autolabel</refname> +<refpurpose>Should tree-like ToC use autonumbering feature?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.autolabel.frag"><xsl:param name="htmlhelp.autolabel" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If you want to include chapter and section numbers into ToC in +the left panel, set this parameter to 1.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.chm"> +<refmeta> +<refentrytitle>htmlhelp.chm</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.chm</refname> +<refpurpose>Filename of output HTML Help file.</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.chm.frag"><xsl:param name="htmlhelp.chm" + select="'htmlhelp.chm'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Change this parameter if you want different name of result +CHM file than htmlhelp.chm.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.default.topic"> +<refmeta> +<refentrytitle>htmlhelp.default.topic</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.default.topic</refname> +<refpurpose>Name of file with default topic</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.default.topic.frag"><xsl:param name="htmlhelp.default.topic" + select="''"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Normally first chunk of document is displayed when you open HTML +Help file. If you want to display another topic, simply set its +filename by this parameter.</para> + +<para>This is useful especially if you don't generate ToC in front of +your document and you also hide root element in ToC. E.g.:</para> + +<programlisting format="linespecific"><xsl:param name="generate.book.toc" select="0"/> +<xsl:param name="htmlhelp.hhc.show.root" select="0"/> +<xsl:param name="htmlhelp.default.topic" select="'pr01.html'"/></programlisting> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.hhp"> +<refmeta> +<refentrytitle>htmlhelp.hhp</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.hhp</refname> +<refpurpose>Filename of project file.</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.hhp.frag"><xsl:param name="htmlhelp.hhp" + select="'htmlhelp.hhp'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Change this parameter if you want different name of project +file than htmlhelp.hhp.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.hhc"> +<refmeta> +<refentrytitle>htmlhelp.hhc</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.hhc</refname> +<refpurpose>Filename of TOC file.</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.hhc.frag"><xsl:param name="htmlhelp.hhc" + select="'toc.hhc'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Change this parameter if you want different name of TOC file +than toc.hhc.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.hhk"> +<refmeta> +<refentrytitle>htmlhelp.hhk</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.hhk</refname> +<refpurpose>Filename of index file.</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.hhk.frag"><xsl:param name="htmlhelp.hhk" + select="'index.hhk'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Change this parameter if you want different name of index file +than index.hhk.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.hhp.tail"> +<refmeta> +<refentrytitle>htmlhelp.hhp.tail</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.hhp.tail</refname> +<refpurpose>Additional content for project file.</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.hhp.tail.frag"><xsl:param name="htmlhelp.hhp.tail"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If you want to include some additional parameters into project file, +store appropriate part of project file into this parameter.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.hhp.window"> +<refmeta> +<refentrytitle>htmlhelp.hhp.window</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.hhp.window</refname> +<refpurpose>Name of default window.</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.hhp.window.frag"><xsl:param name="htmlhelp.hhp.window" + select="'Main'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Name of default window. If empty no [WINDOWS] section will be +added to project file.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.enumerate.images"> +<refmeta> +<refentrytitle>htmlhelp.enumerate.images</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.enumerate.images</refname> +<refpurpose>Should be paths to all used images added to project file?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.enumerate.images.frag"><xsl:param name="htmlhelp.enumerate.images" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>You should turn on this flag, if you insert images into your documents +as external binary entities or if you are using absolute path in image names.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.force.map.and.alias"> +<refmeta> +<refentrytitle>htmlhelp.force.map.and.alias</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.force.map.and.alias</refname> +<refpurpose>Should be [MAP] and [ALIAS] section added to project file unconditionaly?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.force.map.and.alias.frag"><xsl:param name="htmlhelp.force.map.and.alias" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>You should turn on this flag, if you have your own +<filename moreinfo="none">alias.h</filename> and <filename moreinfo="none">contex.h</filename> files +and you want include reference to them in project file.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.map.file"> +<refmeta> +<refentrytitle>htmlhelp.map.file</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.map.file</refname> +<refpurpose>Filename of map file.</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.map.file.frag"><xsl:param name="htmlhelp.map.file" + select="'context.h'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Change this parameter if you want different name of map file +than <filename moreinfo="none">context.h</filename>.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.alias.file"> +<refmeta> +<refentrytitle>htmlhelp.alias.file</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.alias.file</refname> +<refpurpose>Filename of map file.</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.alias.file.frag"><xsl:param name="htmlhelp.alias.file" + select="'alias.h'"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Change this parameter if you want different name of map file +than <filename moreinfo="none">alias.h</filename>.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.hhc.section.depth"> +<refmeta> +<refentrytitle>htmlhelp.hhc.section.depth</refentrytitle> +<refmiscinfo role="type">integer</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.hhc.section.depth</refname> +<refpurpose>Depth of TOC for sections in a left pane.</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.hhc.section.depth.frag"><xsl:param name="htmlhelp.hhc.section.depth" + select="5"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>Change this parameter if you want shallower ToC in a left pane +of HTML Help viewer.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.hhc.show.root"> +<refmeta> +<refentrytitle>htmlhelp.hhc.show.root</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.hhc.show.root</refname> +<refpurpose>Should be entry for root element shown in ToC?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.hhc.show.root.frag"><xsl:param name="htmlhelp.hhc.show.root" + select="1"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If set to 0, there will be no entry for root element in +ToC. This is useful when you want provide user with expanded ToC as +a default.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.hhc.folders.instead.books"> +<refmeta> +<refentrytitle>htmlhelp.hhc.folders.instead.books</refentrytitle> +<refmiscinfo role="type"/> +</refmeta> +<refnamediv> +<refname>htmlhelp.hhc.folders.instead.books</refname> +<refpurpose/> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.hhc.folders.instead.books.frag"><xsl:param name="htmlhelp.hhc.folders.instead.books" + select="1"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>This parameter controls whether there should be folder-like +icons (1) or book-like icons (0) in ToC.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.hhc.binary"> +<refmeta> +<refentrytitle>htmlhelp.hhc.binary</refentrytitle> +<refmiscinfo role="type"/> +</refmeta> +<refnamediv> +<refname>htmlhelp.hhc.binary</refname> +<refpurpose/> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.hhc.binary.frag"><xsl:param name="htmlhelp.hhc.binary" + select="1"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>This parametr controls whether binary TOC will be generated. You +must create binary TOC if you want to add Prev/Next buttons to toolbar +(which is default behaviour). Files with binary TOC can't be merged.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.title"> +<refmeta> +<refentrytitle>htmlhelp.title</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.title</refname> +<refpurpose>Title of HTML Help</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.title.frag"><xsl:param name="htmlhelp.title" select="''"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Value of this parameter specifies profiles which should be -included in the output. You can specify multiple profiles by -separating them by semicolon. You can change separator character by -<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> -parameter.</para> - -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> +<para>Content of this parameter will be used as a title for generated +HTML Help. If empty, title will be automatically taken from document.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.show.menu"> +<refmeta> +<refentrytitle>htmlhelp.show.menu</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.show.menu</refname> +<refpurpose>Should be menu shown?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.show.menu.frag"><xsl:param name="htmlhelp.show.menu" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If you want application menu in your HTML Help file, turn this +parameter to 1.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.show.advanced.search"> +<refmeta> +<refentrytitle>htmlhelp.show.advanced.search</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.show.advanced.search</refname> +<refpurpose>Should be advanced search available?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.show.advanced.search.frag"><xsl:param name="htmlhelp.show.advanced.search" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If you want advanced search features in your help, turn this +parameter to 1.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.show.favorities"> +<refmeta> +<refentrytitle>htmlhelp.show.favorities</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.show.favorities</refname> +<refpurpose>Should be favorities tab shown?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.show.favorities.frag"><xsl:param name="htmlhelp.show.favorities" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If you want favorities tab shown in your help, turn this +parameter to 1.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.button.hideshow"> +<refmeta> +<refentrytitle>htmlhelp.button.hideshow</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.button.hideshow</refname> +<refpurpose>Should be Hide/Show button shown?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.button.hideshow.frag"><xsl:param name="htmlhelp.button.hideshow" + select="1"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If you want Hide/Show button shown on toolbar, turn this +parameter to 1.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.button.back"> +<refmeta> +<refentrytitle>htmlhelp.button.back</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.button.back</refname> +<refpurpose>Should be Back button shown?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.button.back.frag"><xsl:param name="htmlhelp.button.back" + select="1"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If you want Back button shown on toolbar, turn this +parameter to 1.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.button.forward"> +<refmeta> +<refentrytitle>htmlhelp.button.forward</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.button.forward</refname> +<refpurpose>Should be Forward button shown?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.button.forward.frag"><xsl:param name="htmlhelp.button.forward" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If you want Forward button shown on toolbar, turn this +parameter to 1.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.button.stop"> +<refmeta> +<refentrytitle>htmlhelp.button.stop</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.button.stop</refname> +<refpurpose>Should be Stop button shown?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.button.stop.frag"><xsl:param name="htmlhelp.button.stop" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If you want Stop button shown on toolbar, turn this +parameter to 1.</para> + +</refsect1> +</refentry> + +<refentry id="htmlhelp.button.refresh"> +<refmeta> +<refentrytitle>htmlhelp.button.refresh</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>htmlhelp.button.refresh</refname> +<refpurpose>Should be Refresh button shown?</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id="htmlhelp.button.refresh.frag"><xsl:param name="htmlhelp.button.refresh" + select="0"/></src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If you want Refresh button shown on toolbar, turn this +parameter to 1.</para> </refsect1> </refentry> -<refentry id="profile.vendor"> +<refentry id="htmlhelp.button.home"> <refmeta> -<refentrytitle>profile.vendor</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>htmlhelp.button.home</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.vendor</refname> -<refpurpose>Target profile for <sgmltag class="attribute">vendor</sgmltag> -attribute</refpurpose> +<refname>htmlhelp.button.home</refname> +<refpurpose>Should be Home button shown?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="profile.vendor.frag"><xsl:param name="profile.vendor" - select="''"/></src:fragment> +<src:fragment id="htmlhelp.button.home.frag"><xsl:param name="htmlhelp.button.home" + select="0"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Value of this parameter specifies profiles which should be -included in the output. You can specify multiple profiles by -separating them by semicolon. You can change separator character by -<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> -parameter.</para> - -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> +<para>If you want Home button shown on toolbar, turn this +parameter to 1.</para> </refsect1> </refentry> -<refentry id="profile.attribute"> +<refentry id="htmlhelp.button.home.url"> <refmeta> -<refentrytitle>profile.attribute</refentrytitle> +<refentrytitle>htmlhelp.button.home.url</refentrytitle> <refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.attribute</refname> -<refpurpose>Name of user-specified profiling attribute</refpurpose> +<refname>htmlhelp.button.home.url</refname> +<refpurpose>URL address of page accessible by Home button</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="profile.attribute.frag"><xsl:param name="profile.attribute" - select="''"/></src:fragment> +<src:fragment id="htmlhelp.button.home.url.frag"><xsl:param name="htmlhelp.button.home.url"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>This parameter is used in conjuction with <link linkend="profile.value"><parameter moreinfo="none">profile.value</parameter></link>.</para> - -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> +<para>URL address of page accessible by Home button.</para> </refsect1> </refentry> -<refentry id="profile.value"> +<refentry id="htmlhelp.button.options"> <refmeta> -<refentrytitle>profile.value</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>htmlhelp.button.options</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.value</refname> -<refpurpose>Target profile for user-specified attribute</refpurpose> +<refname>htmlhelp.button.options</refname> +<refpurpose>Should be Options button shown?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="profile.value.frag"><xsl:param name="profile.value" - select="''"/></src:fragment> +<src:fragment id="htmlhelp.button.options.frag"><xsl:param name="htmlhelp.button.options" + select="1"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>When you are using this parameter you must also specify name of -profiling attribute with parameter <link linkend="profile.attribute"><parameter moreinfo="none">profile.attribute</parameter></link>.</para> - -<para>Value of this parameter specifies profiles which should be -included in the output. You can specify multiple profiles by -separating them by semicolon. You can change separator character by -<link linkend="profile.separator"><parameter moreinfo="none">profile.separator</parameter></link> -parameter.</para> - -<para>This parameter has effect only when you are using profiling -stylesheets (<filename moreinfo="none">profile-docbook.xsl</filename>, -<filename moreinfo="none">profile-chunk.xsl</filename>, â¦) instead of normal -ones (<filename moreinfo="none">docbook.xsl</filename>, -<filename moreinfo="none">chunk.xsl</filename>, â¦).</para> +<para>If you want Options button shown on toolbar, turn this +parameter to 1.</para> </refsect1> </refentry> -<refentry id="profile.separator"> +<refentry id="htmlhelp.button.print"> <refmeta> -<refentrytitle>profile.separator</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>htmlhelp.button.print</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>profile.separator</refname> -<refpurpose>Separator character for compound profile values</refpurpose> +<refname>htmlhelp.button.print</refname> +<refpurpose>Should be Print button shown?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="profile.separator.frag"><xsl:param name="profile.separator" - select="';'"/></src:fragment> +<src:fragment id="htmlhelp.button.print.frag"><xsl:param name="htmlhelp.button.print" + select="1"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Separator character for compound profile values.</para> +<para>If you want Print button shown on toolbar, turn this +parameter to 1.</para> </refsect1> </refentry> -</reference> - -<reference><title>HTML Help</title> -<refentry id="htmlhelp.encoding"> +<refentry id="htmlhelp.button.locate"> <refmeta> -<refentrytitle>htmlhelp.encoding</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>htmlhelp.button.locate</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.encoding</refname> -<refpurpose>Character encoding to use in files for HTML Help compiler.</refpurpose> +<refname>htmlhelp.button.locate</refname> +<refpurpose>Should be Locate button shown?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.encoding.frag"><xsl:param name="htmlhelp.encoding" - select="'iso-8859-1'"/></src:fragment> +<src:fragment id="htmlhelp.button.locate.frag"><xsl:param name="htmlhelp.button.locate" + select="0"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>HTML Help Compiler is not UTF-8 aware, so you should always use -apropriate single-byte encoding here.</para> +<para>If you want Locate button shown on toolbar, turn this +parameter to 1.</para> </refsect1> </refentry> -<refentry id="htmlhelp.autolabel"> +<refentry id="htmlhelp.button.jump1"> <refmeta> -<refentrytitle>htmlhelp.autolabel</refentrytitle> +<refentrytitle>htmlhelp.button.jump1</refentrytitle> <refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.autolabel</refname> -<refpurpose>Should tree-like ToC use autonumbering feature?</refpurpose> +<refname>htmlhelp.button.jump1</refname> +<refpurpose>Should be Jump1 button shown?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.autolabel.frag"><xsl:param name="htmlhelp.autolabel" +<src:fragment id="htmlhelp.button.jump1.frag"><xsl:param name="htmlhelp.button.jump1" select="0"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>If you want to include chapter and section numbers into ToC in -the left panel, set this parameter to 1.</para> +<para>If you want Jump1 button shown on toolbar, turn this +parameter to 1.</para> </refsect1> </refentry> -<refentry id="htmlhelp.chm"> +<refentry id="htmlhelp.button.jump1.url"> <refmeta> -<refentrytitle>htmlhelp.chm</refentrytitle> +<refentrytitle>htmlhelp.button.jump1.url</refentrytitle> <refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.chm</refname> -<refpurpose>Filename of output HTML Help file.</refpurpose> +<refname>htmlhelp.button.jump1.url</refname> +<refpurpose>URL address of page accessible by Jump1 button</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.chm.frag"><xsl:param name="htmlhelp.chm" - select="'htmlhelp.chm'"/></src:fragment> +<src:fragment id="htmlhelp.button.jump1.url.frag"><xsl:param name="htmlhelp.button.jump1.url"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Change this parameter if you want different name of result -CHM file than htmlhelp.chm.</para> +<para>URL address of page accessible by Jump1 button.</para> </refsect1> </refentry> -<refentry id="htmlhelp.default.topic"> +<refentry id="htmlhelp.button.jump1.title"> <refmeta> -<refentrytitle>htmlhelp.default.topic</refentrytitle> +<refentrytitle>htmlhelp.button.jump1.title</refentrytitle> <refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.default.topic</refname> -<refpurpose>Name of file with default topic</refpurpose> +<refname>htmlhelp.button.jump1.title</refname> +<refpurpose>Title of Jump1 button</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.default.topic.frag"><xsl:param name="htmlhelp.default.topic" - select="''"/></src:fragment> +<src:fragment id="htmlhelp.button.jump1.title.frag"><xsl:param name="htmlhelp.button.jump1.title" + select="'User1'"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Normally first chunk of document is displayed when you open HTML -Help file. If you want to display another topic, simply set its -filename by this parameter.</para> - -<para>This is useful especially if you don't generate ToC in front of -your document and you also hide root element in ToC. E.g.:</para> - -<programlisting format="linespecific"><xsl:param name="generate.book.toc" select="0"/> -<xsl:param name="htmlhelp.hhc.show.root" select="0"/> -<xsl:param name="htmlhelp.default.topic" select="'pr01.html'"/></programlisting> +<para>Title of Jump1 button.</para> </refsect1> </refentry> -<refentry id="htmlhelp.hhp"> +<refentry id="htmlhelp.button.jump2"> <refmeta> -<refentrytitle>htmlhelp.hhp</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>htmlhelp.button.jump2</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.hhp</refname> -<refpurpose>Filename of project file.</refpurpose> +<refname>htmlhelp.button.jump2</refname> +<refpurpose>Should be Jump2 button shown?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.hhp.frag"><xsl:param name="htmlhelp.hhp" - select="'htmlhelp.hhp'"/></src:fragment> +<src:fragment id="htmlhelp.button.jump2.frag"><xsl:param name="htmlhelp.button.jump2" + select="0"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Change this parameter if you want different name of project -file than htmlhelp.hhp.</para> +<para>If you want Jump2 button shown on toolbar, turn this +parameter to 1.</para> </refsect1> </refentry> -<refentry id="htmlhelp.hhc"> +<refentry id="htmlhelp.button.jump2.url"> <refmeta> -<refentrytitle>htmlhelp.hhc</refentrytitle> +<refentrytitle>htmlhelp.button.jump2.url</refentrytitle> <refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.hhc</refname> -<refpurpose>Filename of TOC file.</refpurpose> +<refname>htmlhelp.button.jump2.url</refname> +<refpurpose>URL address of page accessible by Jump2 button</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.hhc.frag"><xsl:param name="htmlhelp.hhc" - select="'toc.hhc'"/></src:fragment> +<src:fragment id="htmlhelp.button.jump2.url.frag"><xsl:param name="htmlhelp.button.jump2.url"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Change this parameter if you want different name of TOC file -than toc.hhc.</para> +<para>URL address of page accessible by Jump2 button.</para> </refsect1> </refentry> -<refentry id="htmlhelp.hhp.tail"> +<refentry id="htmlhelp.button.jump2.title"> <refmeta> -<refentrytitle>htmlhelp.hhp.tail</refentrytitle> +<refentrytitle>htmlhelp.button.jump2.title</refentrytitle> <refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.hhp.tail</refname> -<refpurpose>Additional content for project file.</refpurpose> +<refname>htmlhelp.button.jump2.title</refname> +<refpurpose>Title of Jump2 button</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.hhp.tail.frag"><xsl:param name="htmlhelp.hhp.tail"/></src:fragment> +<src:fragment id="htmlhelp.button.jump2.title.frag"><xsl:param name="htmlhelp.button.jump2.title" + select="'User2'"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>If you want to include some additional parameters into project file, -store appropriate part of project file into this parameter.</para> +<para>Title of Jump2 button.</para> </refsect1> </refentry> -<refentry id="htmlhelp.enumerate.images"> +<refentry id="htmlhelp.button.next"> <refmeta> -<refentrytitle>htmlhelp.enumerate.images</refentrytitle> +<refentrytitle>htmlhelp.button.next</refentrytitle> <refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.enumerate.images</refname> -<refpurpose>Should be paths to all used images added to project file?</refpurpose> +<refname>htmlhelp.button.next</refname> +<refpurpose>Should be Next button shown?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.enumerate.images.frag"><xsl:param name="htmlhelp.enumerate.images" - select="0"/></src:fragment> +<src:fragment id="htmlhelp.button.next.frag"><xsl:param name="htmlhelp.button.next" + select="1"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>You should turn on this flag, if you insert images into your documents -as external binary entities or if you are using absolute path in image names.</para> +<para>If you want Next button shown on toolbar, turn this +parameter to 1.</para> </refsect1> </refentry> -<refentry id="htmlhelp.force.map.and.alias"> +<refentry id="htmlhelp.button.prev"> <refmeta> -<refentrytitle>htmlhelp.force.map.and.alias</refentrytitle> +<refentrytitle>htmlhelp.button.prev</refentrytitle> <refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.force.map.and.alias</refname> -<refpurpose>Should be [MAP] and [ALIAS] section added to project file unconditionaly?</refpurpose> +<refname>htmlhelp.button.prev</refname> +<refpurpose>Should be Prev button shown?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.force.map.and.alias.frag"><xsl:param name="htmlhelp.force.map.and.alias" - select="0"/></src:fragment> +<src:fragment id="htmlhelp.button.prev.frag"><xsl:param name="htmlhelp.button.prev" + select="1"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>You should turn on this flag, if you have your own -<filename moreinfo="none">alias.h</filename> and <filename moreinfo="none">contex.h</filename> files -and you want include reference to them in project file.</para> +<para>If you want Prev button shown on toolbar, turn this +parameter to 1.</para> </refsect1> </refentry> -<refentry id="htmlhelp.map.file"> +<refentry id="htmlhelp.button.zoom"> <refmeta> -<refentrytitle>htmlhelp.map.file</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>htmlhelp.button.zoom</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.map.file</refname> -<refpurpose>Filename of map file.</refpurpose> +<refname>htmlhelp.button.zoom</refname> +<refpurpose>Should be Zoom button shown?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.map.file.frag"><xsl:param name="htmlhelp.map.file" - select="'context.h'"/></src:fragment> +<src:fragment id="htmlhelp.button.zoom.frag"><xsl:param name="htmlhelp.button.zoom" + select="0"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Change this parameter if you want different name of map file -than <filename moreinfo="none">context.h</filename>.</para> +<para>If you want Zoom button shown on toolbar, turn this +parameter to 1.</para> </refsect1> </refentry> -<refentry id="htmlhelp.alias.file"> +<refentry id="htmlhelp.use.hhk"> <refmeta> -<refentrytitle>htmlhelp.alias.file</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>htmlhelp.use.hhk</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.alias.file</refname> -<refpurpose>Filename of map file.</refpurpose> +<refname>htmlhelp.use.hhk</refname> +<refpurpose>Should be index built using HHK file?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.alias.file.frag"><xsl:param name="htmlhelp.alias.file" - select="'alias.h'"/></src:fragment> +<src:fragment id="htmlhelp.use.hhk.frag"><xsl:param name="htmlhelp.use.hhk" + select="0"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Change this parameter if you want different name of map file -than <filename moreinfo="none">alias.h</filename>.</para> +<para>If non-zero, index is created using HHK file. This provides some +new features.</para> </refsect1> </refentry> -<refentry id="htmlhelp.hhc.section.depth"> +<refentry id="htmlhelp.only"> <refmeta> -<refentrytitle>htmlhelp.hhc.section.depth</refentrytitle> -<refmiscinfo role="type">integer</refmiscinfo> +<refentrytitle>htmlhelp.only</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.hhc.section.depth</refname> -<refpurpose>Depth of TOC for sections in a left pane.</refpurpose> +<refname>htmlhelp.only</refname> +<refpurpose>Should be only project files generated?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.hhc.section.depth.frag"><xsl:param name="htmlhelp.hhc.section.depth" - select="5"/></src:fragment> +<src:fragment id="htmlhelp.only.frag"><xsl:param name="htmlhelp.only" + select="0"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Change this parameter if you want shallower ToC in a left pane -of HTML Help viewer.</para> +<para>If you want to play with various HTML Help parameters and you +don't need to regenerate all HTML files, you can set this parameter to +1. This setting will not process whole document, only project files +(hhp, hhc, hhk,...) will be generated.</para> </refsect1> </refentry> -<refentry id="htmlhelp.hhc.show.root"> +</reference> + +<reference><title>Localization</title> +<refentry id="l10n.gentext.language"> <refmeta> -<refentrytitle>htmlhelp.hhc.show.root</refentrytitle> -<refmiscinfo role="type">boolean</refmiscinfo> +<refentrytitle>l10n.gentext.language</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.hhc.show.root</refname> -<refpurpose>Should be entry for root element shown in ToC?</refpurpose> +<refname>l10n.gentext.language</refname> +<refpurpose>Sets the gentext language</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.hhc.show.root.frag"><xsl:param name="htmlhelp.hhc.show.root" - select="1"/></src:fragment> +<src:fragment id="l10n.gentext.language.frag"><xsl:param name="l10n.gentext.language" + select="''"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>If set to 0, there will be no entry for root element in -ToC. This is useful when you want provide user with expanded ToC as -a default.</para> +<para>If this parameter is set to any value other than the empty string, its +value will be used as the value for the language when generating text. Setting +<parameter moreinfo="none">l10n.gentext.language</parameter> overrides any settings within the +document being formatted.</para> + +<para>It's much more likely that you might want to set the +<parameter moreinfo="none">l10n.gentext.default.language</parameter> parameter.</para> </refsect1> </refentry> -<refentry id="htmlhelp.hhc.folders.instead.books"> +<refentry id="l10n.gentext.default.language"> <refmeta> -<refentrytitle>htmlhelp.hhc.folders.instead.books</refentrytitle> -<refmiscinfo role="type"/> +<refentrytitle>l10n.gentext.default.language</refentrytitle> +<refmiscinfo role="type">string</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.hhc.folders.instead.books</refname> -<refpurpose/> +<refname>l10n.gentext.default.language</refname> +<refpurpose>Sets the default language for generated text</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.hhc.folders.instead.books.frag"><xsl:param name="htmlhelp.hhc.folders.instead.books" - select="1"/></src:fragment> +<src:fragment id="l10n.gentext.default.language.frag"><xsl:param name="l10n.gentext.default.language" + select="'en'"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>This parameter controls whether there should be folder-like -icons (1) or book-like icons (0) in ToC.</para> +<para>The value of the <parameter moreinfo="none">l10n.gentext.default.language</parameter> +parameter is used as the language for generated text if no setting is provided +in the source document.</para> </refsect1> </refentry> -<refentry id="htmlhelp.title"> +<refentry id="l10n.gentext.use.xref.language"> <refmeta> -<refentrytitle>htmlhelp.title</refentrytitle> -<refmiscinfo role="type">string</refmiscinfo> +<refentrytitle>l10n.gentext.use.xref.language</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> </refmeta> <refnamediv> -<refname>htmlhelp.title</refname> -<refpurpose>Title of HTML Help</refpurpose> +<refname>l10n.gentext.use.xref.language</refname> +<refpurpose>Use the language of target when generating cross-reference text?</refpurpose> </refnamediv> <refsynopsisdiv> -<src:fragment id="htmlhelp.title.frag"><xsl:param name="htmlhelp.title" - select="''"/></src:fragment> +<src:fragment id="l10n.gentext.use.xref.language.frag"><xsl:param name="l10n.gentext.use.xref.language" + select="0"/></src:fragment> </refsynopsisdiv> <refsect1><title>Description</title> -<para>Content of this parameter will be used as a title for generated -HTML Help. If empty, title will be automatically taken from document.</para> +<para>If non-zero, the language of the target will be used when +generating cross reference text. Usually, the <quote>current</quote> +language is used when generating text (that is, the language of the +element that contains the cross-reference element). But setting this parameter +allows the language of the element <emphasis>pointed to</emphasis> to control +the generated text.</para> + +<para>Consider the following example:</para> + +<informalexample> +<programlisting format="linespecific"><para lang="en">See also <xref linkend="chap3"/>.</para> +</programlisting> +</informalexample> + +<para>Suppose that Chapter 3 happens to be written in German. +If <parameter moreinfo="none">l10n.gentext.use.xref.language</parameter> is non-zero, the +resulting text will be something like this:</para> + +<blockquote> +<para>See also Kapital 3.</para> +</blockquote> + +<para>Where the more traditional rendering would be:</para> + +<blockquote> +<para>See also Chapter 3.</para> +</blockquote> </refsect1> </refentry> @@ -4419,7 +6544,7 @@ version="1.0"> <!-- ******************************************************************** - $Id: param.xml,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: param.xml,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -4439,6 +6564,7 @@ <src:fragref linkend="base.dir.frag"/> <src:fragref linkend="biblioentry.item.separator.frag"/> <src:fragref linkend="bibliography.collection.frag"/> +<src:fragref linkend="bibliography.numbered.frag"/> <src:fragref linkend="bridgehead.in.toc.frag"/> <src:fragref linkend="callout.defaultcolumn.frag"/> <src:fragref linkend="callout.graphics.extension.frag"/> @@ -4451,35 +6577,49 @@ <src:fragref linkend="callout.unicode.start.character.frag"/> <src:fragref linkend="callouts.extension.frag"/> <src:fragref linkend="chapter.autolabel.frag"/> -<src:fragref linkend="chunk.datafile.frag"/> <src:fragref linkend="chunk.first.sections.frag"/> <src:fragref linkend="chunk.quietly.frag"/> <src:fragref linkend="chunk.section.depth.frag"/> <src:fragref linkend="chunk.toc.frag"/> +<src:fragref linkend="chunk.tocs.and.lots.frag"/> <src:fragref linkend="citerefentry.link.frag"/> +<src:fragref linkend="collect.xref.targets.frag"/> <src:fragref linkend="css.decoration.frag"/> -<src:fragref linkend="default.encoding.frag"/> +<src:fragref linkend="current.docid.frag"/> +<src:fragref linkend="default.float.class.frag"/> +<src:fragref linkend="default.image.width.frag"/> <src:fragref linkend="default.table.width.frag"/> <src:fragref linkend="draft.watermark.image.frag"/> <src:fragref linkend="ebnf.table.bgcolor.frag"/> <src:fragref linkend="ebnf.table.border.frag"/> <src:fragref linkend="emphasis.propagates.style.frag"/> +<src:fragref linkend="entry.propagates.style.frag"/> <src:fragref linkend="firstterm.only.link.frag"/> +<src:fragref linkend="footer.rule.frag"/> +<src:fragref linkend="footnote.number.format.frag"/> +<src:fragref linkend="footnote.number.symbols.frag"/> <src:fragref linkend="formal.procedures.frag"/> <src:fragref linkend="formal.title.placement.frag"/> <src:fragref linkend="funcsynopsis.decoration.frag"/> <src:fragref linkend="funcsynopsis.style.frag"/> +<src:fragref linkend="funcsynopsis.tabular.threshold.frag"/> <src:fragref linkend="function.parens.frag"/> <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.meta.abstract.frag"/> <src:fragref linkend="generate.section.toc.level.frag"/> <src:fragref linkend="generate.toc.frag"/> <src:fragref linkend="glossary.collection.frag"/> +<src:fragref linkend="glossentry.show.acronym.frag"/> <src:fragref linkend="glossterm.auto.link.frag"/> <src:fragref linkend="graphic.default.extension.frag"/> +<src:fragref linkend="graphicsize.extension.frag"/> +<src:fragref linkend="header.rule.frag"/> <src:fragref linkend="html.base.frag"/> +<src:fragref linkend="html.cellpadding.frag"/> +<src:fragref linkend="html.cellspacing.frag"/> <src:fragref linkend="html.cleanup.frag"/> <src:fragref linkend="html.ext.frag"/> <src:fragref linkend="html.extra.head.links.frag"/> @@ -4489,50 +6629,90 @@ <src:fragref linkend="html.stylesheet.type.frag"/> <src:fragref linkend="htmlhelp.alias.file.frag"/> <src:fragref linkend="htmlhelp.autolabel.frag"/> +<src:fragref linkend="htmlhelp.button.back.frag"/> +<src:fragref linkend="htmlhelp.button.forward.frag"/> +<src:fragref linkend="htmlhelp.button.hideshow.frag"/> +<src:fragref linkend="htmlhelp.button.home.frag"/> +<src:fragref linkend="htmlhelp.button.home.url.frag"/> +<src:fragref linkend="htmlhelp.button.jump1.frag"/> +<src:fragref linkend="htmlhelp.button.jump1.title.frag"/> +<src:fragref linkend="htmlhelp.button.jump1.url.frag"/> +<src:fragref linkend="htmlhelp.button.jump2.frag"/> +<src:fragref linkend="htmlhelp.button.jump2.title.frag"/> +<src:fragref linkend="htmlhelp.button.jump2.url.frag"/> +<src:fragref linkend="htmlhelp.button.locate.frag"/> +<src:fragref linkend="htmlhelp.button.next.frag"/> +<src:fragref linkend="htmlhelp.button.options.frag"/> +<src:fragref linkend="htmlhelp.button.prev.frag"/> +<src:fragref linkend="htmlhelp.button.print.frag"/> +<src:fragref linkend="htmlhelp.button.refresh.frag"/> +<src:fragref linkend="htmlhelp.button.stop.frag"/> +<src:fragref linkend="htmlhelp.button.zoom.frag"/> <src:fragref linkend="htmlhelp.chm.frag"/> <src:fragref linkend="htmlhelp.default.topic.frag"/> <src:fragref linkend="htmlhelp.encoding.frag"/> <src:fragref linkend="htmlhelp.enumerate.images.frag"/> <src:fragref linkend="htmlhelp.force.map.and.alias.frag"/> -<src:fragref linkend="htmlhelp.hhc.frag"/> +<src:fragref linkend="htmlhelp.hhc.binary.frag"/> <src:fragref linkend="htmlhelp.hhc.folders.instead.books.frag"/> +<src:fragref linkend="htmlhelp.hhc.frag"/> <src:fragref linkend="htmlhelp.hhc.section.depth.frag"/> <src:fragref linkend="htmlhelp.hhc.show.root.frag"/> +<src:fragref linkend="htmlhelp.hhk.frag"/> <src:fragref linkend="htmlhelp.hhp.frag"/> <src:fragref linkend="htmlhelp.hhp.tail.frag"/> +<src:fragref linkend="htmlhelp.hhp.window.frag"/> <src:fragref linkend="htmlhelp.map.file.frag"/> +<src:fragref linkend="htmlhelp.only.frag"/> +<src:fragref linkend="htmlhelp.show.advanced.search.frag"/> +<src:fragref linkend="htmlhelp.show.favorities.frag"/> +<src:fragref linkend="htmlhelp.show.menu.frag"/> <src:fragref linkend="htmlhelp.title.frag"/> +<src:fragref linkend="htmlhelp.use.hhk.frag"/> +<src:fragref linkend="ignore.image.scaling.frag"/> <src:fragref linkend="inherit.keywords.frag"/> +<src:fragref linkend="l10n.gentext.default.language.frag"/> +<src:fragref linkend="l10n.gentext.language.frag"/> +<src:fragref linkend="l10n.gentext.use.xref.language.frag"/> <src:fragref linkend="label.from.part.frag"/> <src:fragref linkend="linenumbering.everyNth.frag"/> <src:fragref linkend="linenumbering.extension.frag"/> <src:fragref linkend="linenumbering.separator.frag"/> <src:fragref linkend="linenumbering.width.frag"/> <src:fragref linkend="link.mailto.url.frag"/> +<src:fragref linkend="make.graphic.viewport.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="menuchoice.menu.separator.frag"/> +<src:fragref linkend="menuchoice.separator.frag"/> <src:fragref linkend="navig.graphics.extension.frag"/> <src:fragref linkend="navig.graphics.frag"/> <src:fragref linkend="navig.graphics.path.frag"/> <src:fragref linkend="navig.showtitles.frag"/> +<src:fragref linkend="nominal.image.depth.frag"/> +<src:fragref linkend="nominal.image.width.frag"/> <src:fragref linkend="nominal.table.width.frag"/> +<src:fragref linkend="olink.base.uri.frag"/> +<src:fragref linkend="olink.doctitle.frag"/> <src:fragref linkend="olink.fragid.frag"/> <src:fragref linkend="olink.outline.ext.frag"/> <src:fragref linkend="olink.pubid.frag"/> <src:fragref linkend="olink.resolver.frag"/> <src:fragref linkend="olink.sysid.frag"/> -<src:fragref linkend="output.method.frag"/> +<src:fragref linkend="para.propagates.style.frag"/> <src:fragref linkend="part.autolabel.frag"/> <src:fragref linkend="phrase.propagates.style.frag"/> <src:fragref linkend="pixels.per.inch.frag"/> <src:fragref linkend="points.per.em.frag"/> <src:fragref linkend="preface.autolabel.frag"/> +<src:fragref linkend="preferred.mediaobject.role.frag"/> <src:fragref linkend="process.empty.source.toc.frag"/> <src:fragref linkend="process.source.toc.frag"/> <src:fragref linkend="profile.arch.frag"/> +<src:fragref linkend="profile.attribute.frag"/> <src:fragref linkend="profile.condition.frag"/> <src:fragref linkend="profile.conformance.frag"/> <src:fragref linkend="profile.lang.frag"/> @@ -4541,11 +6721,10 @@ <src:fragref linkend="profile.revisionflag.frag"/> <src:fragref linkend="profile.role.frag"/> <src:fragref linkend="profile.security.frag"/> +<src:fragref linkend="profile.separator.frag"/> <src:fragref linkend="profile.userlevel.frag"/> -<src:fragref linkend="profile.vendor.frag"/> -<src:fragref linkend="profile.attribute.frag"/> <src:fragref linkend="profile.value.frag"/> -<src:fragref linkend="profile.separator.frag"/> +<src:fragref linkend="profile.vendor.frag"/> <src:fragref linkend="punct.honorific.frag"/> <src:fragref linkend="qanda.defaultlabel.frag"/> <src:fragref linkend="qanda.inherit.numeration.frag"/> @@ -4558,7 +6737,6 @@ <src:fragref linkend="rootid.frag"/> <src:fragref linkend="runinhead.default.title.end.punct.frag"/> <src:fragref linkend="runinhead.title.end.punct.frag"/> -<src:fragref linkend="saxon.character.representation.frag"/> <src:fragref linkend="section.autolabel.frag"/> <src:fragref linkend="section.label.includes.component.label.frag"/> <src:fragref linkend="segmentedlist.as.table.frag"/> @@ -4567,23 +6745,37 @@ <src:fragref linkend="show.comments.frag"/> <src:fragref linkend="show.revisionflag.frag"/> <src:fragref linkend="spacing.paras.frag"/> +<src:fragref linkend="suppress.footer.navigation.frag"/> +<src:fragref linkend="suppress.header.navigation.frag"/> <src:fragref linkend="suppress.navigation.frag"/> -<src:fragref linkend="table.border.color.frag"/> -<src:fragref linkend="table.border.style.frag"/> -<src:fragref linkend="table.border.thickness.frag"/> <src:fragref linkend="table.borders.with.css.frag"/> +<src:fragref linkend="table.cell.border.color.frag"/> +<src:fragref linkend="table.cell.border.style.frag"/> +<src:fragref linkend="table.cell.border.thickness.frag"/> +<src:fragref linkend="table.footnote.number.format.frag"/> +<src:fragref linkend="table.footnote.number.symbols.frag"/> +<src:fragref linkend="table.frame.border.color.frag"/> +<src:fragref linkend="table.frame.border.style.frag"/> +<src:fragref linkend="table.frame.border.thickness.frag"/> <src:fragref linkend="tablecolumns.extension.frag"/> -<src:fragref linkend="textinsert.extension.frag"/> +<src:fragref linkend="target.database.document.frag"/> +<src:fragref linkend="targets.filename.frag"/> +<src:fragref linkend="tex.math.delims.frag"/> <src:fragref linkend="tex.math.file.frag"/> <src:fragref linkend="tex.math.in.alt.frag"/> -<src:fragref linkend="tex.math.delims.frag"/> +<src:fragref linkend="textinsert.extension.frag"/> <src:fragref linkend="toc.list.type.frag"/> <src:fragref linkend="toc.section.depth.frag"/> <src:fragref linkend="ulink.target.frag"/> +<src:fragref linkend="use.embed.for.svg.frag"/> <src:fragref linkend="use.extensions.frag"/> <src:fragref linkend="use.id.as.filename.frag"/> +<src:fragref linkend="use.local.olink.style.frag"/> +<src:fragref linkend="use.role.as.xrefstyle.frag"/> +<src:fragref linkend="use.role.for.mediaobject.frag"/> <src:fragref linkend="use.svg.frag"/> <src:fragref linkend="variablelist.as.table.frag"/> +<src:fragref linkend="xref.with.number.and.title.frag"/> </xsl:stylesheet></src:fragment> Index: phpdoc/xsl/docbook/html/param.xsl diff -u phpdoc/xsl/docbook/html/param.xsl:1.1 phpdoc/xsl/docbook/html/param.xsl:1.2 --- phpdoc/xsl/docbook/html/param.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/param.xsl Sun Mar 9 09:56:38 2003 @@ -1,11 +1,10 @@ <?xml version="1.0" encoding="utf-8"?> - <!-- This file is generated from param.xweb; do not edit this file! --> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:src="http://nwalsh.com/xmlns/litprog/fragment" exclude-result-prefixes="src" version="1.0"> <!-- ******************************************************************** - $Id: param.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: param.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -27,6 +26,7 @@ <xsl:param name="base.dir" select="''"/> <xsl:param name="biblioentry.item.separator">. </xsl:param> <xsl:param name="bibliography.collection" select="'http://docbook.sourceforge.net/release/bibliography/bibliography.xml'"/> +<xsl:param name="bibliography.numbered" select="0"/> <xsl:param name="bridgehead.in.toc" select="0"/> <xsl:param name="callout.defaultcolumn" select="'60'"/> <xsl:param name="callout.graphics.extension" select="'.png'"/> @@ -39,40 +39,28 @@ <xsl:param name="callout.unicode.start.character" select="10102"/> <xsl:param name="callouts.extension" select="'1'"/> <xsl:param name="chapter.autolabel" select="1"/> - -<xsl:param name="chunk.datafile" select="'.chunks'"/> - - <xsl:param name="chunk.first.sections" select="0"/> - - <xsl:param name="chunk.quietly" select="0"/> - - <xsl:param name="chunk.section.depth" select="1"/> - - <xsl:param name="chunk.toc" select="''"/> - +<xsl:param name="chunk.tocs.and.lots" select="0"/> <xsl:param name="citerefentry.link" select="'0'"/> -<xsl:param name="css.decoration">1</xsl:param> -<xsl:param name="default.encoding" select="'ISO-8859-1'"/> +<xsl:param name="collect.xref.targets" select="'no'"/> +<xsl:param name="css.decoration" select="1"/> +<xsl:param name="current.docid" select="''"/> +<xsl:param name="default.float.class" select="'before'"/> +<xsl:param name="default.image.width" select="''"/> <xsl:param name="default.table.width" select="''"/> - <xsl:param name="draft.watermark.image" select="'http://docbook.sourceforge.net/release/images/draft.png'"/> - <xsl:param name="ebnf.table.bgcolor" select="'#F5DCB3'"/> <xsl:param name="ebnf.table.border" select="1"/> - <xsl:param name="emphasis.propagates.style" select="1"/> - - +<xsl:param name="entry.propagates.style" select="1"/> <xsl:param name="firstterm.only.link" select="0"/> - - +<xsl:param name="footer.rule" select="1"/> +<xsl:param name="footnote.number.format" select="'1'"/> +<xsl:param name="footnote.number.symbols" select="''"/> <xsl:param name="formal.procedures" select="1"/> - - <xsl:param name="formal.title.placement"> figure before example before @@ -80,250 +68,206 @@ table before procedure before </xsl:param> - <xsl:param name="funcsynopsis.decoration" select="1"/> <xsl:param name="funcsynopsis.style">kr</xsl:param> +<xsl:param name="funcsynopsis.tabular.threshold" select="40"/> <xsl:param name="function.parens">0</xsl:param> - <xsl:param name="generate.id.attributes" select="0"/> - <xsl:param name="generate.index" select="1"/> <xsl:param name="generate.legalnotice.link" select="0"/> <xsl:param name="generate.manifest" select="0"/> +<xsl:param name="generate.meta.abstract" select="1"/> <xsl:param name="generate.section.toc.level" select="0"/> - <xsl:param name="generate.toc"> -appendix toc -article toc -book toc,figure,table,example,equation -chapter toc -part toc -preface toc +appendix toc,title +article/appendix nop +article toc,title +book toc,title,figure,table,example,equation +chapter toc,title +part toc,title +preface toc,title qandadiv toc qandaset toc -reference toc +reference toc,title +sect1 toc +sect2 toc +sect3 toc +sect4 toc +sect5 toc section toc -set toc +set toc,title </xsl:param> - - <xsl:param name="glossary.collection" select="''"/> - +<xsl:param name="glossentry.show.acronym" select="'no'"/> <xsl:param name="glossterm.auto.link" select="'0'"/> <xsl:param name="graphic.default.extension"/> +<xsl:param name="graphicsize.extension" select="1"/> +<xsl:param name="header.rule" select="1"/> <xsl:param name="html.base"/> - +<xsl:param name="html.cellpadding" select="''"/> +<xsl:param name="html.cellspacing" select="''"/> <xsl:param name="html.cleanup" select="1"/> - - <xsl:param name="html.ext" select="'.html'"/> - - -<xsl:param name="html.extra.head.links" select="1"/> - - +<xsl:param name="html.extra.head.links" select="0"/> <xsl:param name="html.longdesc" select="1"/> - - <xsl:param name="html.longdesc.link" select="$html.longdesc"/> - <xsl:param name="html.stylesheet" select="''"/> <xsl:param name="html.stylesheet.type">text/css</xsl:param> - <xsl:param name="htmlhelp.alias.file" select="'alias.h'"/> - - <xsl:param name="htmlhelp.autolabel" select="0"/> - - +<xsl:param name="htmlhelp.button.back" select="1"/> +<xsl:param name="htmlhelp.button.forward" select="0"/> +<xsl:param name="htmlhelp.button.hideshow" select="1"/> +<xsl:param name="htmlhelp.button.home" select="0"/> +<xsl:param name="htmlhelp.button.home.url"/> +<xsl:param name="htmlhelp.button.jump1" select="0"/> +<xsl:param name="htmlhelp.button.jump1.title" select="'User1'"/> +<xsl:param name="htmlhelp.button.jump1.url"/> +<xsl:param name="htmlhelp.button.jump2" select="0"/> +<xsl:param name="htmlhelp.button.jump2.title" select="'User2'"/> +<xsl:param name="htmlhelp.button.jump2.url"/> +<xsl:param name="htmlhelp.button.locate" select="0"/> +<xsl:param name="htmlhelp.button.next" select="1"/> +<xsl:param name="htmlhelp.button.options" select="1"/> +<xsl:param name="htmlhelp.button.prev" select="1"/> +<xsl:param name="htmlhelp.button.print" select="1"/> +<xsl:param name="htmlhelp.button.refresh" select="0"/> +<xsl:param name="htmlhelp.button.stop" select="0"/> +<xsl:param name="htmlhelp.button.zoom" select="0"/> <xsl:param name="htmlhelp.chm" select="'htmlhelp.chm'"/> - - <xsl:param name="htmlhelp.default.topic" select="''"/> - - <xsl:param name="htmlhelp.encoding" select="'iso-8859-1'"/> - - <xsl:param name="htmlhelp.enumerate.images" select="0"/> - - <xsl:param name="htmlhelp.force.map.and.alias" select="0"/> - - -<xsl:param name="htmlhelp.hhc" select="'toc.hhc'"/> - - +<xsl:param name="htmlhelp.hhc.binary" select="1"/> <xsl:param name="htmlhelp.hhc.folders.instead.books" select="1"/> - - +<xsl:param name="htmlhelp.hhc" select="'toc.hhc'"/> <xsl:param name="htmlhelp.hhc.section.depth" select="5"/> - - <xsl:param name="htmlhelp.hhc.show.root" select="1"/> - - +<xsl:param name="htmlhelp.hhk" select="'index.hhk'"/> <xsl:param name="htmlhelp.hhp" select="'htmlhelp.hhp'"/> - - <xsl:param name="htmlhelp.hhp.tail"/> - - +<xsl:param name="htmlhelp.hhp.window" select="'Main'"/> <xsl:param name="htmlhelp.map.file" select="'context.h'"/> - - +<xsl:param name="htmlhelp.only" select="0"/> +<xsl:param name="htmlhelp.show.advanced.search" select="0"/> +<xsl:param name="htmlhelp.show.favorities" select="0"/> +<xsl:param name="htmlhelp.show.menu" select="0"/> <xsl:param name="htmlhelp.title" select="''"/> - +<xsl:param name="htmlhelp.use.hhk" select="0"/> +<xsl:param name="ignore.image.scaling" select="0"/> <xsl:param name="inherit.keywords" select="'1'"/> +<xsl:param name="l10n.gentext.default.language" select="'en'"/> +<xsl:param name="l10n.gentext.language" select="''"/> +<xsl:param name="l10n.gentext.use.xref.language" select="0"/> <xsl:param name="label.from.part" select="'0'"/> <xsl:param name="linenumbering.everyNth" select="'5'"/> <xsl:param name="linenumbering.extension" select="'1'"/> <xsl:param name="linenumbering.separator" select="' '"/> <xsl:param name="linenumbering.width" select="'3'"/> <xsl:param name="link.mailto.url"/> +<xsl:param name="make.graphic.viewport" select="1"/> <xsl:param name="make.single.year.ranges" select="0"/> - <xsl:param name="make.valid.html" select="0"/> - <xsl:param name="make.year.ranges" select="0"/> <xsl:param name="manifest" select="'HTML.manifest'"/> - <xsl:param name="manual.toc" select="''"/> - +<xsl:param name="menuchoice.menu.separator" select="'->'"/> +<xsl:param name="menuchoice.separator" select="'+'"/> <xsl:param name="navig.graphics.extension" select="'.gif'"/> <xsl:param name="navig.graphics" select="0"/> <xsl:param name="navig.graphics.path">images/</xsl:param> <xsl:param name="navig.showtitles">1</xsl:param> +<xsl:param name="nominal.image.depth" select="4 * $pixels.per.inch"/> +<xsl:param name="nominal.image.width" select="6 * $pixels.per.inch"/> <xsl:param name="nominal.table.width" select="'6in'"/> +<xsl:param name="olink.base.uri" select="''"/> +<xsl:param name="olink.doctitle" select="0"/> <xsl:param name="olink.fragid" select="'fragid='"/> <xsl:param name="olink.outline.ext" select="'.olink'"/> <xsl:param name="olink.pubid" select="'pubid='"/> <xsl:param name="olink.resolver" select="'/cgi-bin/olink'"/> <xsl:param name="olink.sysid" select="'sysid='"/> - -<xsl:param name="output.method" select="'html'"/> - +<xsl:param name="para.propagates.style" select="1"/> <xsl:param name="part.autolabel" select="1"/> <xsl:param name="phrase.propagates.style" select="1"/> - <xsl:param name="pixels.per.inch" select="90"/> - - <xsl:param name="points.per.em" select="10"/> - <xsl:param name="preface.autolabel" select="0"/> +<xsl:param name="preferred.mediaobject.role"/> <xsl:param name="process.empty.source.toc" select="0"/> <xsl:param name="process.source.toc" select="0"/> - <xsl:param name="profile.arch" select="''"/> - - +<xsl:param name="profile.attribute" select="''"/> <xsl:param name="profile.condition" select="''"/> - - <xsl:param name="profile.conformance" select="''"/> - - <xsl:param name="profile.lang" select="''"/> - - <xsl:param name="profile.os" select="''"/> - - <xsl:param name="profile.revision" select="''"/> - - <xsl:param name="profile.revisionflag" select="''"/> - - <xsl:param name="profile.role" select="''"/> - - <xsl:param name="profile.security" select="''"/> - - +<xsl:param name="profile.separator" select="';'"/> <xsl:param name="profile.userlevel" select="''"/> - - -<xsl:param name="profile.vendor" select="''"/> - - -<xsl:param name="profile.attribute" select="''"/> - - <xsl:param name="profile.value" select="''"/> - - -<xsl:param name="profile.separator" select="';'"/> - - +<xsl:param name="profile.vendor" select="''"/> <xsl:param name="punct.honorific" select="'.'"/> - <xsl:param name="qanda.defaultlabel">number</xsl:param> <xsl:param name="qanda.inherit.numeration" select="1"/> <xsl:param name="qandadiv.autolabel" select="1"/> <xsl:param name="refentry.generate.name" select="1"/> - <xsl:param name="refentry.generate.title" select="0"/> - <xsl:param name="refentry.separator" select="'1'"/> <xsl:param name="refentry.xref.manvolnum" select="1"/> <xsl:param name="root.filename" select="'index'"/> <xsl:param name="rootid" select="''"/> <xsl:param name="runinhead.default.title.end.punct" select="'.'"/> <xsl:param name="runinhead.title.end.punct" select="'.!?:'"/> -<xsl:param name="saxon.character.representation" select="'entity;decimal'"/> <xsl:param name="section.autolabel" select="0"/> <xsl:param name="section.label.includes.component.label" select="0"/> - <xsl:param name="segmentedlist.as.table" select="0"/> - <xsl:param name="shade.verbatim" select="0"/> - <xsl:attribute-set name="shade.verbatim.style"> <xsl:attribute name="border">0</xsl:attribute> <xsl:attribute name="bgcolor">#E0E0E0</xsl:attribute> </xsl:attribute-set> - <xsl:param name="show.comments">1</xsl:param> <xsl:param name="show.revisionflag">0</xsl:param> <xsl:param name="spacing.paras" select="'0'"/> +<xsl:param name="suppress.footer.navigation">0</xsl:param> +<xsl:param name="suppress.header.navigation">0</xsl:param> <xsl:param name="suppress.navigation">0</xsl:param> - -<xsl:param name="table.border.color" select="'black'"/> - - -<xsl:param name="table.border.style" select="'solid'"/> - - -<xsl:param name="table.border.thickness" select="'0.5pt'"/> - - <xsl:param name="table.borders.with.css" select="0"/> +<xsl:param name="table.cell.border.color" select="''"/> -<xsl:param name="tablecolumns.extension" select="'1'"/> -<xsl:param name="textinsert.extension" select="'1'"/> +<xsl:param name="table.cell.border.style" select="'solid'"/> +<xsl:param name="table.cell.border.thickness" select="'0.5pt'"/> +<xsl:param name="table.footnote.number.format" select="'a'"/> +<xsl:param name="table.footnote.number.symbols" select="''"/> +<xsl:param name="table.frame.border.color" select="''"/> +<xsl:param name="table.frame.border.style" select="'solid'"/> +<xsl:param name="table.frame.border.thickness" select="'0.5pt'"/> +<xsl:param name="tablecolumns.extension" select="'1'"/> +<xsl:param name="target.database.document" select="''"/> +<xsl:param name="targets.filename" select="'target.db'"/> +<xsl:param name="tex.math.delims" select="'1'"/> <xsl:param name="tex.math.file" select="'tex-math-equations.tex'"/> - - <xsl:param name="tex.math.in.alt" select="''"/> - - -<xsl:param name="tex.math.delims" select="'1'"/> - +<xsl:param name="textinsert.extension" select="'1'"/> <xsl:param name="toc.list.type">dl</xsl:param> <xsl:param name="toc.section.depth">2</xsl:param> <xsl:param name="ulink.target" select="'_top'"/> +<xsl:param name="use.embed.for.svg" select="0"/> <xsl:param name="use.extensions" select="'0'"/> <xsl:param name="use.id.as.filename" select="'0'"/> - +<xsl:param name="use.local.olink.style" select="0"/> +<xsl:param name="use.role.as.xrefstyle" select="1"/> +<xsl:param name="use.role.for.mediaobject" select="1"/> <xsl:param name="use.svg" select="1"/> - - <xsl:param name="variablelist.as.table" select="0"/> +<xsl:param name="xref.with.number.and.title" select="1"/> - -</xsl:stylesheet> +</xsl:stylesheet> \ No newline at end of file Index: phpdoc/xsl/docbook/html/param.xweb diff -u phpdoc/xsl/docbook/html/param.xweb:1.1 phpdoc/xsl/docbook/html/param.xweb:1.2 --- phpdoc/xsl/docbook/html/param.xweb:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/param.xweb Sun Mar 9 09:56:38 2003 @@ -7,7 +7,7 @@ <bookinfo> <title>HTML Parameter Reference</title> <releaseinfo role="meta"> -$Id: param.xweb,v 1.1 2002/08/13 15:51:37 goba Exp $ +$Id: param.xweb,v 1.2 2003/03/09 14:56:38 tom Exp $ </releaseinfo> <author> <surname>Walsh</surname> @@ -106,6 +106,7 @@ &linenumbering.width; &tablecolumns.extension; &textinsert.extension; +&graphicsize.extension; &use.extensions; </reference> @@ -133,18 +134,25 @@ &css.decoration; &spacing.paras; &emphasis.propagates.style; +¶.propagates.style; &phrase.propagates.style; +&entry.propagates.style; &html.longdesc; &html.longdesc.link; &make.valid.html; &html.cleanup; &draft.watermark.image; &generate.id.attributes; +&generate.meta.abstract; </reference> <reference><title>XSLT Processing</title> &rootid; &suppress.navigation; +&suppress.header.navigation; +&suppress.footer.navigation; +&header.rule; +&footer.rule; </reference> <reference><title>Meta/*Info</title> @@ -158,6 +166,7 @@ <reference><title>Reference Pages</title> &funcsynopsis.decoration; &funcsynopsis.style; +&funcsynopsis.tabular.threshold; &function.parens; &refentry.generate.name; &refentry.generate.title; @@ -170,9 +179,14 @@ &default.table.width; &nominal.table.width; &table.borders.with.css; -&table.border.style; -&table.border.thickness; -&table.border.color; +&table.cell.border.style; +&table.cell.border.thickness; +&table.cell.border.color; +&table.frame.border.style; +&table.frame.border.thickness; +&table.frame.border.color; +&html.cellspacing; +&html.cellpadding; </reference> <reference><title>QAndASet</title> @@ -181,6 +195,13 @@ </reference> <reference><title>Linking</title> +&target.database.document; +&targets.filename; +&collect.xref.targets; +&olink.base.uri; +&use.local.olink.style; +¤t.docid; +&olink.doctitle; &link.mailto.url; &ulink.target; &olink.fragid; @@ -193,16 +214,17 @@ <reference><title>Bibliography</title> &biblioentry.item.separator; &bibliography.collection; +&bibliography.numbered; </reference> <reference><title>Glossary</title> &glossterm.auto.link; &firstterm.only.link; &glossary.collection; +&glossentry.show.acronym; </reference> <reference><title>Miscellaneous</title> -&graphic.default.extension; &formal.procedures; &formal.title.placement; &runinhead.default.title.end.punct; @@ -220,9 +242,40 @@ &pixels.per.inch; &points.per.em; &use.svg; +&use.role.as.xrefstyle; +&menuchoice.separator; +&menuchoice.menu.separator; +&default.float.class; +&footnote.number.format; +&table.footnote.number.format; +&footnote.number.symbols; +&table.footnote.number.symbols; +&xref.with.number.and.title; +</reference> + +<reference><title>Graphics</title> +&graphic.default.extension; +&default.image.width; +&nominal.image.width; +&nominal.image.depth; +&use.embed.for.svg; +&make.graphic.viewport; +&preferred.mediaobject.role; +&use.role.for.mediaobject; +&ignore.image.scaling; </reference> <reference><title>Chunking</title> +&chunker.output.cdata-section-elements; +&chunker.output.doctype-public; +&chunker.output.doctype-system; +&chunker.output.encoding; +&chunker.output.indent; +&chunker.output.media-type; +&chunker.output.method; +&chunker.output.omit-xml-declaration; +&chunker.output.standalone; +&saxon.character.representation; &html.ext; &html.extra.head.links; &root.filename; @@ -230,13 +283,10 @@ &generate.manifest; &manifest; &chunk.toc; +&chunk.tocs.and.lots; &chunk.section.depth; &chunk.first.sections; &chunk.quietly; -&saxon.character.representation; -&default.encoding; -&output.method; -&chunk.datafile; &navig.graphics; &navig.graphics.extension; &navig.graphics.path; @@ -273,7 +323,9 @@ &htmlhelp.default.topic; &htmlhelp.hhp; &htmlhelp.hhc; +&htmlhelp.hhk; &htmlhelp.hhp.tail; +&htmlhelp.hhp.window; &htmlhelp.enumerate.images; &htmlhelp.force.map.and.alias; &htmlhelp.map.file; @@ -281,7 +333,38 @@ &htmlhelp.hhc.section.depth; &htmlhelp.hhc.show.root; &htmlhelp.hhc.folders.instead.books; +&htmlhelp.hhc.binary; &htmlhelp.title; +&htmlhelp.show.menu; +&htmlhelp.show.advanced.search; +&htmlhelp.show.favorities; +&htmlhelp.button.hideshow; +&htmlhelp.button.back; +&htmlhelp.button.forward; +&htmlhelp.button.stop; +&htmlhelp.button.refresh; +&htmlhelp.button.home; +&htmlhelp.button.home.url; +&htmlhelp.button.options; +&htmlhelp.button.print; +&htmlhelp.button.locate; +&htmlhelp.button.jump1; +&htmlhelp.button.jump1.url; +&htmlhelp.button.jump1.title; +&htmlhelp.button.jump2; +&htmlhelp.button.jump2.url; +&htmlhelp.button.jump2.title; +&htmlhelp.button.next; +&htmlhelp.button.prev; +&htmlhelp.button.zoom; +&htmlhelp.use.hhk; +&htmlhelp.only; +</reference> + +<reference><title>Localization</title> +&l10n.gentext.language; +&l10n.gentext.default.language; +&l10n.gentext.use.xref.language; </reference> <appendix><title>The Stylesheet</title> @@ -298,7 +381,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: param.xweb,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: param.xweb,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -318,6 +401,7 @@ <src:fragref linkend="base.dir.frag"/> <src:fragref linkend="biblioentry.item.separator.frag"/> <src:fragref linkend="bibliography.collection.frag"/> +<src:fragref linkend="bibliography.numbered.frag"/> <src:fragref linkend="bridgehead.in.toc.frag"/> <src:fragref linkend="callout.defaultcolumn.frag"/> <src:fragref linkend="callout.graphics.extension.frag"/> @@ -330,35 +414,49 @@ <src:fragref linkend="callout.unicode.start.character.frag"/> <src:fragref linkend="callouts.extension.frag"/> <src:fragref linkend="chapter.autolabel.frag"/> -<src:fragref linkend="chunk.datafile.frag"/> <src:fragref linkend="chunk.first.sections.frag"/> <src:fragref linkend="chunk.quietly.frag"/> <src:fragref linkend="chunk.section.depth.frag"/> <src:fragref linkend="chunk.toc.frag"/> +<src:fragref linkend="chunk.tocs.and.lots.frag"/> <src:fragref linkend="citerefentry.link.frag"/> +<src:fragref linkend="collect.xref.targets.frag"/> <src:fragref linkend="css.decoration.frag"/> -<src:fragref linkend="default.encoding.frag"/> +<src:fragref linkend="current.docid.frag"/> +<src:fragref linkend="default.float.class.frag"/> +<src:fragref linkend="default.image.width.frag"/> <src:fragref linkend="default.table.width.frag"/> <src:fragref linkend="draft.watermark.image.frag"/> <src:fragref linkend="ebnf.table.bgcolor.frag"/> <src:fragref linkend="ebnf.table.border.frag"/> <src:fragref linkend="emphasis.propagates.style.frag"/> +<src:fragref linkend="entry.propagates.style.frag"/> <src:fragref linkend="firstterm.only.link.frag"/> +<src:fragref linkend="footer.rule.frag"/> +<src:fragref linkend="footnote.number.format.frag"/> +<src:fragref linkend="footnote.number.symbols.frag"/> <src:fragref linkend="formal.procedures.frag"/> <src:fragref linkend="formal.title.placement.frag"/> <src:fragref linkend="funcsynopsis.decoration.frag"/> <src:fragref linkend="funcsynopsis.style.frag"/> +<src:fragref linkend="funcsynopsis.tabular.threshold.frag"/> <src:fragref linkend="function.parens.frag"/> <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.meta.abstract.frag"/> <src:fragref linkend="generate.section.toc.level.frag"/> <src:fragref linkend="generate.toc.frag"/> <src:fragref linkend="glossary.collection.frag"/> +<src:fragref linkend="glossentry.show.acronym.frag"/> <src:fragref linkend="glossterm.auto.link.frag"/> <src:fragref linkend="graphic.default.extension.frag"/> +<src:fragref linkend="graphicsize.extension.frag"/> +<src:fragref linkend="header.rule.frag"/> <src:fragref linkend="html.base.frag"/> +<src:fragref linkend="html.cellpadding.frag"/> +<src:fragref linkend="html.cellspacing.frag"/> <src:fragref linkend="html.cleanup.frag"/> <src:fragref linkend="html.ext.frag"/> <src:fragref linkend="html.extra.head.links.frag"/> @@ -368,50 +466,90 @@ <src:fragref linkend="html.stylesheet.type.frag"/> <src:fragref linkend="htmlhelp.alias.file.frag"/> <src:fragref linkend="htmlhelp.autolabel.frag"/> +<src:fragref linkend="htmlhelp.button.back.frag"/> +<src:fragref linkend="htmlhelp.button.forward.frag"/> +<src:fragref linkend="htmlhelp.button.hideshow.frag"/> +<src:fragref linkend="htmlhelp.button.home.frag"/> +<src:fragref linkend="htmlhelp.button.home.url.frag"/> +<src:fragref linkend="htmlhelp.button.jump1.frag"/> +<src:fragref linkend="htmlhelp.button.jump1.title.frag"/> +<src:fragref linkend="htmlhelp.button.jump1.url.frag"/> +<src:fragref linkend="htmlhelp.button.jump2.frag"/> +<src:fragref linkend="htmlhelp.button.jump2.title.frag"/> +<src:fragref linkend="htmlhelp.button.jump2.url.frag"/> +<src:fragref linkend="htmlhelp.button.locate.frag"/> +<src:fragref linkend="htmlhelp.button.next.frag"/> +<src:fragref linkend="htmlhelp.button.options.frag"/> +<src:fragref linkend="htmlhelp.button.prev.frag"/> +<src:fragref linkend="htmlhelp.button.print.frag"/> +<src:fragref linkend="htmlhelp.button.refresh.frag"/> +<src:fragref linkend="htmlhelp.button.stop.frag"/> +<src:fragref linkend="htmlhelp.button.zoom.frag"/> <src:fragref linkend="htmlhelp.chm.frag"/> <src:fragref linkend="htmlhelp.default.topic.frag"/> <src:fragref linkend="htmlhelp.encoding.frag"/> <src:fragref linkend="htmlhelp.enumerate.images.frag"/> <src:fragref linkend="htmlhelp.force.map.and.alias.frag"/> -<src:fragref linkend="htmlhelp.hhc.frag"/> +<src:fragref linkend="htmlhelp.hhc.binary.frag"/> <src:fragref linkend="htmlhelp.hhc.folders.instead.books.frag"/> +<src:fragref linkend="htmlhelp.hhc.frag"/> <src:fragref linkend="htmlhelp.hhc.section.depth.frag"/> <src:fragref linkend="htmlhelp.hhc.show.root.frag"/> +<src:fragref linkend="htmlhelp.hhk.frag"/> <src:fragref linkend="htmlhelp.hhp.frag"/> <src:fragref linkend="htmlhelp.hhp.tail.frag"/> +<src:fragref linkend="htmlhelp.hhp.window.frag"/> <src:fragref linkend="htmlhelp.map.file.frag"/> +<src:fragref linkend="htmlhelp.only.frag"/> +<src:fragref linkend="htmlhelp.show.advanced.search.frag"/> +<src:fragref linkend="htmlhelp.show.favorities.frag"/> +<src:fragref linkend="htmlhelp.show.menu.frag"/> <src:fragref linkend="htmlhelp.title.frag"/> +<src:fragref linkend="htmlhelp.use.hhk.frag"/> +<src:fragref linkend="ignore.image.scaling.frag"/> <src:fragref linkend="inherit.keywords.frag"/> +<src:fragref linkend="l10n.gentext.default.language.frag"/> +<src:fragref linkend="l10n.gentext.language.frag"/> +<src:fragref linkend="l10n.gentext.use.xref.language.frag"/> <src:fragref linkend="label.from.part.frag"/> <src:fragref linkend="linenumbering.everyNth.frag"/> <src:fragref linkend="linenumbering.extension.frag"/> <src:fragref linkend="linenumbering.separator.frag"/> <src:fragref linkend="linenumbering.width.frag"/> <src:fragref linkend="link.mailto.url.frag"/> +<src:fragref linkend="make.graphic.viewport.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="menuchoice.menu.separator.frag"/> +<src:fragref linkend="menuchoice.separator.frag"/> <src:fragref linkend="navig.graphics.extension.frag"/> <src:fragref linkend="navig.graphics.frag"/> <src:fragref linkend="navig.graphics.path.frag"/> <src:fragref linkend="navig.showtitles.frag"/> +<src:fragref linkend="nominal.image.depth.frag"/> +<src:fragref linkend="nominal.image.width.frag"/> <src:fragref linkend="nominal.table.width.frag"/> +<src:fragref linkend="olink.base.uri.frag"/> +<src:fragref linkend="olink.doctitle.frag"/> <src:fragref linkend="olink.fragid.frag"/> <src:fragref linkend="olink.outline.ext.frag"/> <src:fragref linkend="olink.pubid.frag"/> <src:fragref linkend="olink.resolver.frag"/> <src:fragref linkend="olink.sysid.frag"/> -<src:fragref linkend="output.method.frag"/> +<src:fragref linkend="para.propagates.style.frag"/> <src:fragref linkend="part.autolabel.frag"/> <src:fragref linkend="phrase.propagates.style.frag"/> <src:fragref linkend="pixels.per.inch.frag"/> <src:fragref linkend="points.per.em.frag"/> <src:fragref linkend="preface.autolabel.frag"/> +<src:fragref linkend="preferred.mediaobject.role.frag"/> <src:fragref linkend="process.empty.source.toc.frag"/> <src:fragref linkend="process.source.toc.frag"/> <src:fragref linkend="profile.arch.frag"/> +<src:fragref linkend="profile.attribute.frag"/> <src:fragref linkend="profile.condition.frag"/> <src:fragref linkend="profile.conformance.frag"/> <src:fragref linkend="profile.lang.frag"/> @@ -420,11 +558,10 @@ <src:fragref linkend="profile.revisionflag.frag"/> <src:fragref linkend="profile.role.frag"/> <src:fragref linkend="profile.security.frag"/> +<src:fragref linkend="profile.separator.frag"/> <src:fragref linkend="profile.userlevel.frag"/> -<src:fragref linkend="profile.vendor.frag"/> -<src:fragref linkend="profile.attribute.frag"/> <src:fragref linkend="profile.value.frag"/> -<src:fragref linkend="profile.separator.frag"/> +<src:fragref linkend="profile.vendor.frag"/> <src:fragref linkend="punct.honorific.frag"/> <src:fragref linkend="qanda.defaultlabel.frag"/> <src:fragref linkend="qanda.inherit.numeration.frag"/> @@ -437,7 +574,6 @@ <src:fragref linkend="rootid.frag"/> <src:fragref linkend="runinhead.default.title.end.punct.frag"/> <src:fragref linkend="runinhead.title.end.punct.frag"/> -<src:fragref linkend="saxon.character.representation.frag"/> <src:fragref linkend="section.autolabel.frag"/> <src:fragref linkend="section.label.includes.component.label.frag"/> <src:fragref linkend="segmentedlist.as.table.frag"/> @@ -446,23 +582,37 @@ <src:fragref linkend="show.comments.frag"/> <src:fragref linkend="show.revisionflag.frag"/> <src:fragref linkend="spacing.paras.frag"/> +<src:fragref linkend="suppress.footer.navigation.frag"/> +<src:fragref linkend="suppress.header.navigation.frag"/> <src:fragref linkend="suppress.navigation.frag"/> -<src:fragref linkend="table.border.color.frag"/> -<src:fragref linkend="table.border.style.frag"/> -<src:fragref linkend="table.border.thickness.frag"/> <src:fragref linkend="table.borders.with.css.frag"/> +<src:fragref linkend="table.cell.border.color.frag"/> +<src:fragref linkend="table.cell.border.style.frag"/> +<src:fragref linkend="table.cell.border.thickness.frag"/> +<src:fragref linkend="table.footnote.number.format.frag"/> +<src:fragref linkend="table.footnote.number.symbols.frag"/> +<src:fragref linkend="table.frame.border.color.frag"/> +<src:fragref linkend="table.frame.border.style.frag"/> +<src:fragref linkend="table.frame.border.thickness.frag"/> <src:fragref linkend="tablecolumns.extension.frag"/> -<src:fragref linkend="textinsert.extension.frag"/> +<src:fragref linkend="target.database.document.frag"/> +<src:fragref linkend="targets.filename.frag"/> +<src:fragref linkend="tex.math.delims.frag"/> <src:fragref linkend="tex.math.file.frag"/> <src:fragref linkend="tex.math.in.alt.frag"/> -<src:fragref linkend="tex.math.delims.frag"/> +<src:fragref linkend="textinsert.extension.frag"/> <src:fragref linkend="toc.list.type.frag"/> <src:fragref linkend="toc.section.depth.frag"/> <src:fragref linkend="ulink.target.frag"/> +<src:fragref linkend="use.embed.for.svg.frag"/> <src:fragref linkend="use.extensions.frag"/> <src:fragref linkend="use.id.as.filename.frag"/> +<src:fragref linkend="use.local.olink.style.frag"/> +<src:fragref linkend="use.role.as.xrefstyle.frag"/> +<src:fragref linkend="use.role.for.mediaobject.frag"/> <src:fragref linkend="use.svg.frag"/> <src:fragref linkend="variablelist.as.table.frag"/> +<src:fragref linkend="xref.with.number.and.title.frag"/> </xsl:stylesheet> </src:fragment> Index: phpdoc/xsl/docbook/html/pi.xsl diff -u phpdoc/xsl/docbook/html/pi.xsl:1.1 phpdoc/xsl/docbook/html/pi.xsl:1.2 --- phpdoc/xsl/docbook/html/pi.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/pi.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: pi.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: pi.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. Index: phpdoc/xsl/docbook/html/profile-chunk.xsl diff -u phpdoc/xsl/docbook/html/profile-chunk.xsl:1.1 phpdoc/xsl/docbook/html/profile-chunk.xsl:1.2 --- phpdoc/xsl/docbook/html/profile-chunk.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/profile-chunk.xsl Sun Mar 9 09:56:38 2003 @@ -1,20 +1,108 @@ <?xml version="1.0" encoding="US-ASCII"?> <!--This file was created automatically by xml2profile--> <!--from the DocBook XSL stylesheets. Do not edit this file.--> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" xmlns:exslt="http://exslt.org/common" exslt:dummy="dummy" extension-element-prefixes="exslt" version="1.0" exclude-result-prefixes="doc exslt"> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:exsl="http://exslt.org/common" xmlns:exslt="http://exslt.org/common" exslt:dummy="dummy" extension-element-prefixes="exslt" version="1.0" exclude-result-prefixes="exsl exslt"> <xsl:import href="docbook.xsl"/> <xsl:import href="chunk-common.xsl"/> +<xsl:include href="manifest.xsl"/> + +<xsl:param name="onechunk" select="0"/> +<xsl:param name="refentry.separator" select="0"/> +<xsl:param name="chunk.fast" select="0"/> + +<xsl:key name="genid" match="*" use="generate-id()"/> + +<!-- ==================================================================== --> + +<xsl:variable name="chunk.hierarchy"> + <xsl:if test="$chunk.fast != 0"> + <xsl:choose> + <xsl:when test="function-available('exsl:node-set')"> + <xsl:message>Computing chunks...</xsl:message> + <xsl:apply-templates select="/*" mode="find.chunks"/> + </xsl:when> + <xsl:otherwise> + <xsl:message> + <xsl:text>Fast chunking requires exsl:node-set(). </xsl:text> + <xsl:text>Using "slow" chunking.</xsl:text> + </xsl:message> + </xsl:otherwise> + </xsl:choose> + </xsl:if> +</xsl:variable> + +<xsl:template match="*" mode="find.chunks"> + <xsl:variable name="chunk"> + <xsl:call-template name="chunk"/> + </xsl:variable> + + <xsl:choose> + <xsl:when test="$chunk != 0"> + <div class="{local-name(.)}" id="{generate-id()}"> + <xsl:apply-templates select="*" mode="find.chunks"/> + </div> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="*" mode="find.chunks"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> <!-- ==================================================================== --> <xsl:template name="process-chunk-element"> + <xsl:param name="content"> + <xsl:apply-imports/> + </xsl:param> + <xsl:choose> - <xsl:when test="$chunk.first.sections = 0"> - <xsl:call-template name="chunk-first-section-with-parent"/> + <xsl:when test="$chunk.fast != 0 and function-available('exsl:node-set')"> + <xsl:variable name="chunks" select="exsl:node-set($chunk.hierarchy)//div"/> + <xsl:variable name="genid" select="generate-id()"/> + + <xsl:variable name="div" select="$chunks[@id=$genid]"/> + + <xsl:variable name="prevdiv" select="($div/preceding-sibling::div|$div/preceding::div|$div/parent::div)[last()]"/> + <xsl:variable name="prev" select="key('genid', $prevdiv/@id)"/> + + <xsl:variable name="nextdiv" select="($div/following-sibling::div|$div/following::div|$div/div)[1]"/> + <xsl:variable name="next" select="key('genid', $nextdiv/@id)"/> + + <xsl:choose> + <xsl:when test="$onechunk != 0 and parent::*"> + <xsl:copy-of select="$content"/> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="process-chunk"> + <xsl:with-param name="prev" select="$prev"/> + <xsl:with-param name="next" select="$next"/> + <xsl:with-param name="content" select="$content"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> </xsl:when> <xsl:otherwise> - <xsl:call-template name="chunk-all-sections"/> + <xsl:choose> + <xsl:when test="$onechunk != 0 and not(parent::*)"> + <xsl:call-template name="chunk-all-sections"> + <xsl:with-param name="content" select="$content"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$onechunk != 0"> + <xsl:copy-of select="$content"/> + </xsl:when> + <xsl:when test="$chunk.first.sections = 0"> + <xsl:call-template name="chunk-first-section-with-parent"> + <xsl:with-param name="content" select="$content"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="chunk-all-sections"> + <xsl:with-param name="content" select="$content"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> </xsl:otherwise> </xsl:choose> </xsl:template> @@ -22,6 +110,9 @@ <xsl:template name="process-chunk"> <xsl:param name="prev" select="."/> <xsl:param name="next" select="."/> + <xsl:param name="content"> + <xsl:apply-imports/> + </xsl:param> <xsl:variable name="ischunk"> <xsl:call-template name="chunk"/> @@ -54,33 +145,64 @@ <xsl:call-template name="chunk-element-content"> <xsl:with-param name="prev" select="$prev"/> <xsl:with-param name="next" select="$next"/> + <xsl:with-param name="content" select="$content"/> </xsl:call-template> </xsl:with-param> + <xsl:with-param name="quiet" select="$chunk.quietly"/> </xsl:call-template> </xsl:template> <xsl:template name="chunk-first-section-with-parent"> + <xsl:param name="content"> + <xsl:apply-imports/> + </xsl:param> + <!-- These xpath expressions are really hairy. The trick is to pick sections --> <!-- that are not first children and are not the children of first children --> - <xsl:variable name="prev" select="(preceding::book[1] |preceding::preface[1] |preceding::chapter[1] |preceding::appendix[1] |preceding::part[1] |preceding::reference[1] |preceding::refentry[1] |preceding::colophon[1] |preceding::sect1[$chunk.section.depth > 0 and preceding-sibling::sect1][1] |preceding::sect2[$chunk.section.depth > 1 and preceding-sibling::sect2 and parent::sect1[preceding-sibling::sect1]][1] |preceding::sect3[$chunk.section.depth > 2 and preceding-sibling::sect3 and parent::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |preceding::sect4[$chunk.section.depth > 3 and preceding-sibling::sect4 and parent::sect3[preceding-sibling::sect2] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |preceding::sect5[$chunk.section.depth > 4 and preceding-sibling::sect5 and parent::sect4[preceding-sibling::sect4] and ancestor::sect3[preceding-sibling::sect3] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |preceding::section[$chunk.section.depth > count(ancestor::section) and preceding-sibling::section and not(ancestor::section[not(preceding-sibling::section)])][1] |preceding::article[1] |preceding::bibliography[1] |preceding::glossary[1] |preceding::index[1] |preceding::setindex[1] |ancestor::set |ancestor::book[1] |ancestor::preface[1] |ancestor::chapter[1] |ancestor::appendix[1] |ancestor::sect1[$chunk.section.depth > 0 and preceding-sibling::sect1][1] |ancestor::sect2[$chunk.section.depth > 1 and preceding-sibling::sect2 and parent::sect1[preceding-sibling::sect1]][1] |ancestor::sect3[$chunk.section.depth > 2 and preceding-sibling::sect3 and parent::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |ancestor::sect4[$chunk.section.depth > 3 and preceding-sibling::sect4 and parent::sect3[preceding-sibling::sect2] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |ancestor::sect5[$chunk.section.depth > 4 and preceding-sibling::sect5 and parent::sect4[preceding-sibling::sect4] and ancestor::sect3[preceding-sibling::sect3] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |ancestor::section[$chunk.section.depth > count(ancestor::section) and not(ancestor::section[not(preceding-sibling::section)])][1] |ancestor::part[1] |ancestor::reference[1] |ancestor::article[1])[last()]"/> + <!-- Break these variables into pieces to work around + http://nagoya.apache.org/bugzilla/show_bug.cgi?id=6063 --> + + <xsl:variable name="prev-v1" select="(ancestor::sect1[$chunk.section.depth > 0 and preceding-sibling::sect1][1] |ancestor::sect2[$chunk.section.depth > 1 and preceding-sibling::sect2 and parent::sect1[preceding-sibling::sect1]][1] |ancestor::sect3[$chunk.section.depth > 2 and preceding-sibling::sect3 and parent::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |ancestor::sect4[$chunk.section.depth > 3 and preceding-sibling::sect4 and parent::sect3[preceding-sibling::sect2] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |ancestor::sect5[$chunk.section.depth > 4 and preceding-sibling::sect5 and parent::sect4[preceding-sibling::sect4] and ancestor::sect3[preceding-sibling::sect3] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |ancestor::section[$chunk.section.depth > count(ancestor::section) and not(ancestor::section[not(preceding-sibling::section)])][1])[last()]"/> + + <xsl:variable name="prev-v2" select="(preceding::sect1[$chunk.section.depth > 0 and preceding-sibling::sect1][1] |preceding::sect2[$chunk.section.depth > 1 and preceding-sibling::sect2 and parent::sect1[preceding-sibling::sect1]][1] |preceding::sect3[$chunk.section.depth > 2 and preceding-sibling::sect3 and parent::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |preceding::sect4[$chunk.section.depth > 3 and preceding-sibling::sect4 and parent::sect3[preceding-sibling::sect2] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |preceding::sect5[$chunk.section.depth > 4 and preceding-sibling::sect5 and parent::sect4[preceding-sibling::sect4] and ancestor::sect3[preceding-sibling::sect3] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |preceding::section[$chunk.section.depth > count(ancestor::section) and preceding-sibling::section and not(ancestor::section[not(preceding-sibling::section)])][1])[last()]"/> - <xsl:variable name="next" select="(following::book[1] |following::preface[1] |following::chapter[1] |following::appendix[1] |following::part[1] |following::reference[1] |following::refentry[1] |following::colophon[1] |following::sect1[$chunk.section.depth > 0 and preceding-sibling::sect1][1] |following::sect2[$chunk.section.depth > 1 and preceding-sibling::sect2 and parent::sect1[preceding-sibling::sect1]][1] |following::sect3[$chunk.section.depth > 2 and preceding-sibling::sect3 and parent::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |following::sect4[$chunk.section.depth > 3 and preceding-sibling::sect4 and parent::sect3[preceding-sibling::sect2] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |following::sect5[$chunk.section.depth > 4 and preceding-sibling::sect5 and parent::sect4[preceding-sibling::sect4] and ancestor::sect3[preceding-sibling::sect3] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |following::section[$chunk.section.depth > count(ancestor::section) and preceding-sibling::section and not(ancestor::section[not(preceding-sibling::section)])][1] |following::bibliography[1] |following::glossary[1] |following::index[1] |following::article[1] |following::setindex[1] |descendant::book[1] |descendant::preface[1] |descendant::chapter[1] |descendant::appendix[1] |descendant::article[1] |descendant::bibliography[1] |descendant::glossary[1] |descendant::index[1] |descendant::colophon[1] |descendant::setindex[1] |descendant::part[1] |descendant::reference[1] |descendant::refentry[1] |descendant::sect1[$chunk.section.depth > 0 and preceding-sibling::sect1][1] |descendant::sect2[$chunk.section.depth > 1 and preceding-sibling::sect2 and parent::sect1[preceding-sibling::sect1]][1] |descendant::sect3[$chunk.section.depth > 2 and preceding-sibling::sect3 and parent::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |descendant::sect4[$chunk.section.depth > 3 and preceding-sibling::sect4 and parent::sect3[preceding-sibling::sect2] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |descendant::sect5[$chunk.section.depth > 4 and preceding-sibling::sect5 and parent::sect4[preceding-sibling::sect4] and ancestor::sect3[preceding-sibling::sect3] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |descendant::section[$chunk.section.depth > count(ancestor::section) and preceding-sibling::section and not(ancestor::section[not(preceding-sibling::section)])])[1] "/> + <xsl:variable name="prev" select="(preceding::book[1] |preceding::preface[1] |preceding::chapter[1] |preceding::appendix[1] |preceding::part[1] |preceding::reference[1] |preceding::refentry[1] |preceding::colophon[1] |preceding::article[1] |preceding::bibliography[1] |preceding::glossary[1] |preceding::index[1] |preceding::setindex[1] |ancestor::set |ancestor::book[1] |ancestor::preface[1] |ancestor::chapter[1] |ancestor::appendix[1] |ancestor::part[1] |ancestor::reference[1] |ancestor::article[1] |$prev-v1 |$prev-v2)[last()]"/> + + <xsl:variable name="next-v1" select="(following::sect1[$chunk.section.depth > 0 and preceding-sibling::sect1][1] |following::sect2[$chunk.section.depth > 1 and preceding-sibling::sect2 and parent::sect1[preceding-sibling::sect1]][1] |following::sect3[$chunk.section.depth > 2 and preceding-sibling::sect3 and parent::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |following::sect4[$chunk.section.depth > 3 and preceding-sibling::sect4 and parent::sect3[preceding-sibling::sect2] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |following::sect5[$chunk.section.depth > 4 and preceding-sibling::sect5 and parent::sect4[preceding-sibling::sect4] and ancestor::sect3[preceding-sibling::sect3] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |following::section[$chunk.section.depth > count(ancestor::section) and preceding-sibling::section and not(ancestor::section[not(preceding-sibling::section)])][1])[1]"/> + + <xsl:variable name="next-v2" select="(descendant::sect1[$chunk.section.depth > 0 and preceding-sibling::sect1][1] |descendant::sect2[$chunk.section.depth > 1 and preceding-sibling::sect2 and parent::sect1[preceding-sibling::sect1]][1] |descendant::sect3[$chunk.section.depth > 2 and preceding-sibling::sect3 and parent::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |descendant::sect4[$chunk.section.depth > 3 and preceding-sibling::sect4 and parent::sect3[preceding-sibling::sect2] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |descendant::sect5[$chunk.section.depth > 4 and preceding-sibling::sect5 and parent::sect4[preceding-sibling::sect4] and ancestor::sect3[preceding-sibling::sect3] and ancestor::sect2[preceding-sibling::sect2] and ancestor::sect1[preceding-sibling::sect1]][1] |descendant::section[$chunk.section.depth > count(ancestor::section) and preceding-sibling::section and not(ancestor::section[not(preceding-sibling::section)])])[1]"/> + + <xsl:variable name="next" select="(following::book[1] |following::preface[1] |following::chapter[1] |following::appendix[1] |following::part[1] |following::reference[1] |following::refentry[1] |following::colophon[1] |following::bibliography[1] |following::glossary[1] |following::index[1] |following::article[1] |following::setindex[1] |descendant::book[1] |descendant::preface[1] |descendant::chapter[1] |descendant::appendix[1] |descendant::article[1] |descendant::bibliography[1] |descendant::glossary[1] |descendant::index[1] |descendant::colophon[1] |descendant::setindex[1] |descendant::part[1] |descendant::reference[1] |descendant::refentry[1] |$next-v1 |$next-v2)[1]"/> <xsl:call-template name="process-chunk"> <xsl:with-param name="prev" select="$prev"/> <xsl:with-param name="next" select="$next"/> + <xsl:with-param name="content" select="$content"/> </xsl:call-template> </xsl:template> <xsl:template name="chunk-all-sections"> - <xsl:variable name="prev" select="(preceding::book[1] |preceding::preface[1] |preceding::chapter[1] |preceding::appendix[1] |preceding::part[1] |preceding::reference[1] |preceding::refentry[1] |preceding::colophon[1] |preceding::sect1[$chunk.section.depth > 0][1] |preceding::sect2[$chunk.section.depth > 1][1] |preceding::sect3[$chunk.section.depth > 2][1] |preceding::sect4[$chunk.section.depth > 3][1] |preceding::sect5[$chunk.section.depth > 4][1] |preceding::section[$chunk.section.depth > count(ancestor::section)][1] |preceding::article[1] |preceding::bibliography[1] |preceding::glossary[1] |preceding::index[1] |preceding::setindex[1] |ancestor::set |ancestor::book[1] |ancestor::preface[1] |ancestor::chapter[1] |ancestor::appendix[1] |ancestor::part[1] |ancestor::reference[1] |ancestor::article[1] |ancestor::sect1[$chunk.section.depth > 0][1] |ancestor::sect2[$chunk.section.depth > 1][1] |ancestor::sect3[$chunk.section.depth > 2][1] |ancestor::sect4[$chunk.section.depth > 3][1] |ancestor::sect5[$chunk.section.depth > 4][1] |ancestor::section[$chunk.section.depth > count(ancestor::section)][1])[last()]"/> + <xsl:param name="content"> + <xsl:apply-imports/> + </xsl:param> + + <xsl:variable name="prev-v1" select="(preceding::sect1[$chunk.section.depth > 0][1] |preceding::sect2[$chunk.section.depth > 1][1] |preceding::sect3[$chunk.section.depth > 2][1] |preceding::sect4[$chunk.section.depth > 3][1] |preceding::sect5[$chunk.section.depth > 4][1] |preceding::section[$chunk.section.depth > count(ancestor::section)][1])[last()]"/> + + <xsl:variable name="prev-v2" select="(ancestor::sect1[$chunk.section.depth > 0][1] |ancestor::sect2[$chunk.section.depth > 1][1] |ancestor::sect3[$chunk.section.depth > 2][1] |ancestor::sect4[$chunk.section.depth > 3][1] |ancestor::sect5[$chunk.section.depth > 4][1] |ancestor::section[$chunk.section.depth > count(ancestor::section)][1])[last()]"/> - <xsl:variable name="next" select="(following::book[1] |following::preface[1] |following::chapter[1] |following::appendix[1] |following::part[1] |following::reference[1] |following::refentry[1] |following::colophon[1] |following::sect1[$chunk.section.depth > 0][1] |following::sect2[$chunk.section.depth > 1][1] |following::sect3[$chunk.section.depth > 2][1] |following::sect4[$chunk.section.depth > 3][1] |following::sect5[$chunk.section.depth > 4][1] |following::section[$chunk.section.depth > count(ancestor::section)][1] |following::bibliography[1] |following::glossary[1] |following::index[1] |following::article[1] |following::setindex[1] |descendant::book[1] |descendant::preface[1] |descendant::chapter[1] |descendant::appendix[1] |descendant::article[1] |descendant::bibliography[1] |descendant::glossary[1] |descendant::index[1] |descendant::colophon[1] |descendant::setindex[1] |descendant::part[1] |descendant::reference[1] |descendant::refentry[1] |descendant::sect1[$chunk.section.depth > 0][1] |descendant::sect2[$chunk.section.depth > 1][1] |descendant::sect3[$chunk.section.depth > 2][1] |descendant::sect4[$chunk.section.depth > 3][1] |descendant::sect5[$chunk.section.depth > 4][1] |descendant::section[$chunk.section.depth > count(ancestor::section)][1])[1]"/> + <xsl:variable name="prev" select="(preceding::book[1] |preceding::preface[1] |preceding::chapter[1] |preceding::appendix[1] |preceding::part[1] |preceding::reference[1] |preceding::refentry[1] |preceding::colophon[1] |preceding::article[1] |preceding::bibliography[1] |preceding::glossary[1] |preceding::index[1] |preceding::setindex[1] |ancestor::set |ancestor::book[1] |ancestor::preface[1] |ancestor::chapter[1] |ancestor::appendix[1] |ancestor::part[1] |ancestor::reference[1] |ancestor::article[1] |$prev-v1 |$prev-v2)[last()]"/> + + <xsl:variable name="next-v1" select="(following::sect1[$chunk.section.depth > 0][1] |following::sect2[$chunk.section.depth > 1][1] |following::sect3[$chunk.section.depth > 2][1] |following::sect4[$chunk.section.depth > 3][1] |following::sect5[$chunk.section.depth > 4][1] |following::section[$chunk.section.depth > count(ancestor::section)][1])[1]"/> + + <xsl:variable name="next-v2" select="(descendant::sect1[$chunk.section.depth > 0][1] |descendant::sect2[$chunk.section.depth > 1][1] |descendant::sect3[$chunk.section.depth > 2][1] |descendant::sect4[$chunk.section.depth > 3][1] |descendant::sect5[$chunk.section.depth > 4][1] |descendant::section[$chunk.section.depth > count(ancestor::section)][1])[1]"/> + + <xsl:variable name="next" select="(following::book[1] |following::preface[1] |following::chapter[1] |following::appendix[1] |following::part[1] |following::reference[1] |following::refentry[1] |following::colophon[1] |following::bibliography[1] |following::glossary[1] |following::index[1] |following::article[1] |following::setindex[1] |descendant::book[1] |descendant::preface[1] |descendant::chapter[1] |descendant::appendix[1] |descendant::article[1] |descendant::bibliography[1] |descendant::glossary[1] |descendant::index[1] |descendant::colophon[1] |descendant::setindex[1] |descendant::part[1] |descendant::reference[1] |descendant::refentry[1] |$next-v1 |$next-v2)[1]"/> <xsl:call-template name="process-chunk"> <xsl:with-param name="prev" select="$prev"/> <xsl:with-param name="next" select="$next"/> + <xsl:with-param name="content" select="$content"/> </xsl:call-template> </xsl:template> @@ -98,17 +220,35 @@ </xsl:message> </xsl:when> <xsl:otherwise> - <xsl:apply-templates select="$profiled-nodes//*[@id=$rootid]"/> - <xsl:if test="$tex.math.in.alt != ''"> - <xsl:apply-templates select="$profiled-nodes//*[@id=$rootid]" mode="collect.tex.math"/> + <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="$profiled-nodes//*[@id=$rootid]" mode="process.root"/> + <xsl:if test="$tex.math.in.alt != ''"> + <xsl:apply-templates select="$profiled-nodes//*[@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:apply-templates select="$profiled-nodes" mode="process.root"/> - <xsl:if test="$tex.math.in.alt != ''"> - <xsl:apply-templates select="$profiled-nodes" mode="collect.tex.math"/> + <xsl:if test="$collect.xref.targets = 'yes' or $collect.xref.targets = 'only'"> + <xsl:apply-templates select="$profiled-nodes" mode="collect.targets"/> + </xsl:if> + <xsl:if test="$collect.xref.targets != 'only'"> + <xsl:apply-templates select="$profiled-nodes" mode="process.root"/> + <xsl:if test="$tex.math.in.alt != ''"> + <xsl:apply-templates select="$profiled-nodes" mode="collect.tex.math"/> + </xsl:if> + <xsl:if test="$generate.manifest != 0"> + <xsl:call-template name="generate.manifest"/> + </xsl:if> </xsl:if> </xsl:otherwise> </xsl:choose> @@ -118,8 +258,17 @@ <xsl:apply-templates select="."/> </xsl:template> +<!-- ====================================================================== --> + <xsl:template match="set|book|part|preface|chapter|appendix |article |reference|refentry |book/glossary|article/glossary |book/bibliography|article/bibliography |colophon"> - <xsl:call-template name="process-chunk-element"/> + <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"> @@ -151,6 +300,84 @@ <!-- ==================================================================== --> +<xsl:template name="make.lots"> + <xsl:param name="toc.params" select="''"/> + <xsl:param name="toc"/> + + <xsl:variable name="lots"> + <xsl:if test="contains($toc.params, 'toc')"> + <xsl:copy-of select="$toc"/> + </xsl:if> + + <xsl:if test="contains($toc.params, 'figure')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'figure'"/> + <xsl:with-param name="nodes" select=".//figure"/> + </xsl:call-template> + </xsl:if> + + <xsl:if test="contains($toc.params, 'table')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'table'"/> + <xsl:with-param name="nodes" select=".//table"/> + </xsl:call-template> + </xsl:if> + + <xsl:if test="contains($toc.params, 'example')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'example'"/> + <xsl:with-param name="nodes" select=".//example"/> + </xsl:call-template> + </xsl:if> + + <xsl:if test="contains($toc.params, 'equation')"> + <xsl:call-template name="list.of.titles"> + <xsl:with-param name="titles" select="'equation'"/> + <xsl:with-param name="nodes" select=".//equation[title]"/> + </xsl:call-template> + </xsl:if> + </xsl:variable> + + <xsl:if test="string($lots) != ''"> + <xsl:choose> + <xsl:when test="$chunk.tocs.and.lots != 0 and not(parent::*)"> + <xsl:call-template name="write.chunk"> + <xsl:with-param name="filename"> + <xsl:call-template name="make-relative-filename"> + <xsl:with-param name="base.dir" select="$base.dir"/> + <xsl:with-param name="base.name"> + <xsl:call-template name="dbhtml-dir"/> + <xsl:apply-templates select="." mode="recursive-chunk-filename"/> + <xsl:text>-toc</xsl:text> + <xsl:value-of select="$html.ext"/> + </xsl:with-param> + </xsl:call-template> + </xsl:with-param> + <xsl:with-param name="content"> + <xsl:call-template name="chunk-element-content"> + <xsl:with-param name="prev" select="/foo"/> + <xsl:with-param name="next" select="/foo"/> + <xsl:with-param name="nav.context" select="'toc'"/> + <xsl:with-param name="content"> + <h1> + <xsl:apply-templates select="." mode="object.title.markup"/> + </h1> + <xsl:copy-of select="$lots"/> + </xsl:with-param> + </xsl:call-template> + </xsl:with-param> + <xsl:with-param name="quiet" select="$chunk.quietly"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:copy-of select="$lots"/> + </xsl:otherwise> + </xsl:choose> + </xsl:if> +</xsl:template> + +<!-- ==================================================================== --> + <xsl:template name="in.other.chunk"> <xsl:param name="chunk" select="."/> <xsl:param name="node" select="."/> @@ -321,5 +548,7 @@ <xsl:call-template name="process.footnotes"/> </xsl:if> </xsl:template> + +<!-- ====================================================================== --> </xsl:stylesheet> Index: phpdoc/xsl/docbook/html/profile-docbook.xsl diff -u phpdoc/xsl/docbook/html/profile-docbook.xsl:1.1 phpdoc/xsl/docbook/html/profile-docbook.xsl:1.2 --- phpdoc/xsl/docbook/html/profile-docbook.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/profile-docbook.xsl Sun Mar 9 09:56:38 2003 @@ -6,7 +6,7 @@ <xsl:output method="html" encoding="ISO-8859-1" indent="no"/> <!-- ******************************************************************** - $Id: profile-docbook.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: profile-docbook.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -26,6 +26,7 @@ <xsl:include href="../common/titles.xsl"/> <xsl:include href="../common/subtitles.xsl"/> <xsl:include href="../common/gentext.xsl"/> +<xsl:include href="../common/targets.xsl"/> <xsl:include href="autotoc.xsl"/> <xsl:include href="autoidx.xsl"/> <xsl:include href="lists.xsl"/> @@ -72,6 +73,10 @@ <xsl:message> <xsl:text>No template matches </xsl:text> <xsl:value-of select="name(.)"/> + <xsl:if test="parent::*"> + <xsl:text> in </xsl:text> + <xsl:value-of select="name(parent::*)"/> + </xsl:if> <xsl:text>.</xsl:text> </xsl:message> @@ -100,13 +105,18 @@ <xsl:template name="head.content"> <xsl:param name="node" select="."/> + <xsl:param name="title"> + <xsl:apply-templates select="$node" mode="object.title.markup.textonly"/> + </xsl:param> <title> - <xsl:apply-templates select="$node" mode="object.title.markup.textonly"/> + <xsl:copy-of select="$title"/> </title> - <xsl:if test="$html.stylesheet"> - <link rel="stylesheet" href="{$html.stylesheet}" type="{$html.stylesheet.type}"/> + <xsl:if test="$html.stylesheet != ''"> + <xsl:call-template name="output.html.stylesheets"> + <xsl:with-param name="stylesheets" select="normalize-space($html.stylesheet)"/> + </xsl:call-template> </xsl:if> <xsl:if test="$link.mailto.url != ''"> @@ -119,10 +129,26 @@ <meta name="generator" content="DocBook XSL Stylesheets V{$VERSION}"/> + <xsl:if test="$generate.meta.abstract != 0"> + <xsl:variable name="info" select="(articleinfo |bookinfo |prefaceinfo |chapterinfo |appendixinfo |sectioninfo |sect1info |sect2info |sect3info |sect4info |sect5info |referenceinfo |refentryinfo |partinfo |docinfo)[1]"/> + <xsl:if test="$info and $info/abstract"> + <meta name="description"> + <xsl:attribute name="content"> + <xsl:for-each select="$info/abstract[1]/*"> + <xsl:value-of select="."/> + <xsl:if test="position() < last()"> + <xsl:text> </xsl:text> + </xsl:if> + </xsl:for-each> + </xsl:attribute> + </meta> + </xsl:if> + </xsl:if> + <xsl:if test="ancestor-or-self::*[@status][1]/@status = 'draft' and $draft.watermark.image != ''"> <style type="text/css"><xsl:text> -body { background-image: url("</xsl:text> -<xsl:value-of select="$draft.watermark.image"/><xsl:text>"); +body { background-image: url('</xsl:text> +<xsl:value-of select="$draft.watermark.image"/><xsl:text>'); background-repeat: no-repeat; background-position: top left; /* The following properties make the watermark "fixed" on the page. */ @@ -135,6 +161,34 @@ <xsl:apply-templates select="." mode="head.keywords.content"/> </xsl:template> +<xsl:template name="output.html.stylesheets"> + <xsl:param name="stylesheets" select="''"/> + + <xsl:choose> + <xsl:when test="contains($stylesheets, ' ')"> + <link rel="stylesheet" href="{substring-before($stylesheets, ' ')}"> + <xsl:if test="$html.stylesheet.type != ''"> + <xsl:attribute name="type"> + <xsl:value-of select="$html.stylesheet.type"/> + </xsl:attribute> + </xsl:if> + </link> + <xsl:call-template name="output.html.stylesheets"> + <xsl:with-param name="stylesheets" select="substring-after($stylesheets, ' ')"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$stylesheets != ''"> + <link rel="stylesheet" href="{$stylesheets}"> + <xsl:if test="$html.stylesheet.type != ''"> + <xsl:attribute name="type"> + <xsl:value-of select="$html.stylesheet.type"/> + </xsl:attribute> + </xsl:if> + </link> + </xsl:when> + </xsl:choose> +</xsl:template> + <!-- ============================================================ --> <xsl:template match="*" mode="head.keywords.content"> @@ -168,6 +222,17 @@ <!-- ============================================================ --> +<xsl:template name="system.head.content"> + <xsl:param name="node" select="."/> + + <!-- system.head.content is like user.head.content, except that + it is called before head.content. This is important because it + means, for example, that <style> elements output by system.head.content + have a lower CSS precedence than the users stylesheet. --> +</xsl:template> + +<!-- ============================================================ --> + <xsl:template name="user.head.content"> <xsl:param name="node" select="."/> </xsl:template> @@ -200,17 +265,27 @@ </xsl:message> </xsl:when> <xsl:otherwise> - <xsl:apply-templates select="$profiled-nodes//*[@id=$rootid]" mode="process.root"/> - <xsl:if test="$tex.math.in.alt != ''"> - <xsl:apply-templates select="$profiled-nodes//*[@id=$rootid]" mode="collect.tex.math"/> + <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="$profiled-nodes//*[@id=$rootid]" mode="process.root"/> + <xsl:if test="$tex.math.in.alt != ''"> + <xsl:apply-templates select="$profiled-nodes//*[@id=$rootid]" mode="collect.tex.math"/> + </xsl:if> </xsl:if> </xsl:otherwise> </xsl:choose> </xsl:when> <xsl:otherwise> - <xsl:apply-templates select="$profiled-nodes" mode="process.root"/> - <xsl:if test="$tex.math.in.alt != ''"> - <xsl:apply-templates select="$profiled-nodes" mode="collect.tex.math"/> + <xsl:if test="$collect.xref.targets = 'yes' or $collect.xref.targets = 'only'"> + <xsl:apply-templates select="$profiled-nodes" mode="collect.targets"/> + </xsl:if> + <xsl:if test="$collect.xref.targets != 'only'"> + <xsl:apply-templates select="$profiled-nodes" mode="process.root"/> + <xsl:if test="$tex.math.in.alt != ''"> + <xsl:apply-templates select="$profiled-nodes" mode="collect.tex.math"/> + </xsl:if> </xsl:if> </xsl:otherwise> </xsl:choose> @@ -218,26 +293,46 @@ <xsl:template match="*" mode="process.root"> <xsl:variable name="doc" select="self::*"/> + + <xsl:call-template name="root.messages"/> + <html> - <head> - <xsl:call-template name="head.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - <xsl:call-template name="user.head.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - </head> - <body> - <xsl:call-template name="body.attributes"/> - <xsl:call-template name="user.header.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - <xsl:apply-templates select="."/> - <xsl:call-template name="user.footer.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - </body> + <head> + <xsl:call-template name="system.head.content"> + <xsl:with-param name="node" select="$doc"/> + </xsl:call-template> + <xsl:call-template name="head.content"> + <xsl:with-param name="node" select="$doc"/> + </xsl:call-template> + <xsl:call-template name="user.head.content"> + <xsl:with-param name="node" select="$doc"/> + </xsl:call-template> + </head> + <body> + <xsl:call-template name="body.attributes"/> + <xsl:call-template name="user.header.content"> + <xsl:with-param name="node" select="$doc"/> + </xsl:call-template> + <xsl:apply-templates select="."/> + <xsl:call-template name="user.footer.content"> + <xsl:with-param name="node" select="$doc"/> + </xsl:call-template> + </body> </html> +</xsl:template> + +<xsl:template name="root.messages"> + <!-- redefine this any way you'd like to output messages --> + <!-- DO NOT OUTPUT ANYTHING FROM THIS TEMPLATE --> +</xsl:template> + +<!-- ==================================================================== --> + +<xsl:template name="chunk"> + <xsl:param name="node" select="."/> + + <!-- The default is that we are not chunking... --> + <xsl:text>0</xsl:text> </xsl:template> <!-- ==================================================================== --> Index: phpdoc/xsl/docbook/html/profile-onechunk.xsl diff -u phpdoc/xsl/docbook/html/profile-onechunk.xsl:1.1 phpdoc/xsl/docbook/html/profile-onechunk.xsl:1.2 --- phpdoc/xsl/docbook/html/profile-onechunk.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/profile-onechunk.xsl Sun Mar 9 09:56:38 2003 @@ -3,45 +3,21 @@ <!--from the DocBook XSL stylesheets. Do not edit this file.--> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" xmlns:exslt="http://exslt.org/common" exslt:dummy="dummy" extension-element-prefixes="exslt" version="1.0" exclude-result-prefixes="doc exslt"> -<!-- This stylesheet works with Saxon and Xalan; for XT use xtchunk.xsl --> -<!-- This stylesheet should also work for any processor that supports --> -<!-- exslt:document() (see http://www.exslt.org/) --> - <xsl:import href="chunk.xsl"/> -<!-- ==================================================================== --> -<!-- What's a chunk? - - The root element (that's it in this version) - --> -<!-- ==================================================================== --> - -<xsl:template name="chunk"> - <xsl:param name="node" select="."/> - - <xsl:choose> - <xsl:when test="not($node/parent::*)">1</xsl:when> - <xsl:otherwise>0</xsl:otherwise> - </xsl:choose> +<!-- Ok, using the onechunk parameter makes this all work again. --> +<!-- It does have the disadvantage that it only works for documents that have --> +<!-- a root element that is considered a chunk by the chunk.xsl stylesheet. --> +<!-- Ideally, onechunk would let anything be a chunk. But not today. --> + +<xsl:param name="onechunk" select="1"/> + +<xsl:template name="href.target.uri"> + <xsl:param name="object" select="."/> + <xsl:text>#</xsl:text> + <xsl:call-template name="object.id"> + <xsl:with-param name="object" select="$object"/> + </xsl:call-template> </xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="set|book|part|preface|chapter|appendix |article |reference|refentry |book/glossary|article/glossary |book/bibliography|article/bibliography |sect1|/section|section |setindex|book/index|article/index |colophon" priority="2"> - <xsl:variable name="ischunk"> - <xsl:call-template name="chunk"/> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$ischunk = 1"> - <xsl:call-template name="process-chunk-element"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-imports/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ==================================================================== --> </xsl:stylesheet> Index: phpdoc/xsl/docbook/html/qandaset.xsl diff -u phpdoc/xsl/docbook/html/qandaset.xsl:1.1 phpdoc/xsl/docbook/html/qandaset.xsl:1.2 --- phpdoc/xsl/docbook/html/qandaset.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/qandaset.xsl Sun Mar 9 09:56:38 2003 @@ -5,7 +5,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: qandaset.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: qandaset.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -74,7 +74,7 @@ <xsl:call-template name="process.qanda.toc"/> </xsl:if> <xsl:apply-templates select="$preamble"/> - <table border="0"> + <table border="0" summary="Q and A Set"> <xsl:if test="$table-summary != ''"> <xsl:attribute name="summary"> <xsl:value-of select="$table-summary"/> Index: phpdoc/xsl/docbook/html/refentry.xsl diff -u phpdoc/xsl/docbook/html/refentry.xsl:1.1 phpdoc/xsl/docbook/html/refentry.xsl:1.2 --- phpdoc/xsl/docbook/html/refentry.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/refentry.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: refentry.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: refentry.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -16,6 +16,7 @@ <xsl:template match="reference"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:call-template name="anchor"> <xsl:with-param name="conditional" select="0"/> </xsl:call-template> @@ -70,6 +71,7 @@ <xsl:template match="refentry"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:if test="$refentry.separator != 0 and preceding-sibling::refentry"> <div class="refentry.separator"> <hr/> @@ -199,8 +201,28 @@ <xsl:apply-templates/> </xsl:template> -<xsl:template match="refsect1|refsect2|refsect3"> - <xsl:call-template name="block.object"/> +<xsl:template match="refsection|refsect1|refsect2|refsect3"> + <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> + <xsl:call-template name="anchor"/> + <xsl:apply-templates/> + </div> +</xsl:template> + +<xsl:template match="refsection/title"> + <!-- the ID is output in the block.object call for refsect1 --> + <xsl:variable name="level" select="count(ancestor-or-self::refsection)"/> + <xsl:variable name="hlevel"> + <xsl:choose> + <xsl:when test="$level > 5">6</xsl:when> + <xsl:otherwise> + <xsl:value-of select="$level+1"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + <xsl:element name="h{$hlevel}"> + <xsl:apply-templates/> + </xsl:element> </xsl:template> <xsl:template match="refsect1/title"> Index: phpdoc/xsl/docbook/html/sections.xsl diff -u phpdoc/xsl/docbook/html/sections.xsl:1.1 phpdoc/xsl/docbook/html/sections.xsl:1.2 --- phpdoc/xsl/docbook/html/sections.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/sections.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: sections.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: sections.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -18,6 +18,7 @@ <xsl:variable name="depth" select="count(ancestor::section)+1"/> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:call-template name="section.titlepage"/> <xsl:variable name="toc.params"> @@ -26,10 +27,12 @@ </xsl:call-template> </xsl:variable> - <xsl:if test="(contains($toc.params, 'toc') - and $depth <= $generate.section.toc.level) - or refentry"> - <xsl:call-template name="section.toc"/> + <xsl:if test="contains($toc.params, 'toc') + and $depth <= $generate.section.toc.level"> + <xsl:call-template name="section.toc"> + <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/> + </xsl:call-template> + <xsl:call-template name="section.toc.separator"/> </xsl:if> <xsl:apply-templates/> <xsl:call-template name="process.chunk.footnotes"/> @@ -69,6 +72,7 @@ <xsl:template match="sect1"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:call-template name="sect1.titlepage"/> <xsl:variable name="toc.params"> @@ -77,10 +81,12 @@ </xsl:call-template> </xsl:variable> - <xsl:if test="(contains($toc.params, 'toc') - and $generate.section.toc.level >= 1) - or refentry"> - <xsl:call-template name="section.toc"/> + <xsl:if test="contains($toc.params, 'toc') + and $generate.section.toc.level >= 1"> + <xsl:call-template name="section.toc"> + <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/> + </xsl:call-template> + <xsl:call-template name="section.toc.separator"/> </xsl:if> <xsl:apply-templates/> <xsl:call-template name="process.chunk.footnotes"/> @@ -93,6 +99,7 @@ <xsl:template match="sect2"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:call-template name="sect2.titlepage"/> <xsl:variable name="toc.params"> @@ -101,10 +108,12 @@ </xsl:call-template> </xsl:variable> - <xsl:if test="(contains($toc.params, 'toc') - and $generate.section.toc.level >= 2) - or refentry"> - <xsl:call-template name="section.toc"/> + <xsl:if test="contains($toc.params, 'toc') + and $generate.section.toc.level >= 2"> + <xsl:call-template name="section.toc"> + <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/> + </xsl:call-template> + <xsl:call-template name="section.toc.separator"/> </xsl:if> <xsl:apply-templates/> </div> @@ -116,6 +125,7 @@ <xsl:template match="sect3"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:call-template name="sect3.titlepage"/> <xsl:variable name="toc.params"> @@ -124,10 +134,12 @@ </xsl:call-template> </xsl:variable> - <xsl:if test="(contains($toc.params, 'toc') - and $generate.section.toc.level >= 3) - or refentry"> - <xsl:call-template name="section.toc"/> + <xsl:if test="contains($toc.params, 'toc') + and $generate.section.toc.level >= 3"> + <xsl:call-template name="section.toc"> + <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/> + </xsl:call-template> + <xsl:call-template name="section.toc.separator"/> </xsl:if> <xsl:apply-templates/> </div> @@ -139,6 +151,7 @@ <xsl:template match="sect4"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:call-template name="sect4.titlepage"/> <xsl:variable name="toc.params"> @@ -147,10 +160,12 @@ </xsl:call-template> </xsl:variable> - <xsl:if test="(contains($toc.params, 'toc') - and $generate.section.toc.level >= 4) - or refentry"> - <xsl:call-template name="section.toc"/> + <xsl:if test="contains($toc.params, 'toc') + and $generate.section.toc.level >= 4"> + <xsl:call-template name="section.toc"> + <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/> + </xsl:call-template> + <xsl:call-template name="section.toc.separator"/> </xsl:if> <xsl:apply-templates/> </div> @@ -162,6 +177,7 @@ <xsl:template match="sect5"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:call-template name="sect5.titlepage"/> <xsl:variable name="toc.params"> @@ -170,10 +186,12 @@ </xsl:call-template> </xsl:variable> - <xsl:if test="(contains($toc.params, 'toc') - and $generate.section.toc.level >= 5) - or refentry"> - <xsl:call-template name="section.toc"/> + <xsl:if test="contains($toc.params, 'toc') + and $generate.section.toc.level >= 5"> + <xsl:call-template name="section.toc"> + <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/> + </xsl:call-template> + <xsl:call-template name="section.toc.separator"/> </xsl:if> <xsl:apply-templates/> </div> @@ -185,6 +203,7 @@ <xsl:template match="simplesect"> <div class="{name(.)}"> + <xsl:call-template name="language.attribute"/> <xsl:call-template name="simplesect.titlepage"/> <xsl:apply-templates/> </div> @@ -211,28 +230,29 @@ <xsl:template match="sect3/title"></xsl:template> <xsl:template match="sect3/subtitle"></xsl:template> -<xsl:template match="sect3/subtitle"></xsl:template> +<xsl:template match="sect3/titleabbrev"></xsl:template> <xsl:template match="sect3info"></xsl:template> <xsl:template match="sect4/title"></xsl:template> <xsl:template match="sect4/subtitle"></xsl:template> -<xsl:template match="sect4/subtitle"></xsl:template> +<xsl:template match="sect4/titleabbrev"></xsl:template> <xsl:template match="sect4info"></xsl:template> <xsl:template match="sect5/title"></xsl:template> <xsl:template match="sect5/subtitle"></xsl:template> -<xsl:template match="sect5/subtitle"></xsl:template> +<xsl:template match="sect5/titleabbrev"></xsl:template> <xsl:template match="sect5info"></xsl:template> <xsl:template match="simplesect/title"></xsl:template> -<xsl:template match="simplesect/titleabbrev"></xsl:template> <xsl:template match="simplesect/subtitle"></xsl:template> +<xsl:template match="simplesect/titleabbrev"></xsl:template> <!-- ==================================================================== --> <xsl:template name="section.heading"> <xsl:param name="section" select="."/> - <xsl:param name="level" select="'1'"/> + <xsl:param name="level" select="1"/> + <xsl:param name="allow-anchors" select="1"/> <xsl:param name="title"/> <xsl:variable name="id"> @@ -251,17 +271,21 @@ </xsl:choose> </xsl:variable> - <xsl:element name="h{$level}"> + <!-- HTML H level is one higher than section level --> + <xsl:variable name="hlevel" select="$level + 1"/> + <xsl:element name="h{$hlevel}"> <xsl:attribute name="class">title</xsl:attribute> <xsl:if test="$css.decoration != '0'"> - <xsl:if test="$level<3"> + <xsl:if test="$hlevel<3"> <xsl:attribute name="style">clear: both</xsl:attribute> </xsl:if> </xsl:if> - <xsl:call-template name="anchor"> - <xsl:with-param name="node" select="$section"/> - <xsl:with-param name="conditional" select="0"/> - </xsl:call-template> + <xsl:if test="$allow-anchors != 0"> + <xsl:call-template name="anchor"> + <xsl:with-param name="node" select="$section"/> + <xsl:with-param name="conditional" select="0"/> + </xsl:call-template> + </xsl:if> <xsl:copy-of select="$title"/> </xsl:element> </xsl:template> @@ -301,9 +325,9 @@ or local-name($container) = 'index' or local-name($container) = 'partintro' or local-name($container) = 'preface' - or local-name($container) = 'setindex'">2</xsl:when> + or local-name($container) = 'setindex'">1</xsl:when> <xsl:when test="local-name($container) = 'glossdiv'"> - <xsl:value-of select="count(ancestor::glossdiv)+2"/> + <xsl:value-of select="count(ancestor::glossdiv)+1"/> </xsl:when> <xsl:when test="local-name($container) = 'sect1' or local-name($container) = 'sect2' @@ -322,11 +346,12 @@ </xsl:variable> <xsl:value-of select="$slevel + 1"/> </xsl:when> - <xsl:otherwise>2</xsl:otherwise> + <xsl:otherwise>1</xsl:otherwise> </xsl:choose> </xsl:variable> - <xsl:variable name="level"> + <!-- HTML H level is one higher than section level --> + <xsl:variable name="hlevel"> <xsl:choose> <xsl:when test="@renderas = 'sect1'">2</xsl:when> <xsl:when test="@renderas = 'sect2'">3</xsl:when> @@ -334,17 +359,70 @@ <xsl:when test="@renderas = 'sect4'">5</xsl:when> <xsl:when test="@renderas = 'sect5'">6</xsl:when> <xsl:otherwise> - <xsl:value-of select="$clevel"/> + <xsl:value-of select="$clevel + 1"/> </xsl:otherwise> </xsl:choose> </xsl:variable> - <xsl:element name="h{$level}"> + <xsl:element name="h{$hlevel}"> <xsl:call-template name="anchor"> <xsl:with-param name="conditional" select="0"/> </xsl:call-template> <xsl:apply-templates/> </xsl:element> +</xsl:template> + +<xsl:template match="section/subtitle" mode="titlepage.mode" priority="2"> + <xsl:call-template name="section.subtitle"/> +</xsl:template> + +<xsl:template match="sect1/subtitle" mode="titlepage.mode" priority="2"> + <xsl:call-template name="section.subtitle"/> +</xsl:template> + +<xsl:template match="sect2/subtitle" mode="titlepage.mode" priority="2"> + <xsl:call-template name="section.subtitle"/> +</xsl:template> + +<xsl:template match="sect3/subtitle" mode="titlepage.mode" priority="2"> + <xsl:call-template name="section.subtitle"/> +</xsl:template> + +<xsl:template match="sect4/subtitle" mode="titlepage.mode" priority="2"> + <xsl:call-template name="section.subtitle"/> +</xsl:template> + +<xsl:template match="sect5/subtitle" mode="titlepage.mode" priority="2"> + <xsl:call-template name="section.subtitle"/> +</xsl:template> + +<xsl:template name="section.subtitle"> + <!-- the context node should be the subtitle of a section when called --> + <xsl:variable name="section" select="(ancestor::section + |ancestor::simplesect + |ancestor::sect1 + |ancestor::sect2 + |ancestor::sect3 + |ancestor::sect4 + |ancestor::sect5)[last()]"/> + + <xsl:variable name="level"> + <xsl:call-template name="section.level"> + <xsl:with-param name="node" select="$section"/> + </xsl:call-template> + </xsl:variable> + + <xsl:call-template name="section.heading"> + <xsl:with-param name="section" select=".."/> + <xsl:with-param name="allow-anchors" select="0"/> + <!-- subtitle heading level one higher than section level --> + <xsl:with-param name="level" select="$level + 1"/> + <xsl:with-param name="title"> + <xsl:apply-templates select="$section" mode="object.subtitle.markup"> + <xsl:with-param name="allow-anchors" select="0"/> + </xsl:apply-templates> + </xsl:with-param> + </xsl:call-template> </xsl:template> </xsl:stylesheet> Index: phpdoc/xsl/docbook/html/synop.xsl diff -u phpdoc/xsl/docbook/html/synop.xsl:1.1 phpdoc/xsl/docbook/html/synop.xsl:1.2 --- phpdoc/xsl/docbook/html/synop.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/synop.xsl Sun Mar 9 09:56:38 2003 @@ -6,7 +6,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: synop.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: synop.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -41,7 +41,7 @@ <xsl:text> </xsl:text> </xsl:template> -<xsl:template match="group|arg"> +<xsl:template match="group|arg" name="group-or-arg"> <xsl:variable name="choice" select="@choice"/> <xsl:variable name="rep" select="@rep"/> <xsl:variable name="sepchar"> @@ -101,7 +101,7 @@ <xsl:variable name="choice" select="@choice"/> <xsl:variable name="rep" select="@rep"/> <xsl:if test="position()>1"><xsl:value-of select="$arg.or.sep"/></xsl:if> - <xsl:apply-templates/> + <xsl:call-template name="group-or-arg"/> </xsl:template> <xsl:template match="sbr"> @@ -121,6 +121,8 @@ <xsl:value-of select="$snum"/> <xsl:text>)</xsl:text> </a> + <xsl:text> </xsl:text> + <xsl:apply-templates/> </i> </xsl:template> @@ -133,7 +135,7 @@ <xsl:apply-templates select="." mode="synopfragment.number"/> </xsl:variable> <p> - <a name="#{@id}"> + <a name="{@id}"> <xsl:text>(</xsl:text> <xsl:value-of select="$snum"/> <xsl:text>)</xsl:text> @@ -141,7 +143,7 @@ <xsl:text> </xsl:text> <xsl:apply-templates/> </p> -</xsl:template> +</xsl:template> <xsl:template match="funcsynopsis"> <xsl:call-template name="informal.object"/> @@ -151,101 +153,473 @@ <pre class="{name(.)}"><xsl:apply-templates/></pre> </xsl:template> +<!-- ====================================================================== --> +<!-- funcprototype --> +<!-- + +funcprototype ::= (funcdef, + (void|varargs|paramdef+)) + +funcdef ::= (#PCDATA|type|replaceable|function)* + +paramdef ::= (#PCDATA|type|replaceable|parameter|funcparams)* +--> + <xsl:template match="funcprototype"> + <xsl:variable name="html-style"> + <xsl:call-template name="dbhtml-attribute"> + <xsl:with-param name="pis" + select="ancestor::funcsynopsis//processing-instruction('dbhtml')"/> + <xsl:with-param name="attribute" select="'funcsynopsis-style'"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="style"> + <xsl:choose> + <xsl:when test="$html-style != ''"> + <xsl:value-of select="$html-style"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$funcsynopsis.style"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="tabular-p" + select="$funcsynopsis.tabular.threshold > 0 + and string-length(.) > $funcsynopsis.tabular.threshold"/> + + <xsl:choose> + <xsl:when test="$style = 'kr' and $tabular-p"> + <xsl:apply-templates select="." mode="kr-tabular"/> + </xsl:when> + <xsl:when test="$style = 'kr'"> + <xsl:apply-templates select="." mode="kr-nontabular"/> + </xsl:when> + <xsl:when test="$style = 'ansi' and $tabular-p"> + <xsl:apply-templates select="." mode="ansi-tabular"/> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="." mode="ansi-nontabular"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ====================================================================== --> +<!-- funcprototype: kr, non-tabular --> + +<xsl:template match="funcprototype" mode="kr-nontabular"> <p> - <code> - <xsl:apply-templates/> - <xsl:if test="$funcsynopsis.style='kr'"> - <xsl:apply-templates select="./paramdef" mode="kr-funcsynopsis-mode"/> - </xsl:if> - </code> + <xsl:apply-templates mode="kr-nontabular"/> + <xsl:if test="paramdef"> + <br/> + <xsl:apply-templates select="paramdef" mode="kr-funcsynopsis-mode"/> + </xsl:if> </p> </xsl:template> -<xsl:template match="funcdef"> +<xsl:template match="funcdef" mode="kr-nontabular"> <code class="{name(.)}"> - <xsl:apply-templates/> + <xsl:apply-templates mode="kr-nontabular"/> + <xsl:text>(</xsl:text> </code> </xsl:template> -<xsl:template match="funcdef/function"> +<xsl:template match="funcdef/function" mode="kr-nontabular"> <xsl:choose> <xsl:when test="$funcsynopsis.decoration != 0"> - <b class="fsfunc"><xsl:apply-templates/></b> + <b class="fsfunc"><xsl:apply-templates mode="kr-nontabular"/></b> </xsl:when> <xsl:otherwise> - <xsl:apply-templates/> + <xsl:apply-templates mode="kr-nontabular"/> </xsl:otherwise> </xsl:choose> </xsl:template> -<xsl:template match="void"> +<xsl:template match="void" mode="kr-nontabular"> + <code>)</code> + <xsl:text>;</xsl:text> +</xsl:template> + +<xsl:template match="varargs" mode="kr-nontabular"> + <xsl:text>...</xsl:text> + <code>)</code> + <xsl:text>;</xsl:text> +</xsl:template> + +<xsl:template match="paramdef" mode="kr-nontabular"> + <xsl:apply-templates select="parameter" mode="kr-nontabular"/> <xsl:choose> - <xsl:when test="$funcsynopsis.style='ansi'"> - <xsl:text>(void);</xsl:text> + <xsl:when test="following-sibling::*"> + <xsl:text>, </xsl:text> </xsl:when> <xsl:otherwise> - <xsl:text>();</xsl:text> + <code>)</code> + <xsl:text>;</xsl:text> </xsl:otherwise> </xsl:choose> </xsl:template> -<xsl:template match="varargs"> - <xsl:text>(...);</xsl:text> +<xsl:template match="paramdef/parameter" mode="kr-nontabular"> + <xsl:choose> + <xsl:when test="$funcsynopsis.decoration != 0"> + <var class="pdparam"> + <xsl:apply-templates mode="kr-nontabular"/> + </var> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates mode="kr-nontabular"/> + </xsl:otherwise> + </xsl:choose> </xsl:template> -<xsl:template match="paramdef"> - <xsl:variable name="paramnum"> - <xsl:number count="paramdef" format="1"/> - </xsl:variable> - <xsl:if test="$paramnum=1">(</xsl:if> +<xsl:template match="paramdef" mode="kr-funcsynopsis-mode"> + <xsl:if test="preceding-sibling::paramdef"><br/></xsl:if> + <xsl:apply-templates mode="kr-funcsynopsis-mode"/> + <xsl:text>;</xsl:text> +</xsl:template> + +<xsl:template match="type|parameter|funcparams" mode="kr-funcsynopsis-mode"> + <code> + <xsl:apply-templates mode="kr-funcsynopsis-mode"/> + </code> +</xsl:template> + +<!-- ====================================================================== --> +<!-- funcprototype: kr, tabular --> + +<xsl:template match="funcprototype" mode="kr-tabular"> + <table border="0" summary="Function synopsis" cellspacing="0" cellpadding="0" + style="padding-bottom: 1em"> + <tr> + <td> + <xsl:apply-templates select="funcdef" mode="kr-tabular"/> + </td> + <xsl:apply-templates select="(void|varargs|paramdef)[1]" mode="kr-tabular"/> + </tr> + <xsl:for-each select="(void|varargs|paramdef)[position() > 1]"> + <tr> + <td> </td> + <xsl:apply-templates select="." mode="kr-tabular"/> + </tr> + </xsl:for-each> + </table> + <xsl:if test="paramdef"> + <table border="0" summary="Function argument synopsis" + cellspacing="0" cellpadding="0"> + <xsl:if test="following-sibling::funcprototype"> + <xsl:attribute name="style">padding-bottom: 1em</xsl:attribute> + </xsl:if> + <xsl:apply-templates select="paramdef" mode="kr-tabular-funcsynopsis-mode"/> + </table> + </xsl:if> +</xsl:template> + +<xsl:template match="funcdef" mode="kr-tabular"> + <code class="{name(.)}"> + <xsl:apply-templates mode="kr-tabular"/> + <xsl:text>(</xsl:text> + </code> +</xsl:template> + +<xsl:template match="funcdef/function" mode="kr-tabular"> <xsl:choose> - <xsl:when test="$funcsynopsis.style='ansi'"> - <xsl:apply-templates/> + <xsl:when test="$funcsynopsis.decoration != 0"> + <b class="fsfunc"><xsl:apply-templates mode="kr-nontabular"/></b> </xsl:when> <xsl:otherwise> - <xsl:apply-templates select="./parameter"/> + <xsl:apply-templates mode="kr-tabular"/> </xsl:otherwise> </xsl:choose> +</xsl:template> + +<xsl:template match="void" mode="kr-tabular"> + <td> + <code>)</code> + <xsl:text>;</xsl:text> + </td> + <td> </td> +</xsl:template> + +<xsl:template match="varargs" mode="kr-tabular"> + <td> + <xsl:text>...</xsl:text> + <code>)</code> + <xsl:text>;</xsl:text> + </td> + <td> </td> +</xsl:template> + +<xsl:template match="paramdef" mode="kr-tabular"> + <td> + <xsl:apply-templates select="parameter" mode="kr-tabular"/> + <xsl:choose> + <xsl:when test="following-sibling::*"> + <xsl:text>, </xsl:text> + </xsl:when> + <xsl:otherwise> + <code>)</code> + <xsl:text>;</xsl:text> + </xsl:otherwise> + </xsl:choose> + </td> + <td> </td> +</xsl:template> + +<xsl:template match="paramdef/parameter" mode="kr-tabular"> <xsl:choose> - <xsl:when test="following-sibling::paramdef"> - <xsl:text>, </xsl:text> + <xsl:when test="$funcsynopsis.decoration != 0"> + <var class="pdparam"> + <xsl:apply-templates mode="kr-tabular"/> + </var> </xsl:when> <xsl:otherwise> - <xsl:text>);</xsl:text> + <xsl:apply-templates mode="kr-tabular"/> </xsl:otherwise> </xsl:choose> </xsl:template> -<xsl:template match="paramdef/parameter"> +<xsl:template match="paramdef" mode="kr-tabular-funcsynopsis-mode"> + <tr> + <xsl:choose> + <xsl:when test="type and funcparams"> + <td> + <xsl:apply-templates select="type" mode="kr-tabular-funcsynopsis-mode"/> + <xsl:text> </xsl:text> + </td> + <td> + <xsl:apply-templates select="type/following-sibling::node()" + mode="kr-tabular-funcsynopsis-mode"/> + </td> + </xsl:when> + <xsl:when test="funcparams"> + <td colspan="2"> + <xsl:apply-templates mode="kr-tabular-funcsynopsis-mode"/> + </td> + </xsl:when> + <xsl:otherwise> + <td> + <xsl:apply-templates select="parameter/preceding-sibling::node()" + mode="kr-tabular-funcsynopsis-mode"/> + <xsl:text> </xsl:text> + </td> + <td> + <xsl:apply-templates select="parameter" + mode="kr-tabular"/> + <xsl:apply-templates select="parameter/following-sibling::node()" + mode="kr-tabular-funcsynopsis-mode"/> + <xsl:text>;</xsl:text> + </td> + </xsl:otherwise> + </xsl:choose> + </tr> +</xsl:template> + +<xsl:template match="paramdef/parameter" mode="kr-tabular-funcsynopsis-mode"> <xsl:choose> <xsl:when test="$funcsynopsis.decoration != 0"> <var class="pdparam"> - <xsl:apply-templates/> + <xsl:apply-templates mode="kr-tabular-funcsynopsis-mode"/> </var> </xsl:when> <xsl:otherwise> - <xsl:apply-templates/> + <xsl:apply-templates mode="kr-tabular-funcsynopsis-mode"/> </xsl:otherwise> </xsl:choose> - <xsl:if test="following-sibling::parameter"> - <xsl:text>, </xsl:text> - </xsl:if> </xsl:template> -<xsl:template match="paramdef" mode="kr-funcsynopsis-mode"> - <br/> - <xsl:apply-templates/> +<xsl:template match="funcparams" mode="kr-tabular-funcsynopsis-mode"> + <code>(</code> + <xsl:apply-templates mode="kr-tabular-funcsynopsis-mode"/> + <code>)</code> + <xsl:text>;</xsl:text> +</xsl:template> + +<!-- ====================================================================== --> +<!-- funcprototype: ansi, non-tabular --> + +<xsl:template match="funcprototype" mode="ansi-nontabular"> + <p> + <xsl:apply-templates mode="ansi-nontabular"/> + </p> +</xsl:template> + +<xsl:template match="funcdef" mode="ansi-nontabular"> + <code class="{name(.)}"> + <xsl:apply-templates mode="ansi-nontabular"/> + <xsl:text>(</xsl:text> + </code> +</xsl:template> + +<xsl:template match="funcdef/function" mode="ansi-nontabular"> + <xsl:choose> + <xsl:when test="$funcsynopsis.decoration != 0"> + <b class="fsfunc"><xsl:apply-templates mode="ansi-nontabular"/></b> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates mode="ansi-nontabular"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="void" mode="ansi-nontabular"> + <code>void)</code> <xsl:text>;</xsl:text> </xsl:template> -<xsl:template match="funcparams"> - <xsl:text>(</xsl:text> +<xsl:template match="varargs" mode="ansi-nontabular"> + <xsl:text>...</xsl:text> + <code>)</code> + <xsl:text>;</xsl:text> +</xsl:template> + +<xsl:template match="paramdef" mode="ansi-nontabular"> + <xsl:apply-templates mode="ansi-nontabular"/> + <xsl:choose> + <xsl:when test="following-sibling::*"> + <xsl:text>, </xsl:text> + </xsl:when> + <xsl:otherwise> + <code>)</code> + <xsl:text>;</xsl:text> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="paramdef/parameter" mode="ansi-nontabular"> + <xsl:choose> + <xsl:when test="$funcsynopsis.decoration != 0"> + <var class="pdparam"> + <xsl:apply-templates mode="ansi-nontabular"/> + </var> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates mode="ansi-nontabular"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="funcparams" mode="ansi-nontabular"> + <code>(</code> + <xsl:apply-templates mode="ansi-nontabular"/> + <code>)</code> +</xsl:template> + +<!-- ====================================================================== --> +<!-- funcprototype: ansi, tabular --> + +<xsl:template match="funcprototype" mode="ansi-tabular"> + <table border="0" summary="Function synopsis" cellspacing="0" cellpadding="0"> + <xsl:if test="following-sibling::funcprototype"> + <xsl:attribute name="style">padding-bottom: 1em</xsl:attribute> + </xsl:if> + <tr> + <td> + <xsl:apply-templates select="funcdef" mode="ansi-tabular"/> + </td> + <xsl:apply-templates select="(void|varargs|paramdef)[1]" mode="ansi-tabular"/> + </tr> + <xsl:for-each select="(void|varargs|paramdef)[position() > 1]"> + <tr> + <td> </td> + <xsl:apply-templates select="." mode="ansi-tabular"/> + </tr> + </xsl:for-each> + </table> +</xsl:template> + +<xsl:template match="funcdef" mode="ansi-tabular"> + <code class="{name(.)}"> + <xsl:apply-templates mode="ansi-tabular"/> + <xsl:text>(</xsl:text> + </code> +</xsl:template> + +<xsl:template match="funcdef/function" mode="ansi-tabular"> + <xsl:choose> + <xsl:when test="$funcsynopsis.decoration != 0"> + <b class="fsfunc"><xsl:apply-templates mode="ansi-nontabular"/></b> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates mode="kr-tabular"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="void" mode="ansi-tabular"> + <td> + <code>void)</code> + <xsl:text>;</xsl:text> + </td> + <td> </td> +</xsl:template> + +<xsl:template match="varargs" mode="ansi-tabular"> + <td> + <xsl:text>...</xsl:text> + <code>)</code> + <xsl:text>;</xsl:text> + </td> + <td> </td> +</xsl:template> + +<xsl:template match="paramdef" mode="ansi-tabular"> + <xsl:choose> + <xsl:when test="type and funcparams"> + <td> + <xsl:apply-templates select="type" mode="kr-tabular-funcsynopsis-mode"/> + <xsl:text> </xsl:text> + </td> + <td> + <xsl:apply-templates select="type/following-sibling::node()" + mode="kr-tabular-funcsynopsis-mode"/> + </td> + </xsl:when> + <xsl:otherwise> + <td> + <xsl:apply-templates select="parameter/preceding-sibling::node()" + mode="ansi-tabular"/> + <xsl:text> </xsl:text> + </td> + <td> + <xsl:apply-templates select="parameter" + mode="ansi-tabular"/> + <xsl:apply-templates select="parameter/following-sibling::node()" + mode="ansi-tabular"/> + <xsl:choose> + <xsl:when test="following-sibling::*"> + <xsl:text>, </xsl:text> + </xsl:when> + <xsl:otherwise> + <code>)</code> + <xsl:text>;</xsl:text> + </xsl:otherwise> + </xsl:choose> + </td> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="paramdef/parameter" mode="ansi-tabular"> + <xsl:choose> + <xsl:when test="$funcsynopsis.decoration != 0"> + <var class="pdparam"> + <xsl:apply-templates mode="ansi-tabular"/> + </var> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates mode="ansi-tabular"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="funcparams" mode="ansi-tabular"> + <code>(</code> <xsl:apply-templates/> - <xsl:text>)</xsl:text> + <code>)</code> </xsl:template> -<!-- ==================================================================== --> +<!-- ====================================================================== --> <xsl:variable name="default-classsynopsis-language">java</xsl:variable> Index: phpdoc/xsl/docbook/html/table.xsl diff -u phpdoc/xsl/docbook/html/table.xsl:1.1 phpdoc/xsl/docbook/html/table.xsl:1.2 --- phpdoc/xsl/docbook/html/table.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/table.xsl Sun Mar 9 09:56:38 2003 @@ -4,13 +4,14 @@ xmlns:stbl="http://nwalsh.com/xslt/ext/com.nwalsh.saxon.Table" xmlns:xtbl="com.nwalsh.xalan.Table" xmlns:lxslt="http://xml.apache.org/xslt" - exclude-result-prefixes="doc stbl xtbl lxslt" + xmlns:ptbl="http://nwalsh.com/xslt/ext/xsltproc/python/Table" + exclude-result-prefixes="doc stbl xtbl lxslt ptbl" version='1.0'> <xsl:include href="../common/table.xsl"/> <!-- ******************************************************************** - $Id: table.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: table.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -28,6 +29,7 @@ <xsl:variable name="rowsep"> <xsl:call-template name="inherited.table.attribute"> <xsl:with-param name="entry" select="NOT-AN-ELEMENT-NAME"/> + <xsl:with-param name="row" select="ancestor-or-self::row[1]"/> <xsl:with-param name="colnum" select="$colnum"/> <xsl:with-param name="attribute" select="'rowsep'"/> </xsl:call-template> @@ -36,6 +38,7 @@ <xsl:variable name="colsep"> <xsl:call-template name="inherited.table.attribute"> <xsl:with-param name="entry" select="NOT-AN-ELEMENT-NAME"/> + <xsl:with-param name="row" select="ancestor-or-self::row[1]"/> <xsl:with-param name="colnum" select="$colnum"/> <xsl:with-param name="attribute" select="'colsep'"/> </xsl:call-template> @@ -65,21 +68,87 @@ <xsl:template name="border"> <xsl:param name="side" select="'left'"/> <xsl:param name="padding" select="0"/> + <xsl:param name="style" select="$table.cell.border.style"/> + <xsl:param name="color" select="$table.cell.border.color"/> + <xsl:param name="thickness" select="$table.cell.border.thickness"/> - <xsl:text>border-</xsl:text> - <xsl:value-of select="$side"/> - <xsl:text>: </xsl:text> - <xsl:value-of select="$table.border.thickness"/> - <xsl:text> </xsl:text> - <xsl:value-of select="$table.border.style"/> - <xsl:text> </xsl:text> - <xsl:value-of select="$table.border.color"/> - <xsl:text>; </xsl:text> + <!-- Note: Some browsers (mozilla) require at least a width and style. --> + + <xsl:choose> + <xsl:when test="($thickness != '' + and $style != '' + and $color != '') + or ($thickness != '' + and $style != '') + or ($thickness != '')"> + <!-- use the compound property if we can: --> + <!-- it saves space and probably works more reliably --> + <xsl:text>border-</xsl:text> + <xsl:value-of select="$side"/> + <xsl:text>: </xsl:text> + <xsl:value-of select="$thickness"/> + <xsl:text> </xsl:text> + <xsl:value-of select="$style"/> + <xsl:text> </xsl:text> + <xsl:value-of select="$color"/> + <xsl:text>; </xsl:text> + </xsl:when> + <xsl:otherwise> + <!-- we need to specify the styles individually --> + <xsl:if test="$thickness != ''"> + <xsl:text>border-</xsl:text> + <xsl:value-of select="$side"/> + <xsl:text>-width: </xsl:text> + <xsl:value-of select="$thickness"/> + <xsl:text>; </xsl:text> + </xsl:if> + + <xsl:if test="$style != ''"> + <xsl:text>border-</xsl:text> + <xsl:value-of select="$side"/> + <xsl:text>-style: </xsl:text> + <xsl:value-of select="$style"/> + <xsl:text>; </xsl:text> + </xsl:if> + + <xsl:if test="$color != ''"> + <xsl:text>border-</xsl:text> + <xsl:value-of select="$side"/> + <xsl:text>-color: </xsl:text> + <xsl:value-of select="$color"/> + <xsl:text>; </xsl:text> + </xsl:if> + </xsl:otherwise> + </xsl:choose> </xsl:template> <!-- ==================================================================== --> -<xsl:template match="tgroup"> +<xsl:template match="tgroup" name="tgroup"> + <xsl:variable name="summary"> + <xsl:call-template name="dbhtml-attribute"> + <xsl:with-param name="pis" + select="processing-instruction('dbhtml')"/> + <xsl:with-param name="attribute" select="'table-summary'"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="cellspacing"> + <xsl:call-template name="dbhtml-attribute"> + <xsl:with-param name="pis" + select="processing-instruction('dbhtml')"/> + <xsl:with-param name="attribute" select="'cellspacing'"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="cellpadding"> + <xsl:call-template name="dbhtml-attribute"> + <xsl:with-param name="pis" + select="processing-instruction('dbhtml')[1]"/> + <xsl:with-param name="attribute" select="'cellpadding'"/> + </xsl:call-template> + </xsl:variable> + <table> <xsl:choose> <!-- If there's a textobject/phrase for the table summary, use it --> @@ -91,19 +160,10 @@ <!-- If there's a <?dbhtml table-summary="foo"?> PI, use it for the HTML table summary attribute --> - <xsl:when test="processing-instruction('dbhtml')"> - <xsl:variable name="summary"> - <xsl:call-template name="dbhtml-attribute"> - <xsl:with-param name="pis" - select="processing-instruction('dbhtml')[1]"/> - <xsl:with-param name="attribute" select="'table-summary'"/> - </xsl:call-template> - </xsl:variable> - <xsl:if test="$summary != ''"> - <xsl:attribute name="summary"> - <xsl:value-of select="$summary"/> - </xsl:attribute> - </xsl:if> + <xsl:when test="$summary != ''"> + <xsl:attribute name="summary"> + <xsl:value-of select="$summary"/> + </xsl:attribute> </xsl:when> <!-- Otherwise, if there's a title, use that --> @@ -117,6 +177,32 @@ <xsl:otherwise><!-- nevermind --></xsl:otherwise> </xsl:choose> + <xsl:if test="$cellspacing != '' or $html.cellspacing != ''"> + <xsl:attribute name="cellspacing"> + <xsl:choose> + <xsl:when test="$cellspacing != ''"> + <xsl:value-of select="$cellspacing"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$html.cellspacing"/> + </xsl:otherwise> + </xsl:choose> + </xsl:attribute> + </xsl:if> + + <xsl:if test="$cellpadding != '' or $html.cellpadding != ''"> + <xsl:attribute name="cellpadding"> + <xsl:choose> + <xsl:when test="$cellpadding != ''"> + <xsl:value-of select="$cellpadding"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$html.cellpadding"/> + </xsl:otherwise> + </xsl:choose> + </xsl:attribute> + </xsl:if> + <xsl:if test="../@pgwide=1"> <xsl:attribute name="width">100%</xsl:attribute> </xsl:if> @@ -130,15 +216,27 @@ <xsl:text>border-collapse: collapse;</xsl:text> <xsl:call-template name="border"> <xsl:with-param name="side" select="'top'"/> + <xsl:with-param name="style" select="$table.frame.border.style"/> + <xsl:with-param name="color" select="$table.frame.border.color"/> + <xsl:with-param name="thickness" select="$table.frame.border.thickness"/> </xsl:call-template> <xsl:call-template name="border"> <xsl:with-param name="side" select="'bottom'"/> + <xsl:with-param name="style" select="$table.frame.border.style"/> + <xsl:with-param name="color" select="$table.frame.border.color"/> + <xsl:with-param name="thickness" select="$table.frame.border.thickness"/> </xsl:call-template> <xsl:call-template name="border"> <xsl:with-param name="side" select="'left'"/> + <xsl:with-param name="style" select="$table.frame.border.style"/> + <xsl:with-param name="color" select="$table.frame.border.color"/> + <xsl:with-param name="thickness" select="$table.frame.border.thickness"/> </xsl:call-template> <xsl:call-template name="border"> <xsl:with-param name="side" select="'right'"/> + <xsl:with-param name="style" select="$table.frame.border.style"/> + <xsl:with-param name="color" select="$table.frame.border.color"/> + <xsl:with-param name="thickness" select="$table.frame.border.thickness"/> </xsl:call-template> </xsl:attribute> </xsl:when> @@ -147,9 +245,15 @@ <xsl:text>border-collapse: collapse;</xsl:text> <xsl:call-template name="border"> <xsl:with-param name="side" select="'top'"/> + <xsl:with-param name="style" select="$table.frame.border.style"/> + <xsl:with-param name="color" select="$table.frame.border.color"/> + <xsl:with-param name="thickness" select="$table.frame.border.thickness"/> </xsl:call-template> <xsl:call-template name="border"> <xsl:with-param name="side" select="'bottom'"/> + <xsl:with-param name="style" select="$table.frame.border.style"/> + <xsl:with-param name="color" select="$table.frame.border.color"/> + <xsl:with-param name="thickness" select="$table.frame.border.thickness"/> </xsl:call-template> </xsl:attribute> </xsl:when> @@ -158,6 +262,9 @@ <xsl:text>border-collapse: collapse;</xsl:text> <xsl:call-template name="border"> <xsl:with-param name="side" select="'top'"/> + <xsl:with-param name="style" select="$table.frame.border.style"/> + <xsl:with-param name="color" select="$table.frame.border.color"/> + <xsl:with-param name="thickness" select="$table.frame.border.thickness"/> </xsl:call-template> </xsl:attribute> </xsl:when> @@ -166,6 +273,9 @@ <xsl:text>border-collapse: collapse;</xsl:text> <xsl:call-template name="border"> <xsl:with-param name="side" select="'bottom'"/> + <xsl:with-param name="style" select="$table.frame.border.style"/> + <xsl:with-param name="color" select="$table.frame.border.color"/> + <xsl:with-param name="thickness" select="$table.frame.border.thickness"/> </xsl:call-template> </xsl:attribute> </xsl:when> @@ -174,9 +284,15 @@ <xsl:text>border-collapse: collapse;</xsl:text> <xsl:call-template name="border"> <xsl:with-param name="side" select="'left'"/> + <xsl:with-param name="style" select="$table.frame.border.style"/> + <xsl:with-param name="color" select="$table.frame.border.color"/> + <xsl:with-param name="thickness" select="$table.frame.border.thickness"/> </xsl:call-template> <xsl:call-template name="border"> <xsl:with-param name="side" select="'right'"/> + <xsl:with-param name="style" select="$table.frame.border.style"/> + <xsl:with-param name="color" select="$table.frame.border.color"/> + <xsl:with-param name="thickness" select="$table.frame.border.thickness"/> </xsl:call-template> </xsl:attribute> </xsl:when> @@ -265,6 +381,9 @@ <xsl:when test="function-available('xtbl:adjustColumnWidths')"> <xsl:copy-of select="xtbl:adjustColumnWidths($colgroup)"/> </xsl:when> + <xsl:when test="function-available('ptbl:adjustColumnWidths')"> + <xsl:copy-of select="ptbl:adjustColumnWidths($colgroup)"/> + </xsl:when> <xsl:otherwise> <xsl:message terminate="yes"> <xsl:text>No adjustColumnWidths function available.</xsl:text> @@ -394,6 +513,12 @@ </xsl:variable> <tr> + <xsl:call-template name="tr.attributes"> + <xsl:with-param name="rownum"> + <xsl:number from="tgroup" count="row"/> + </xsl:with-param> + </xsl:call-template> + <xsl:if test="$row-height != ''"> <xsl:attribute name="height"> <xsl:value-of select="$row-height"/> @@ -431,14 +556,14 @@ </xsl:attribute> </xsl:if> - <xsl:apply-templates select="entry[1]"> + <xsl:apply-templates select="(entry|entrytbl)[1]"> <xsl:with-param name="spans" select="$spans"/> </xsl:apply-templates> </tr> <xsl:if test="following-sibling::row"> <xsl:variable name="nextspans"> - <xsl:apply-templates select="entry[1]" mode="span"> + <xsl:apply-templates select="(entry|entrytbl)[1]" mode="span"> <xsl:with-param name="spans" select="$spans"/> </xsl:apply-templates> </xsl:variable> @@ -449,7 +574,7 @@ </xsl:if> </xsl:template> -<xsl:template match="entry" name="entry"> +<xsl:template match="entry|entrytbl" name="entry"> <xsl:param name="col" select="1"/> <xsl:param name="spans"/> @@ -575,6 +700,12 @@ </xsl:attribute> </xsl:if> + <xsl:if test="$entry.propagates.style != 0 and @role"> + <xsl:attribute name="class"> + <xsl:value-of select="@role"/> + </xsl:attribute> + </xsl:if> + <xsl:if test="$show.revisionflag and @revisionflag"> <xsl:attribute name="class"> <xsl:value-of select="@revisionflag"/> @@ -644,6 +775,9 @@ <xsl:when test="$empty.cell"> <xsl:text> </xsl:text> </xsl:when> + <xsl:when test="self::entrytbl"> + <xsl:call-template name="tgroup"/> + </xsl:when> <xsl:otherwise> <xsl:apply-templates/> </xsl:otherwise> @@ -651,8 +785,9 @@ </xsl:element> <xsl:choose> - <xsl:when test="following-sibling::entry"> - <xsl:apply-templates select="following-sibling::entry[1]"> + <xsl:when test="following-sibling::entry|following-sibling::entrytbl"> + <xsl:apply-templates select="(following-sibling::entry + |following-sibling::entrytbl)[1]"> <xsl:with-param name="col" select="$col+$entry.colspan"/> <xsl:with-param name="spans" select="$following.spans"/> </xsl:apply-templates> @@ -668,7 +803,7 @@ </xsl:choose> </xsl:template> -<xsl:template match="entry" name="sentry" mode="span"> +<xsl:template match="entry|entrytbl" name="sentry" mode="span"> <xsl:param name="col" select="1"/> <xsl:param name="spans"/> @@ -725,8 +860,9 @@ </xsl:call-template> <xsl:choose> - <xsl:when test="following-sibling::entry"> - <xsl:apply-templates select="following-sibling::entry[1]" + <xsl:when test="following-sibling::entry|following-sibling::entrytbl"> + <xsl:apply-templates select="(following-sibling::entry + |following-sibling::entrytbl)[1]" mode="span"> <xsl:with-param name="col" select="$col+$entry.colspan"/> <xsl:with-param name="spans" select="$following.spans"/> @@ -839,7 +975,6 @@ </xsl:choose> </xsl:otherwise> </xsl:choose> - </xsl:template> <xsl:template name="colspec.colwidth"> @@ -866,6 +1001,21 @@ </xsl:choose> </xsl:otherwise> </xsl:choose> +</xsl:template> + +<!-- ====================================================================== --> + +<xsl:template name="tr.attributes"> + <xsl:param name="row" select="."/> + <xsl:param name="rownum" select="0"/> + + <!-- by default, do nothing. But you might want to say: + + <xsl:if test="$rownum mod 2 = 0"> + <xsl:attribute name="class">oddrow</xsl:attribute> + </xsl:if> + + --> </xsl:template> </xsl:stylesheet> Index: phpdoc/xsl/docbook/html/titlepage.templates.xml diff -u phpdoc/xsl/docbook/html/titlepage.templates.xml:1.1 phpdoc/xsl/docbook/html/titlepage.templates.xml:1.2 --- phpdoc/xsl/docbook/html/titlepage.templates.xml:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/titlepage.templates.xml Sun Mar 9 09:56:38 2003 @@ -4,8 +4,8 @@ <!-- ==================================================================== --> -<t:titlepage element="article" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="article" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -21,24 +21,24 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> <hr/> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> -<t:titlepage element="set" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="set" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -54,24 +54,24 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> <hr/> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> -<t:titlepage element="book" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="book" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -87,24 +87,24 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> <hr/> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> -<t:titlepage element="part" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="part" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -120,21 +120,21 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> -<t:titlepage element="partintro" wrapper="div"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="partintro" t:wrapper="div"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -150,23 +150,23 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> -<t:titlepage element="reference" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="reference" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -182,71 +182,71 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> <hr/> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> -<t:titlepage element="refentry" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="refentry" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <!-- uncomment this if you want refentry titlepages - <title force="1" - named-template="refentry.title" + <title t:force="1" + t:named-template="refentry.title" param:node="ancestor-or-self::refentry[1]"/> --> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator/> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> - <t:titlepage element="dedication" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> + <t:titlepage t:element="dedication" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title - force="1" - named-template="component.title" + t:force="1" + t:named-template="component.title" param:node="ancestor-or-self::dedication[1]"/> <subtitle/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> -<t:titlepage element="preface" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="preface" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -262,23 +262,23 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> -<t:titlepage element="chapter" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="chapter" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -294,23 +294,23 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> -<t:titlepage element="appendix" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="appendix" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -326,23 +326,23 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> -<t:titlepage element="section" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="section" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -358,22 +358,22 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> <xsl:if test="count(parent::*)='0'"><hr/></xsl:if> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> -<t:titlepage element="sect1" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="sect1" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -389,22 +389,22 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> <xsl:if test="count(parent::*)='0'"><hr/></xsl:if> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> -<t:titlepage element="sect2" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="sect2" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -420,22 +420,22 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> <xsl:if test="count(parent::*)='0'"><hr/></xsl:if> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> -<t:titlepage element="sect3" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="sect3" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -451,22 +451,22 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> <xsl:if test="count(parent::*)='0'"><hr/></xsl:if> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> -<t:titlepage element="sect4" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="sect4" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -482,22 +482,22 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> <xsl:if test="count(parent::*)='0'"><hr/></xsl:if> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> -<t:titlepage element="sect5" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="sect5" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -513,22 +513,22 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> <xsl:if test="count(parent::*)='0'"><hr/></xsl:if> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> -<t:titlepage element="simplesect" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="simplesect" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title/> <subtitle/> <corpauthor/> @@ -544,89 +544,113 @@ <abstract/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> <xsl:if test="count(parent::*)='0'"><hr/></xsl:if> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> -<t:titlepage element="bibliography" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="bibliography" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title - force="1" - named-template="component.title" + t:force="1" + t:named-template="component.title" param:node="ancestor-or-self::bibliography[1]"/> <subtitle/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> -<t:titlepage element="glossary" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="glossary" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title - force="1" - named-template="component.title" + t:force="1" + t:named-template="component.title" param:node="ancestor-or-self::glossary[1]"/> <subtitle/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> <!-- ==================================================================== --> -<t:titlepage element="index" wrapper="div" class="titlepage"> - <t:titlepage-content side="recto"> +<t:titlepage t:element="index" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> <title - force="1" - named-template="component.title" + t:force="1" + t:named-template="component.title" param:node="ancestor-or-self::index[1]"/> <subtitle/> </t:titlepage-content> - <t:titlepage-content side="verso"> + <t:titlepage-content t:side="verso"> </t:titlepage-content> <t:titlepage-separator> </t:titlepage-separator> - <t:titlepage-before side="recto"> + <t:titlepage-before t:side="recto"> </t:titlepage-before> - <t:titlepage-before side="verso"> + <t:titlepage-before t:side="verso"> + </t:titlepage-before> +</t:titlepage> + +<!-- ==================================================================== --> + +<t:titlepage t:element="setindex" t:wrapper="div" class="titlepage"> + <t:titlepage-content t:side="recto"> + <title + t:force="1" + t:named-template="component.title" + param:node="ancestor-or-self::setindex[1]"/> + <subtitle/> + </t:titlepage-content> + + <t:titlepage-content t:side="verso"> + </t:titlepage-content> + + <t:titlepage-separator> + </t:titlepage-separator> + + <t:titlepage-before t:side="recto"> + </t:titlepage-before> + + <t:titlepage-before t:side="verso"> </t:titlepage-before> </t:titlepage> Index: phpdoc/xsl/docbook/html/titlepage.templates.xsl diff -u phpdoc/xsl/docbook/html/titlepage.templates.xsl:1.1 phpdoc/xsl/docbook/html/titlepage.templates.xsl:1.2 --- phpdoc/xsl/docbook/html/titlepage.templates.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/titlepage.templates.xsl Sun Mar 9 09:56:38 2003 @@ -65,10 +65,14 @@ <xsl:template name="article.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="article.titlepage.before.recto"/> <xsl:call-template name="article.titlepage.recto"/> + </div> + <div> <xsl:call-template name="article.titlepage.before.verso"/> <xsl:call-template name="article.titlepage.verso"/> + </div> <xsl:call-template name="article.titlepage.separator"/> </div> </xsl:template> @@ -209,10 +213,14 @@ <xsl:template name="set.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="set.titlepage.before.recto"/> <xsl:call-template name="set.titlepage.recto"/> + </div> + <div> <xsl:call-template name="set.titlepage.before.verso"/> <xsl:call-template name="set.titlepage.verso"/> + </div> <xsl:call-template name="set.titlepage.separator"/> </div> </xsl:template> @@ -353,10 +361,14 @@ <xsl:template name="book.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="book.titlepage.before.recto"/> <xsl:call-template name="book.titlepage.recto"/> + </div> + <div> <xsl:call-template name="book.titlepage.before.verso"/> <xsl:call-template name="book.titlepage.verso"/> + </div> <xsl:call-template name="book.titlepage.separator"/> </div> </xsl:template> @@ -514,10 +526,14 @@ <xsl:template name="part.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="part.titlepage.before.recto"/> <xsl:call-template name="part.titlepage.recto"/> + </div> + <div> <xsl:call-template name="part.titlepage.before.verso"/> <xsl:call-template name="part.titlepage.verso"/> + </div> <xsl:call-template name="part.titlepage.separator"/> </div> </xsl:template> @@ -675,10 +691,14 @@ <xsl:template name="partintro.titlepage"> <div> + <div> <xsl:call-template name="partintro.titlepage.before.recto"/> <xsl:call-template name="partintro.titlepage.recto"/> + </div> + <div> <xsl:call-template name="partintro.titlepage.before.verso"/> <xsl:call-template name="partintro.titlepage.verso"/> + </div> <xsl:call-template name="partintro.titlepage.separator"/> </div> </xsl:template> @@ -836,10 +856,14 @@ <xsl:template name="reference.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="reference.titlepage.before.recto"/> <xsl:call-template name="reference.titlepage.recto"/> + </div> + <div> <xsl:call-template name="reference.titlepage.before.verso"/> <xsl:call-template name="reference.titlepage.verso"/> + </div> <xsl:call-template name="reference.titlepage.separator"/> </div> </xsl:template> @@ -951,10 +975,14 @@ <xsl:template name="refentry.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="refentry.titlepage.before.recto"/> <xsl:call-template name="refentry.titlepage.recto"/> + </div> + <div> <xsl:call-template name="refentry.titlepage.before.verso"/> <xsl:call-template name="refentry.titlepage.verso"/> + </div> <xsl:call-template name="refentry.titlepage.separator"/> </div> </xsl:template> @@ -1004,10 +1032,14 @@ <xsl:template name="dedication.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="dedication.titlepage.before.recto"/> <xsl:call-template name="dedication.titlepage.recto"/> + </div> + <div> <xsl:call-template name="dedication.titlepage.before.verso"/> <xsl:call-template name="dedication.titlepage.verso"/> + </div> <xsl:call-template name="dedication.titlepage.separator"/> </div> </xsl:template> @@ -1093,10 +1125,14 @@ <xsl:template name="preface.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="preface.titlepage.before.recto"/> <xsl:call-template name="preface.titlepage.recto"/> + </div> + <div> <xsl:call-template name="preface.titlepage.before.verso"/> <xsl:call-template name="preface.titlepage.verso"/> + </div> <xsl:call-template name="preface.titlepage.separator"/> </div> </xsl:template> @@ -1254,10 +1290,14 @@ <xsl:template name="chapter.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="chapter.titlepage.before.recto"/> <xsl:call-template name="chapter.titlepage.recto"/> + </div> + <div> <xsl:call-template name="chapter.titlepage.before.verso"/> <xsl:call-template name="chapter.titlepage.verso"/> + </div> <xsl:call-template name="chapter.titlepage.separator"/> </div> </xsl:template> @@ -1415,10 +1455,14 @@ <xsl:template name="appendix.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="appendix.titlepage.before.recto"/> <xsl:call-template name="appendix.titlepage.recto"/> + </div> + <div> <xsl:call-template name="appendix.titlepage.before.verso"/> <xsl:call-template name="appendix.titlepage.verso"/> + </div> <xsl:call-template name="appendix.titlepage.separator"/> </div> </xsl:template> @@ -1559,10 +1603,14 @@ <xsl:template name="section.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="section.titlepage.before.recto"/> <xsl:call-template name="section.titlepage.recto"/> + </div> + <div> <xsl:call-template name="section.titlepage.before.verso"/> <xsl:call-template name="section.titlepage.verso"/> + </div> <xsl:call-template name="section.titlepage.separator"/> </div> </xsl:template> @@ -1703,10 +1751,14 @@ <xsl:template name="sect1.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="sect1.titlepage.before.recto"/> <xsl:call-template name="sect1.titlepage.recto"/> + </div> + <div> <xsl:call-template name="sect1.titlepage.before.verso"/> <xsl:call-template name="sect1.titlepage.verso"/> + </div> <xsl:call-template name="sect1.titlepage.separator"/> </div> </xsl:template> @@ -1847,10 +1899,14 @@ <xsl:template name="sect2.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="sect2.titlepage.before.recto"/> <xsl:call-template name="sect2.titlepage.recto"/> + </div> + <div> <xsl:call-template name="sect2.titlepage.before.verso"/> <xsl:call-template name="sect2.titlepage.verso"/> + </div> <xsl:call-template name="sect2.titlepage.separator"/> </div> </xsl:template> @@ -1991,10 +2047,14 @@ <xsl:template name="sect3.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="sect3.titlepage.before.recto"/> <xsl:call-template name="sect3.titlepage.recto"/> + </div> + <div> <xsl:call-template name="sect3.titlepage.before.verso"/> <xsl:call-template name="sect3.titlepage.verso"/> + </div> <xsl:call-template name="sect3.titlepage.separator"/> </div> </xsl:template> @@ -2135,10 +2195,14 @@ <xsl:template name="sect4.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="sect4.titlepage.before.recto"/> <xsl:call-template name="sect4.titlepage.recto"/> + </div> + <div> <xsl:call-template name="sect4.titlepage.before.verso"/> <xsl:call-template name="sect4.titlepage.verso"/> + </div> <xsl:call-template name="sect4.titlepage.separator"/> </div> </xsl:template> @@ -2279,10 +2343,14 @@ <xsl:template name="sect5.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="sect5.titlepage.before.recto"/> <xsl:call-template name="sect5.titlepage.recto"/> + </div> + <div> <xsl:call-template name="sect5.titlepage.before.verso"/> <xsl:call-template name="sect5.titlepage.verso"/> + </div> <xsl:call-template name="sect5.titlepage.separator"/> </div> </xsl:template> @@ -2440,10 +2508,14 @@ <xsl:template name="simplesect.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="simplesect.titlepage.before.recto"/> <xsl:call-template name="simplesect.titlepage.recto"/> + </div> + <div> <xsl:call-template name="simplesect.titlepage.before.verso"/> <xsl:call-template name="simplesect.titlepage.verso"/> + </div> <xsl:call-template name="simplesect.titlepage.separator"/> </div> </xsl:template> @@ -2571,10 +2643,14 @@ <xsl:template name="bibliography.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="bibliography.titlepage.before.recto"/> <xsl:call-template name="bibliography.titlepage.recto"/> + </div> + <div> <xsl:call-template name="bibliography.titlepage.before.verso"/> <xsl:call-template name="bibliography.titlepage.verso"/> + </div> <xsl:call-template name="bibliography.titlepage.separator"/> </div> </xsl:template> @@ -2630,10 +2706,14 @@ <xsl:template name="glossary.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="glossary.titlepage.before.recto"/> <xsl:call-template name="glossary.titlepage.recto"/> + </div> + <div> <xsl:call-template name="glossary.titlepage.before.verso"/> <xsl:call-template name="glossary.titlepage.verso"/> + </div> <xsl:call-template name="glossary.titlepage.separator"/> </div> </xsl:template> @@ -2689,10 +2769,14 @@ <xsl:template name="index.titlepage"> <div class="titlepage"> + <div> <xsl:call-template name="index.titlepage.before.recto"/> <xsl:call-template name="index.titlepage.recto"/> + </div> + <div> <xsl:call-template name="index.titlepage.before.verso"/> <xsl:call-template name="index.titlepage.verso"/> + </div> <xsl:call-template name="index.titlepage.separator"/> </div> </xsl:template> @@ -2712,6 +2796,69 @@ <xsl:template match="subtitle" mode="index.titlepage.recto.auto.mode"> <div xsl:use-attribute-sets="index.titlepage.recto.style"> <xsl:apply-templates select="." mode="index.titlepage.recto.mode"/> +</div> +</xsl:template> + +<xsl:template name="setindex.titlepage.recto"> + <div xsl:use-attribute-sets="setindex.titlepage.recto.style"> +<xsl:call-template name="component.title"> +<xsl:with-param name="node" select="ancestor-or-self::setindex[1]"/> +</xsl:call-template></div> + <xsl:choose> + <xsl:when test="setindexinfo/subtitle"> + <xsl:apply-templates mode="setindex.titlepage.recto.auto.mode" select="setindexinfo/subtitle"/> + </xsl:when> + <xsl:when test="docinfo/subtitle"> + <xsl:apply-templates mode="setindex.titlepage.recto.auto.mode" select="docinfo/subtitle"/> + </xsl:when> + <xsl:when test="subtitle"> + <xsl:apply-templates mode="setindex.titlepage.recto.auto.mode" select="subtitle"/> + </xsl:when> + </xsl:choose> + +</xsl:template> + +<xsl:template name="setindex.titlepage.verso"> +</xsl:template> + +<xsl:template name="setindex.titlepage.separator"> +</xsl:template> + +<xsl:template name="setindex.titlepage.before.recto"> +</xsl:template> + +<xsl:template name="setindex.titlepage.before.verso"> +</xsl:template> + +<xsl:template name="setindex.titlepage"> + <div class="titlepage"> + <div> + <xsl:call-template name="setindex.titlepage.before.recto"/> + <xsl:call-template name="setindex.titlepage.recto"/> + </div> + <div> + <xsl:call-template name="setindex.titlepage.before.verso"/> + <xsl:call-template name="setindex.titlepage.verso"/> + </div> + <xsl:call-template name="setindex.titlepage.separator"/> + </div> +</xsl:template> + +<xsl:template match="*" mode="setindex.titlepage.recto.mode"> + <!-- if an element isn't found in this mode, --> + <!-- try the generic titlepage.mode --> + <xsl:apply-templates select="." mode="titlepage.mode"/> +</xsl:template> + +<xsl:template match="*" mode="setindex.titlepage.verso.mode"> + <!-- if an element isn't found in this mode, --> + <!-- try the generic titlepage.mode --> + <xsl:apply-templates select="." mode="titlepage.mode"/> +</xsl:template> + +<xsl:template match="subtitle" mode="setindex.titlepage.recto.auto.mode"> +<div xsl:use-attribute-sets="setindex.titlepage.recto.style"> +<xsl:apply-templates select="." mode="setindex.titlepage.recto.mode"/> </div> </xsl:template> Index: phpdoc/xsl/docbook/html/titlepage.xsl diff -u phpdoc/xsl/docbook/html/titlepage.xsl:1.1 phpdoc/xsl/docbook/html/titlepage.xsl:1.2 --- phpdoc/xsl/docbook/html/titlepage.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/titlepage.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: titlepage.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: titlepage.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -56,6 +56,9 @@ <xsl:attribute-set name="index.titlepage.recto.style"/> <xsl:attribute-set name="index.titlepage.verso.style"/> +<xsl:attribute-set name="setindex.titlepage.recto.style"/> +<xsl:attribute-set name="setindex.titlepage.verso.style"/> + <xsl:attribute-set name="section.titlepage.recto.style"/> <xsl:attribute-set name="section.titlepage.verso.style"/> @@ -149,19 +152,25 @@ and $use.extensions != '0' and $linenumbering.extension != '0'"> <div class="{name(.)}"> - <p> - <xsl:call-template name="number.rtf.lines"> - <xsl:with-param name="rtf" select="$rtf"/> - </xsl:call-template> - </p> + <xsl:call-template name="paragraph"> + <xsl:with-param name="content"> + <xsl:call-template name="number.rtf.lines"> + <xsl:with-param name="rtf" select="$rtf"/> + </xsl:call-template> + </xsl:with-param> + </xsl:call-template> </div> </xsl:when> <xsl:otherwise> <div class="{name(.)}"> - <p> - <xsl:apply-templates mode="titlepage.mode"/> - </p> + <xsl:call-template name="paragraph"> + <xsl:with-param name="content"> + <xsl:call-template name="make-verbatim"> + <xsl:with-param name="rtf" select="$rtf"/> + </xsl:call-template> + </xsl:with-param> + </xsl:call-template> </div> </xsl:otherwise> </xsl:choose> @@ -429,7 +438,7 @@ <xsl:template match="keywordset" mode="titlepage.mode"> </xsl:template> -<xsl:template match="legalnotice " mode="titlepage.mode"> +<xsl:template match="legalnotice" mode="titlepage.mode"> <xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable> <xsl:choose> <xsl:when test="$generate.legalnotice.link != 0"> @@ -444,7 +453,7 @@ <xsl:apply-templates select="." mode="title.markup"/> </xsl:variable> - <a href="{$filename}"> + <a href="{concat('ln-',$id,$html.ext)}"> <xsl:copy-of select="$title"/> </a> @@ -454,7 +463,9 @@ <xsl:with-param name="content"> <html> <head> - <title><xsl:value-of select="$title"/></title> + <xsl:call-template name="system.head.content"/> + <xsl:call-template name="head.content"/> + <xsl:call-template name="user.head.content"/> </head> <body> <xsl:call-template name="body.attributes"/> @@ -507,17 +518,25 @@ <xsl:choose> <xsl:when test="contrib"> <xsl:if test="not(preceding-sibling::othercredit[string(contrib)=$contrib])"> - <p class="{name(.)}"> - <xsl:apply-templates mode="titlepage.mode" select="contrib"/> - <xsl:text>: </xsl:text> - <xsl:call-template name="person.name"/> - <xsl:apply-templates mode="titlepage.mode" select="./affiliation"/> - <xsl:apply-templates select="following-sibling::othercredit[string(contrib)=$contrib]" mode="titlepage.othercredits"/> - </p> + <xsl:call-template name="paragraph"> + <xsl:with-param name="class" select="name(.)"/> + <xsl:with-param name="content"> + <xsl:apply-templates mode="titlepage.mode" select="contrib"/> + <xsl:text>: </xsl:text> + <xsl:call-template name="person.name"/> + <xsl:apply-templates mode="titlepage.mode" select="./affiliation"/> + <xsl:apply-templates select="following-sibling::othercredit[string(contrib)=$contrib]" mode="titlepage.othercredits"/> + </xsl:with-param> + </xsl:call-template> </xsl:if> </xsl:when> <xsl:otherwise> - <p class="{name(.)}"><xsl:call-template name="person.name"/></p> + <xsl:call-template name="paragraph"> + <xsl:with-param name="class" select="name(.)"/> + <xsl:with-param name="content"> + <xsl:call-template name="person.name"/> + </xsl:with-param> + </xsl:call-template> <xsl:apply-templates mode="titlepage.mode" select="./affiliation"/> </xsl:otherwise> </xsl:choose> @@ -563,15 +582,21 @@ </xsl:template> <xsl:template match="pubdate" mode="titlepage.mode"> - <p class="{name(.)}"> - <xsl:apply-templates mode="titlepage.mode"/> - </p> + <xsl:call-template name="paragraph"> + <xsl:with-param name="class" select="name(.)"/> + <xsl:with-param name="content"> + <xsl:apply-templates mode="titlepage.mode"/> + </xsl:with-param> + </xsl:call-template> </xsl:template> <xsl:template match="publisher" mode="titlepage.mode"> - <p class="{name(.)}"> - <xsl:apply-templates mode="titlepage.mode"/> - </p> + <xsl:call-template name="paragraph"> + <xsl:with-param name="class" select="name(.)"/> + <xsl:with-param name="content"> + <xsl:apply-templates mode="titlepage.mode"/> + </xsl:with-param> + </xsl:call-template> </xsl:template> <xsl:template match="publishername" mode="titlepage.mode"> @@ -589,9 +614,12 @@ </xsl:template> <xsl:template match="releaseinfo" mode="titlepage.mode"> - <p class="{name(.)}"> - <xsl:apply-templates mode="titlepage.mode"/> - </p> + <xsl:call-template name="paragraph"> + <xsl:with-param name="class" select="name(.)"/> + <xsl:with-param name="content"> + <xsl:apply-templates mode="titlepage.mode"/> + </xsl:with-param> + </xsl:call-template> </xsl:template> <xsl:template match="revhistory" mode="titlepage.mode"> Index: phpdoc/xsl/docbook/html/toc.xsl diff -u phpdoc/xsl/docbook/html/toc.xsl:1.1 phpdoc/xsl/docbook/html/toc.xsl:1.2 --- phpdoc/xsl/docbook/html/toc.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/toc.xsl Sun Mar 9 09:56:38 2003 @@ -3,7 +3,7 @@ version='1.0'> <!-- ******************************************************************** - $Id: toc.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: toc.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. Index: phpdoc/xsl/docbook/html/verbatim.xsl diff -u phpdoc/xsl/docbook/html/verbatim.xsl:1.1 phpdoc/xsl/docbook/html/verbatim.xsl:1.2 --- phpdoc/xsl/docbook/html/verbatim.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/verbatim.xsl Sun Mar 9 09:56:38 2003 @@ -3,11 +3,12 @@ xmlns:sverb="http://nwalsh.com/xslt/ext/com.nwalsh.saxon.Verbatim" xmlns:xverb="com.nwalsh.xalan.Verbatim" xmlns:lxslt="http://xml.apache.org/xslt" - exclude-result-prefixes="sverb xverb lxslt" + xmlns:exsl="http://exslt.org/common" + exclude-result-prefixes="sverb xverb lxslt exsl" version='1.0'> <!-- ******************************************************************** - $Id: verbatim.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: verbatim.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -91,11 +92,7 @@ <div class="{name(.)}"> <p> <xsl:call-template name="number.rtf.lines"> - <xsl:with-param name="rtf"> - <xsl:call-template name="make-verbatim"> - <xsl:with-param name="text" select="translate($rtf,' ',' ')"/> - </xsl:call-template> - </xsl:with-param> + <xsl:with-param name="rtf" select="$rtf"/> </xsl:call-template> </p> </div> @@ -114,7 +111,7 @@ <div class="{name(.)}"> <p> <xsl:call-template name="make-verbatim"> - <xsl:with-param name="text" select="translate($rtf,' ',' ')"/> + <xsl:with-param name="rtf" select="$rtf"/> </xsl:call-template> </p> </div> @@ -140,13 +137,6 @@ </xsl:choose> </xsl:template> -<xsl:template match="literallayout[not(@class) - or @class != 'monospaced']//text()"> - <xsl:call-template name="make-verbatim"> - <xsl:with-param name="text" select="translate(.,' ',' ')"/> - </xsl:call-template> -</xsl:template> - <xsl:template match="address"> <xsl:param name="suppress-numbers" select="'0'"/> @@ -171,7 +161,9 @@ <xsl:otherwise> <div class="{name(.)}"> <p> - <xsl:apply-templates/> + <xsl:call-template name="make-verbatim"> + <xsl:with-param name="rtf" select="$rtf"/> + </xsl:call-template> </p> </div> </xsl:otherwise> @@ -266,47 +258,21 @@ </xsl:choose> </xsl:template> -<xsl:template match="address//text()"> - <xsl:call-template name="make-verbatim"> - <xsl:with-param name="text" select="translate(.,' ',' ')"/> - </xsl:call-template> -</xsl:template> - <xsl:template name="make-verbatim"> - <xsl:param name="text" select="''"/> - - <xsl:call-template name="make-verbatim-recursive"> - <xsl:with-param name="text" select="translate($text, ' ', ' ')"/> - </xsl:call-template> -</xsl:template> + <xsl:param name="rtf"/> -<xsl:template name="make-verbatim-recursive"> - <xsl:param name="text" select="''"/> + <!-- I want to make this RTF verbatim. There are two possibilities: either + I have access to the exsl:node-set extension function and I can "do it right" + or I have to rely on CSS. --> <xsl:choose> - <xsl:when test="not(contains($text, '
'))"> - <xsl:value-of select="$text"/> + <xsl:when test="function-available('exsl:node-set')"> + <xsl:apply-templates select="exsl:node-set($rtf)" mode="make.verbatim.mode"/> </xsl:when> - <xsl:otherwise> - <xsl:variable name="len" select="string-length($text)"/> - - <xsl:choose> - <xsl:when test="$len = 1"> - <br/><xsl:text>
</xsl:text> - </xsl:when> - - <xsl:otherwise> - <xsl:variable name="half" select="$len div 2"/> - <xsl:call-template name="make-verbatim-recursive"> - <xsl:with-param name="text" select="substring($text, 1, $half)"/> - </xsl:call-template> - <xsl:call-template name="make-verbatim-recursive"> - <xsl:with-param name="text" - select="substring($text, ($half + 1), $len)"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> + <span style="white-space: pre;"> + <xsl:copy-of select="$rtf"/> + </span> </xsl:otherwise> </xsl:choose> </xsl:template> Index: phpdoc/xsl/docbook/html/xref.xsl diff -u phpdoc/xsl/docbook/html/xref.xsl:1.1 phpdoc/xsl/docbook/html/xref.xsl:1.2 --- phpdoc/xsl/docbook/html/xref.xsl:1.1 Tue Aug 13 11:51:37 2002 +++ phpdoc/xsl/docbook/html/xref.xsl Sun Mar 9 09:56:38 2003 @@ -1,11 +1,12 @@ <?xml version='1.0'?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" - exclude-result-prefixes="doc" + xmlns:suwl="http://nwalsh.com/xslt/ext/com.nwalsh.saxon.UnwrapLinks" + xmlns:exsl="http://exslt.org/common" + exclude-result-prefixes="suwl exsl" version='1.0'> <!-- ******************************************************************** - $Id: xref.xsl,v 1.1 2002/08/13 15:51:37 goba Exp $ + $Id: xref.xsl,v 1.2 2003/03/09 14:56:38 tom Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. @@ -16,6 +17,11 @@ <!-- ==================================================================== --> +<!-- Create keys for quickly looking up olink targets --> +<xsl:key name="targetdoc-key" match="document" use="@targetdoc" /> +<xsl:key name="targetptr-key" match="div|obj" + use="concat(ancestor::document/@targetdoc, '/', @targetptr)" /> + <xsl:template match="anchor"> <xsl:call-template name="anchor"/> </xsl:template> @@ -42,6 +48,34 @@ <xsl:text>???</xsl:text> </xsl:when> + <xsl:when test="@endterm"> + <xsl:variable name="href"> + <xsl:call-template name="href.target"> + <xsl:with-param name="object" select="$target"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="etargets" select="key('id',@endterm)"/> + <xsl:variable name="etarget" select="$etargets[1]"/> + <xsl:choose> + <xsl:when test="count($etarget) = 0"> + <xsl:message> + <xsl:value-of select="count($etargets)"/> + <xsl:text>Endterm points to nonexistent ID: </xsl:text> + <xsl:value-of select="@endterm"/> + </xsl:message> + <a href="{$href}"> + <xsl:text>???</xsl:text> + </a> + </xsl:when> + <xsl:otherwise> + <a href="{$href}"> + <xsl:apply-templates select="$etarget" mode="endterm"/> + </a> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:when test="$target/@xreflabel"> <a> <xsl:attribute name="href"> @@ -62,51 +96,98 @@ </xsl:call-template> </xsl:variable> - <xsl:choose> - <xsl:when test="@endterm"> - <xsl:variable name="etargets" select="key('id',@endterm)"/> - <xsl:variable name="etarget" select="$etargets[1]"/> - <xsl:choose> - <xsl:when test="count($etarget) = 0"> - <xsl:message> - <xsl:value-of select="count($etargets)"/> - <xsl:text>Endterm points to nonexistent ID: </xsl:text> - <xsl:value-of select="@endterm"/> - </xsl:message> - <a href="{$href}"> - <xsl:text>???</xsl:text> - </a> - </xsl:when> - <xsl:otherwise> - <a href="{$href}"> - <xsl:apply-templates select="$etarget" mode="endterm"/> - </a> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - - <xsl:otherwise> - <xsl:apply-templates select="$target" mode="xref-to-prefix"/> + <xsl:apply-templates select="$target" mode="xref-to-prefix"/> - <a href="{$href}"> - <xsl:if test="$target/title or $target/*/title"> - <xsl:attribute name="title"> - <xsl:apply-templates select="$target" mode="xref-title"/> - </xsl:attribute> - </xsl:if> - <xsl:apply-templates select="$target" mode="xref-to"/> - </a> + <a href="{$href}"> + <xsl:if test="$target/title or $target/*/title"> + <xsl:attribute name="title"> + <xsl:apply-templates select="$target" mode="xref-title"/> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates select="$target" mode="xref-to"> + <xsl:with-param name="referrer" select="."/> + <xsl:with-param name="xrefstyle"> + <xsl:choose> + <xsl:when test="@role and not(@xrefstyle) and $use.role.as.xrefstyle != 0"> + <xsl:value-of select="@role"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="@xrefstyle"/> + </xsl:otherwise> + </xsl:choose> + </xsl:with-param> + </xsl:apply-templates> + </a> - <xsl:apply-templates select="$target" mode="xref-to-suffix"/> - </xsl:otherwise> - </xsl:choose> + <xsl:apply-templates select="$target" mode="xref-to-suffix"/> </xsl:otherwise> </xsl:choose> </xsl:template> +<!-- ==================================================================== --> + <xsl:template match="*" mode="endterm"> <!-- Process the children of the endterm element --> - <xsl:apply-templates select="child::node()"/> + <xsl:variable name="endterm"> + <xsl:apply-templates select="child::node()"/> + </xsl:variable> + + <xsl:choose> + <xsl:when test="function-available('exsl:node-set')"> + <xsl:apply-templates select="exsl:node-set($endterm)" mode="remove-ids"/> + </xsl:when> + <xsl:otherwise> + <xsl:copy-of select="$endterm"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="*" mode="remove-ids"> + <xsl:choose> + <!-- handle html or xhtml --> + <xsl:when test="local-name(.) = 'a' + and (namespace-uri(.) = '' + or namespace-uri(.) = 'http://www.w3.org/1999/xhtml')"> + <xsl:choose> + <xsl:when test="(@name and count(@*) = 1) + or (@id and count(@*) = 1) + or (@id and @name and count(@*) = 2)"> + <xsl:message>suppress anchor</xsl:message> + <!-- suppress the whole thing --> + </xsl:when> + <xsl:otherwise> + <xsl:copy> + <xsl:for-each select="@*"> + <xsl:choose> + <xsl:when test="name(.) != 'name' and name(.) != 'id'"> + <xsl:copy/> + </xsl:when> + <xsl:otherwise> + <xsl:message>removing <xsl:value-of select="name(.)"/></xsl:message> + </xsl:otherwise> + </xsl:choose> + </xsl:for-each> + </xsl:copy> + <xsl:apply-templates mode="remove-ids"/> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:otherwise> + <xsl:copy> + <xsl:for-each select="@*"> + <xsl:choose> + <xsl:when test="name(.) != 'id'"> + <xsl:copy/> + </xsl:when> + <xsl:otherwise> + <xsl:message>removing <xsl:value-of select="name(.)"/></xsl:message> + </xsl:otherwise> + </xsl:choose> + </xsl:for-each> + <xsl:apply-templates mode="remove-ids"/> + </xsl:copy> + </xsl:otherwise> + </xsl:choose> </xsl:template> <!-- ==================================================================== --> @@ -115,33 +196,45 @@ <xsl:template match="*" mode="xref-to-suffix"/> <xsl:template match="*" mode="xref-to"> - <xsl:param name="target" select="."/> - <xsl:param name="refelem" select="local-name($target)"/> - - <xsl:message> - <xsl:text>Don't know what gentext to create for xref to: "</xsl:text> - <xsl:value-of select="$refelem"/> - <xsl:text>", ("</xsl:text> - <xsl:value-of select="@id"/> - <xsl:text>")</xsl:text> - </xsl:message> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + <xsl:param name="verbose" select="1"/> + + <xsl:if test="$verbose"> + <xsl:message> + <xsl:text>Don't know what gentext to create for xref to: "</xsl:text> + <xsl:value-of select="name(.)"/> + <xsl:text>", ("</xsl:text> + <xsl:value-of select="@id"/> + <xsl:text>")</xsl:text> + </xsl:message> + </xsl:if> <xsl:text>???</xsl:text> </xsl:template> <xsl:template match="title" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + <!-- if you xref to a title, xref to the parent... --> <xsl:choose> <!-- FIXME: how reliable is this? --> <xsl:when test="contains(local-name(parent::*), 'info')"> - <xsl:apply-templates select="parent::*[2]" mode="xref-to"/> + <xsl:apply-templates select="parent::*[2]" mode="xref-to"> + <xsl:with-param name="referrer" select="$referrer"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + </xsl:apply-templates> </xsl:when> <xsl:otherwise> - <xsl:apply-templates select="parent::*" mode="xref-to"/> + <xsl:apply-templates select="parent::*" mode="xref-to"> + <xsl:with-param name="referrer" select="$referrer"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + </xsl:apply-templates> </xsl:otherwise> </xsl:choose> </xsl:template> -<xsl:template match="abstract|article|authorblurb|bibliodiv|bibliomset +<xsl:template match="abstract|authorblurb|bibliodiv|bibliomset |biblioset|blockquote|calloutlist|caution|colophon |constraintdef|formalpara|glossdiv|important|indexdiv |itemizedlist|legalnotice|lot|msg|msgexplan|msgmain @@ -149,36 +242,51 @@ |productionset|qandadiv|refsynopsisdiv|segmentedlist |set|setindex|sidebar|tip|toc|variablelist|warning" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + <!-- catch-all for things with (possibly optional) titles --> - <xsl:apply-templates select="." mode="object.xref.markup"/> + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> </xsl:template> <xsl:template match="author|editor|othercredit|personname" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + <xsl:call-template name="person.name"/> </xsl:template> <xsl:template match="authorgroup" mode="xref-to"> - <xsl:call-template name="person.name.list"/> -</xsl:template> - -<xsl:template match="figure" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> -</xsl:template> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> -<xsl:template match="example" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> -</xsl:template> - -<xsl:template match="table" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> + <xsl:call-template name="person.name.list"/> </xsl:template> -<xsl:template match="equation" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> +<xsl:template match="figure|example|table|equation" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> </xsl:template> <xsl:template match="procedure" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> </xsl:template> <xsl:template match="cmdsynopsis" mode="xref-to"> @@ -189,28 +297,26 @@ <xsl:apply-templates select="(.//function)[1]" mode="xref"/> </xsl:template> -<xsl:template match="dedication" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> -</xsl:template> - -<xsl:template match="preface" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> -</xsl:template> - -<xsl:template match="article" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> -</xsl:template> - -<xsl:template match="chapter" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> -</xsl:template> - -<xsl:template match="appendix" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> +<xsl:template match="dedication|preface|chapter|appendix|article" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> </xsl:template> <xsl:template match="bibliography" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> </xsl:template> <xsl:template match="biblioentry|bibliomixed" mode="xref-to-prefix"> @@ -222,6 +328,9 @@ </xsl:template> <xsl:template match="biblioentry|bibliomixed" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + <!-- handles both biblioentry and bibliomixed --> <xsl:choose> <xsl:when test="string(.) = ''"> @@ -231,6 +340,10 @@ <xsl:choose> <xsl:when test="$entry"> <xsl:choose> + <xsl:when test="$bibliography.numbered != 0"> + <xsl:number from="bibliography" count="biblioentry|bibliomixed" + level="any" format="1"/> + </xsl:when> <xsl:when test="local-name($entry/*[1]) = 'abbrev'"> <xsl:apply-templates select="$entry/*[1]"/> </xsl:when> @@ -252,6 +365,10 @@ </xsl:when> <xsl:otherwise> <xsl:choose> + <xsl:when test="$bibliography.numbered != 0"> + <xsl:number from="bibliography" count="biblioentry|bibliomixed" + level="any" format="1"/> + </xsl:when> <xsl:when test="local-name(*[1]) = 'abbrev'"> <xsl:apply-templates select="*[1]"/> </xsl:when> @@ -264,58 +381,145 @@ </xsl:template> <xsl:template match="glossary" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="glossentry" mode="xref-to"> + <xsl:choose> + <xsl:when test="$glossentry.show.acronym = 'primary'"> + <xsl:choose> + <xsl:when test="acronym|abbrev"> + <xsl:apply-templates select="(acronym|abbrev)[1]"/> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="glossterm[1]" mode="xref-to"/> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="glossterm[1]" mode="xref-to"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="glossterm" mode="xref-to"> + <xsl:apply-templates/> </xsl:template> <xsl:template match="index" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> </xsl:template> <xsl:template match="listitem" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> </xsl:template> <xsl:template match="section|simplesect |sect1|sect2|sect3|sect4|sect5 |refsect1|refsect2|refsect3" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> - <!-- What about "in Chapter X"? --> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> + <!-- FIXME: What about "in Chapter X"? --> </xsl:template> <xsl:template match="bridgehead" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> - <!-- What about "in Chapter X"? --> -</xsl:template> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> -<xsl:template match="qandaset" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> + <!-- FIXME: What about "in Chapter X"? --> </xsl:template> -<xsl:template match="qandadiv" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> -</xsl:template> +<xsl:template match="qandaset" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> -<xsl:template match="qandaentry" mode="xref-to"> - <xsl:apply-templates select="question[1]" mode="object.xref.markup"/> + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> </xsl:template> -<xsl:template match="question" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> -</xsl:template> +<xsl:template match="qandadiv" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> -<xsl:template match="answer" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> </xsl:template> -<xsl:template match="part" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> -</xsl:template> +<xsl:template match="qandaentry" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> -<xsl:template match="reference" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> + <xsl:apply-templates select="question[1]" mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="question|answer" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="part|reference" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> </xsl:template> <xsl:template match="refentry" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + <xsl:choose> <xsl:when test="refmeta/refentrytitle"> <xsl:apply-templates select="refmeta/refentrytitle"/> @@ -328,14 +532,26 @@ </xsl:template> <xsl:template match="refnamediv" mode="xref-to"> - <xsl:apply-templates select="refname[1]" mode="xref-to"/> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="refname[1]" mode="xref-to"> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> </xsl:template> <xsl:template match="refname" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + <xsl:apply-templates mode="xref-to"/> </xsl:template> <xsl:template match="step" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + <xsl:call-template name="gentext"> <xsl:with-param name="key" select="'Step'"/> </xsl:call-template> @@ -344,20 +560,77 @@ </xsl:template> <xsl:template match="varlistentry" mode="xref-to"> - <xsl:apply-templates select="term[1]" mode="xref-to"/> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="term[1]" mode="xref-to"> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> </xsl:template> <xsl:template match="varlistentry/term" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + <!-- to avoid the comma that will be generated if there are several terms --> <xsl:apply-templates/> </xsl:template> <xsl:template match="co" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + <xsl:apply-templates select="." mode="callout-bug"/> </xsl:template> <xsl:template match="book" mode="xref-to"> - <xsl:apply-templates select="." mode="object.xref.markup"/> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="para" mode="xref-to"> + <xsl:param name="referrer"/> + <xsl:param name="xrefstyle"/> + + <xsl:variable name="context" select="(ancestor::simplesect + |ancestor::section + |ancestor::sect1 + |ancestor::sect2 + |ancestor::sect3 + |ancestor::sect4 + |ancestor::sect5 + |ancestor::refsection + |ancestor::refsect1 + |ancestor::refsect2 + |ancestor::refsect3 + |ancestor::chapter + |ancestor::appendix + |ancestor::preface + |ancestor::partintro + |ancestor::dedication + |ancestor::colophon + |ancestor::bibliography + |ancestor::index + |ancestor::glossary + |ancestor::glossentry + |ancestor::listitem + |ancestor::varlistentry)[last()]"/> + + <xsl:apply-templates select="$context" mode="xref-to"/> +<!-- + <xsl:apply-templates select="." mode="object.xref.markup"> + <xsl:with-param name="purpose" select="'xref'"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> +--> </xsl:template> <!-- ==================================================================== --> @@ -513,7 +786,7 @@ </xsl:otherwise> </xsl:choose> </xsl:when> - + <xsl:otherwise> <xsl:message> <xsl:text>Link element has no content and no Endterm. </xsl:text> @@ -529,31 +802,46 @@ </xsl:template> <xsl:template match="ulink" name="ulink"> - <a> - <xsl:if test="@id"> - <xsl:attribute name="name"> - <xsl:value-of select="@id"/> - </xsl:attribute> - </xsl:if> - <xsl:attribute name="href"><xsl:value-of select="@url"/></xsl:attribute> - <xsl:if test="$ulink.target != ''"> - <xsl:attribute name="target"> - <xsl:value-of select="$ulink.target"/> - </xsl:attribute> - </xsl:if> - <xsl:choose> - <xsl:when test="count(child::node())=0"> - <xsl:value-of select="@url"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates/> - </xsl:otherwise> - </xsl:choose> - </a> + <xsl:variable name="link"> + <a> + <xsl:if test="@id"> + <xsl:attribute name="name"> + <xsl:value-of select="@id"/> + </xsl:attribute> + </xsl:if> + <xsl:attribute name="href"><xsl:value-of select="@url"/></xsl:attribute> + <xsl:if test="$ulink.target != ''"> + <xsl:attribute name="target"> + <xsl:value-of select="$ulink.target"/> + </xsl:attribute> + </xsl:if> + <xsl:choose> + <xsl:when test="count(child::node())=0"> + <xsl:value-of select="@url"/> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates/> + </xsl:otherwise> + </xsl:choose> + </a> + </xsl:variable> + + <xsl:choose> + <xsl:when test="function-available('suwl:unwrapLinks')"> + <xsl:copy-of select="suwl:unwrapLinks($link)"/> + </xsl:when> + <xsl:otherwise> + <xsl:copy-of select="$link"/> + </xsl:otherwise> + </xsl:choose> </xsl:template> <xsl:template match="olink" name="olink"> + <xsl:param name="target.database" + select="document($target.database.document, /)"/> + <xsl:call-template name="anchor"/> + <xsl:variable name="localinfo" select="@localinfo"/> <xsl:variable name="href"> @@ -579,6 +867,138 @@ <xsl:with-param name="return" select="'href'"/> </xsl:call-template> </xsl:when> + <!-- Olinks resolved by stylesheet and target database --> + <xsl:when test="@targetdoc and not(@targetptr)" > + <xsl:message>Olink missing @targetptr attribute value</xsl:message> + </xsl:when> + <xsl:when test="not(@targetdoc) and @targetptr" > + <xsl:message>Olink missing @targetdoc attribute value</xsl:message> + </xsl:when> + <xsl:when test="@targetdoc and @targetptr"> + <xsl:variable name="seek.targetdoc" select="@targetdoc"/> + <xsl:variable name="seek.targetptr" select="@targetptr"/> + <xsl:variable name="targetdoc.key" > + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetdoc-key', $seek.targetdoc)/@targetdoc" /> + </xsl:for-each> + </xsl:variable> + <xsl:variable name="targetptr.key" > + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetptr-key', concat($seek.targetdoc, '/', $seek.targetptr))/@targetptr" /> + </xsl:for-each> + </xsl:variable> +<!-- debug +<xsl:message>seek.targetdoc is <xsl:value-of select="$seek.targetdoc"/></xsl:message> +<xsl:message>seek.targetptr is <xsl:value-of select="$seek.targetptr"/></xsl:message> +--> + <xsl:choose> + <!-- Was the database document parameter not set? --> + <xsl:when test="$target.database.document = ''"> + <xsl:message> + <xsl:text>Olinks not processed: must specify a $target.database.document parameter + </xsl:text> + <xsl:text>when using olinks with targetdoc and targetptr attributes.</xsl:text> + </xsl:message> + </xsl:when> + <!-- Did it not open? Should be a targetset element --> + <xsl:when test="not($target.database/targetset)"> + <xsl:message>Olink error: could not open target database <xsl:value-of select="$target.database.document"/>. </xsl:message> + </xsl:when> + <!-- Does it not have this document id? --> + <xsl:when test="$targetdoc.key = ''" > + <xsl:message>Olink error: document id <xsl:value-of select="$seek.targetdoc"/> not in target database.</xsl:message> + </xsl:when> + + <!-- Does this document not have this targetptr? --> + <xsl:when test="$targetptr.key = ''" > + <!-- Does this document have *any* content? --> + <xsl:variable name="document.root"> + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetdoc-key', $seek.targetdoc)/div/@element"/> + </xsl:for-each> + </xsl:variable> + <xsl:choose> + <xsl:when test="$document.root = ''"> + <xsl:message>Olink error: could not open data file for document id '<xsl:value-of select="$seek.targetdoc"/>'.</xsl:message> + </xsl:when> + <xsl:otherwise> + <xsl:message>Olink error: targetptr <xsl:value-of select="$seek.targetptr"/> not found in document id <xsl:value-of select="$seek.targetdoc"/>.</xsl:message> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + + <!-- Proceed with good olink syntax --> + <xsl:otherwise> + + <!-- Does the target database use a sitemap? --> + <xsl:variable name="use.sitemap"> + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetdoc-key', $seek.targetdoc)/parent::dir/@name"/> + </xsl:for-each> + </xsl:variable> + <xsl:variable name="target.href" > + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetptr-key', concat($seek.targetdoc, '/', $seek.targetptr))/@href" /> + + </xsl:for-each> + </xsl:variable> + + <!-- Get the baseuri for this targetptr --> + + <xsl:variable name="baseuri" > + <xsl:choose> + <!-- Does the database use a sitemap? --> + <xsl:when test="$use.sitemap != ''" > + <xsl:choose> + <!-- Was current.docid parameter set? --> + <xsl:when test="$current.docid != ''"> + <xsl:for-each select="$target.database" > + <xsl:call-template name="targetpath" > + <xsl:with-param name="dirnode" select="key('targetdoc-key', $current.docid)/parent::dir"/> + <xsl:with-param name="targetdoc" select="$seek.targetdoc"/> + </xsl:call-template> + </xsl:for-each > + </xsl:when> + <xsl:otherwise> + <xsl:message>Olink warning: cannot compute relative sitemap path without $current.docid parameter</xsl:message> + </xsl:otherwise> + </xsl:choose> + <!-- In either case, add baseuri from its document entry--> + <xsl:variable name="docbaseuri"> + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetdoc-key', $seek.targetdoc)/@baseuri" /> + </xsl:for-each> + </xsl:variable> + <xsl:if test="$docbaseuri != ''" > + <xsl:value-of select="$docbaseuri"/> + </xsl:if> + </xsl:when> + <!-- No database sitemap in use --> + <xsl:otherwise> + <!-- Just use any baseuri from its document entry --> + <xsl:variable name="docbaseuri"> + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetdoc-key', $seek.targetdoc)/@baseuri" /> + </xsl:for-each> + </xsl:variable> + <xsl:if test="$docbaseuri != ''" > + <xsl:value-of select="$docbaseuri"/> + </xsl:if> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <!-- Form the href information --> + <xsl:if test="$baseuri != ''"> + <xsl:value-of select="$baseuri"/> + <xsl:if test="substring($target.href,1,1) != '#'"> + <!--xsl:text>/</xsl:text--> + </xsl:if> + </xsl:if> + <xsl:value-of select="$target.href"/> + </xsl:otherwise> + </xsl:choose> + </xsl:when> <xsl:otherwise> <xsl:value-of select="$olink.resolver"/> <xsl:text>?</xsl:text> @@ -594,21 +1014,20 @@ </xsl:choose> </xsl:variable> - <a href="{$href}"> - <xsl:choose> - <xsl:when test="count(node()) > 0"> - <xsl:apply-templates/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="olink.outline"> - <xsl:with-param name="outline.base.uri" - select="unparsed-entity-uri(@targetdocent)"/> - <xsl:with-param name="localinfo" select="@localinfo"/> - <xsl:with-param name="return" select="'xref'"/> + <xsl:choose> + <xsl:when test="$href != ''"> + <a href="{$href}"> + <xsl:call-template name="olink.hottext"> + <xsl:with-param name="target.database" select="$target.database"/> </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </a> + </a> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="olink.hottext"> + <xsl:with-param name="target.database" select="$target.database"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> </xsl:template> <xsl:template name="olink.outline"> @@ -659,6 +1078,134 @@ </xsl:choose> </xsl:template> +<xsl:template name="olink.hottext"> + <xsl:param name="target.database"/> + <xsl:choose> + <!-- If it has elements or text (not just PI or comment) --> + <xsl:when test="child::text() or child::*"> + <xsl:apply-templates/> + </xsl:when> + <xsl:when test="@targetdoc and @targetptr"> + <!-- Get the xref text for this record --> + <xsl:variable name="seek.targetdoc" select="@targetdoc"/> + <xsl:variable name="seek.targetptr" select="@targetptr"/> + <xsl:variable name="xref.text" > + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetptr-key', concat($seek.targetdoc, '/', $seek.targetptr))/xreftext" /> + + </xsl:for-each> + </xsl:variable> + + + <xsl:choose> + <xsl:when test="$use.local.olink.style != 0"> + <!-- Get the element name and lang for this targetptr --> + <xsl:variable name="element" > + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetptr-key', concat($seek.targetdoc, '/', $seek.targetptr))/@element" /> + </xsl:for-each> + </xsl:variable> + + <xsl:variable name="lang"> + <xsl:variable name="candidate"> + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetptr-key', concat($seek.targetdoc, '/', $seek.targetptr))/@lang" /> + </xsl:for-each> + </xsl:variable> + <xsl:choose> + <xsl:when test="$candidate != ''"> + <xsl:value-of select="$candidate"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="'en'"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + <xsl:variable name="template"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'title'"/> + <xsl:with-param name="name" select="$element"/> + <xsl:with-param name="lang" select="$lang"/> + </xsl:call-template> + </xsl:variable> + <xsl:call-template name="substitute-markup"> + <xsl:with-param name="template" select="$template"/> + <xsl:with-param name="title"> + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetptr-key', concat($seek.targetdoc, '/', $seek.targetptr))/ttl" /> + </xsl:for-each> + </xsl:with-param> + <xsl:with-param name="label"> + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetptr-key', concat($seek.targetdoc, '/', $seek.targetptr))/@number" /> + </xsl:for-each> + </xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:when test="$xref.text !=''"> + <xsl:value-of select="$xref.text"/> + </xsl:when> + <xsl:otherwise> + <xsl:message>Olink error: no generated text for targetdoc/targetptr = <xsl:value-of select="@targetdoc"/>/<xsl:value-of select="@targetptr"/></xsl:message> + <xsl:text>????</xsl:text> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="olink.outline"> + <xsl:with-param name="outline.base.uri" + select="unparsed-entity-uri(@targetdocent)"/> + <xsl:with-param name="localinfo" select="@localinfo"/> + <xsl:with-param name="return" select="'xreftext'"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="targetpath"> + <xsl:param name="dirnode" /> + <xsl:param name="targetdoc" select="''"/> + +<!-- +<xsl:message>dirnode is <xsl:value-of select="$dirnode/@name"/></xsl:message> +<xsl:message>targetdoc is <xsl:value-of select="$targetdoc"/></xsl:message> +--> + <!-- recursive template generates path to olink target directory --> + <xsl:choose> + <!-- Have we arrived at the final path step? --> + <xsl:when test="$dirnode/child::document[@targetdoc = $targetdoc]"> + <!-- We are done --> + </xsl:when> + <!-- Have we reached the top without a match? --> + <xsl:when test="name($dirnode) != 'dir'" > + <xsl:message>Olink error: cannot locate targetdoc <xsl:value-of select="$targetdoc"/> in sitemap</xsl:message> + </xsl:when> + <!-- Is the target in a descendant? --> + <xsl:when test="$dirnode/descendant::document/@targetdoc = $targetdoc"> + <xsl:variable name="step" select="$dirnode/child::dir[descendant::document/@targetdoc = $targetdoc]"/> + <xsl:if test = "$step"> + <xsl:value-of select="$step/@name"/> + <xsl:text>/</xsl:text> + </xsl:if> + <!-- Now recurse with the child --> + <xsl:call-template name="targetpath" > + <xsl:with-param name="dirnode" select="$step"/> + <xsl:with-param name="targetdoc" select="$targetdoc"/> + </xsl:call-template> + </xsl:when> + <!-- Otherwise we need to move up a step --> + <xsl:otherwise> + <xsl:if test="$dirnode/parent::dir"> + <xsl:text>../</xsl:text> + </xsl:if> + <xsl:call-template name="targetpath" > + <xsl:with-param name="dirnode" select="$dirnode/parent::*"/> + <xsl:with-param name="targetdoc" select="$targetdoc"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + <!-- ==================================================================== --> <xsl:template name="xref.xreflabel"> @@ -687,6 +1234,73 @@ <xsl:message> <xsl:text>Page numbers make no sense in HTML! (Don't use %p in templates)</xsl:text> </xsl:message> +</xsl:template> + +<!-- ==================================================================== --> + +<xsl:template match="*" mode="insert.title.markup"> + <xsl:param name="purpose"/> + <xsl:param name="xrefstyle"/> + <xsl:param name="title"/> + + <xsl:choose> + <!-- FIXME: what about the case where titleabbrev is inside the info? --> + <xsl:when test="$purpose = 'xref' and titleabbrev"> + <xsl:apply-templates select="." mode="titleabbrev.markup"/> + </xsl:when> + <xsl:otherwise> + <xsl:copy-of select="$title"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="chapter|appendix" mode="insert.title.markup"> + <xsl:param name="purpose"/> + <xsl:param name="xrefstyle"/> + <xsl:param name="title"/> + + <xsl:choose> + <xsl:when test="$purpose = 'xref'"> + <i> + <xsl:copy-of select="$title"/> + </i> + </xsl:when> + <xsl:otherwise> + <xsl:copy-of select="$title"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="*" mode="insert.subtitle.markup"> + <xsl:param name="purpose"/> + <xsl:param name="xrefstyle"/> + <xsl:param name="subtitle"/> + + <xsl:copy-of select="$subtitle"/> +</xsl:template> + +<xsl:template match="*" mode="insert.label.markup"> + <xsl:param name="purpose"/> + <xsl:param name="xrefstyle"/> + <xsl:param name="label"/> + + <xsl:copy-of select="$label"/> +</xsl:template> + +<xsl:template match="*" mode="insert.pagenumber.markup"> + <xsl:param name="purpose"/> + <xsl:param name="xrefstyle"/> + <xsl:param name="pagenumber"/> + + <xsl:copy-of select="$pagenumber"/> +</xsl:template> + +<xsl:template match="*" mode="insert.direction.markup"> + <xsl:param name="purpose"/> + <xsl:param name="xrefstyle"/> + <xsl:param name="direction"/> + + <xsl:copy-of select="$direction"/> </xsl:template> </xsl:stylesheet> Index: phpdoc/xsl/docbook/html/chunkfast.xsl +++ phpdoc/xsl/docbook/html/chunkfast.xsl <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:exsl="http://exslt.org/common" version="1.0" exclude-result-prefixes="exsl"> <xsl:import href="chunk.xsl"/> <xsl:param name="chunk.fast" select="1"/> <xsl:variable name="chunks" select="exsl:node-set($chunk.hierarchy)//div"/> <!-- ==================================================================== --> <xsl:template name="process-chunk-element"> <xsl:choose> <xsl:when test="$chunk.fast != 0 and function-available('exsl:node-set')"> <xsl:variable name="genid" select="generate-id()"/> <xsl:variable name="div" select="$chunks[@id=$genid]"/> <xsl:variable name="prevdiv" select="($div/preceding-sibling::div|$div/preceding::div|$div/parent::div)[last()]"/> <xsl:variable name="prev" select="key('genid', $prevdiv/@id)"/> <xsl:variable name="nextdiv" select="($div/following-sibling::div|$div/following::div|$div/div)[1]"/> <xsl:variable name="next" select="key('genid', $nextdiv/@id)"/> <xsl:choose> <xsl:when test="$onechunk != 0 and parent::*"> <xsl:apply-imports/> </xsl:when> <xsl:otherwise> <xsl:call-template name="process-chunk"> <xsl:with-param name="prev" select="$prev"/> <xsl:with-param name="next" select="$next"/> </xsl:call-template> </xsl:otherwise> </xsl:choose> </xsl:when> <xsl:otherwise> <xsl:choose> <xsl:when test="$onechunk != 0 and not(parent::*)"> <xsl:call-template name="chunk-all-sections"/> </xsl:when> <xsl:when test="$onechunk != 0"> <xsl:apply-imports/> </xsl:when> <xsl:when test="$chunk.first.sections = 0"> <xsl:call-template name="chunk-first-section-with-parent"/> </xsl:when> <xsl:otherwise> <xsl:call-template name="chunk-all-sections"/> </xsl:otherwise> </xsl:choose> </xsl:otherwise> </xsl:choose> </xsl:template> </xsl:stylesheet>