DocBook to LaTeX Publishing

User Manual

Benoît Guillon

Reviewed by : Andreas Hoenen


Revision History
Revision 012009/05/05B. Guillon

The manual does not include the change history anymore. The change history is now in the release note. The XSL Parameters are now described as reference entries.

Revision 022009/06/21B. Guillon

Add a section about the new set support, and a section about how to extend the verbatim rendering.

Revision 032011/07/03B. Guillon

Add a section about the new HTML table support, and a section about the PyPI distribution.

Revision 042012/04/10B. Guillon

Update documentation for release 0.3.3.

Revision 052012/06/03B. Guillon

Update documentation for release 0.3.4.

Revision 062014/05/26B. Guillon

Update documentation for release 0.3.5.

Revision 072015/05/15B. Guillon

Update documentation for release 0.3.6: add the ability to use a texpost python plugin, and new index capabilities.

Revision 082015/08/06B. Guillon

Update documentation for release 0.3.7: add section the section called “Chapter and Section numbering”.

Revision 092016/07/20B. Guillon / Karl O. Pinc

Update documentation for release 0.3.8: add appendix Appendix B, Dblatex Processing Instruction Reference, and sections the section called “XML Configuration File Format”, the section called “Musical Notation”.

Revision 102016/07/24B. Guillon / Karl O. Pinc

Update documentation for release 0.3.9: add new features in the section called “XML Configuration File Format” and complete some sections.

Table of Contents

1. Introduction
What about DB2LaTeX?
Change History
Publishing Principles
Backend Drivers
XSL Stylesheets
Python Post Processing
LaTeX Style Package
2. Installing the Package
Installing on Unix like Systems
Dblatex Packages
Installing on Windows
3. Using dblatex
dblatex — convert DocBook to LaTeX, DVI, PostScript, and PDF
Output Formatting Style
How it works
Adding a New Formatting Style
Publishing Outputs
Publishing a single document
Publishing a Set of Books
Global Page Setup
Chapter and Section numbering
Depth of Section numbering and Table Of Content
Using the latex style for section numbering
Using the label attribute
Figure Inclusion
Converting on the fly
Paths Lookup
Creating Tables
Table Width
Tables without colwidth
Tables with mixed colspec
Tables with proportional and fixed colwidth
Tables with fixed colwidths
Automatic Column Width
Informal Table LaTeX Styles
Tables with morerows
Landscape tables
Smaller tables
Coloured tables
HTML Tables
Correcting Poor Formatting
Hyphenation and over-long lines
Characters and Manual Spacing
Writing Mathematics
Writing LaTeX Mathematical Equations
Writing MathML equations
Musical Notation
Extending the Verbatim Rendering
Dblatex Specific Options
Scaling Feature
Formatting embedded elements
Creating a new Verbatim Environment
Creating an Index
Internationalized Indexes
Writing a Bibliography
Using Bibliography Entries
Using BibTeX Databases
Natbib Citations
Document Revisions
Locale Support
Document Encoding
Babel Languages
CJK Languages
Mixing the languages
Using XRefsyle and Olinks
Specific xrefstyle for ulink
Footnote Numbering Scope
End Notes
4. Customization
Using XSL Parameters
Setting Command line Parameters
Using Processing Instructions
XSL User Stylesheet
Changing the XSL parameter values
Overriding some templates
Customized LaTeX style
Reusing an existing LaTeX style
Package options
Needed packages
DocBook interface
Debugging your Style
Latex post process script
Post latex compilations
Post processing with a Python Plugin
Dblatex Configuration File
XML Configuration File Format
Deprecated Text Configuration File Format
Configuration Paths
Customization Precedence
5. FAQ
6. Thanks
A. Dblatex XSL Parameter Reference
figure.caution — Figure to use to render a caution block.
figure.important — Figure to use to render a important block
figure.note — Figure to use to render a note block
figure.tip — Figure to use to render a tip block
figure.warning — Figure to use to render a warning block
Callouts — Hot links callout items — Callout list style to apply
callout.markup.circled — Use black circles for numbering the callout items? — Show the references to calloutlist items next to the markup
imageobjectco.hide — Hide the callout markups on the image
ToC/LoT/Index Generation — Specifies the Lists of Titles to display — Print the Table Of Contents — Should titleabbrev be put in the TOC instead of title?
toc.section.depth — How deep should recursive sections appear in the TOC?
bibliography.tocdepth — How bibliography section and subsections appear in TOC
colophon.tocdepth — How colophon section and subsections appear in TOC
dedication.tocdepth — How dedication section and subsections appear in TOC
preface.tocdepth — How preface section and subsections appear in TOC
glossary.tocdepth — How glossary section and subsections appear in TOC
index.tocdepth — How index section and subsections appear in TOC
latex.index.tool — Define the tool to use to build an index
latex.index.language — Force the language to use for index sorting
refentry.tocdepth — How refentry section and subsections appear in TOC
Processor Extensions
alt.use — Always use alt to display equations — TeX notation used for equations
Automatic labelling
bibliography.numbered — Should bibliography headings be numbered?
glossary.numbered — Should glossary headings be numbered?
index.numbered — Should index headings be numbered?
refentry.numbered — Should refentry headings be numbered?
Meta/*Info — Set the PDF metadata Creator field
make.single.year.ranges — Print single-year ranges (e.g., 1998-1999)
make.year.ranges — Collate copyright years into ranges?
Reference Pages
funcsynopsis.decoration — Decorate elements of a funcsynopsis? — What style of funcsynopsis should be generated?
function.parens — Generate parens after a function?
refclass.suppress — Suppress display of refclass contents? — Output NAME header before refnames?
refentry.xref.manvolnum — Output manvolnum as part of refentry cross-reference?
newtbl.autowidth — Table column widths sized by latex
newtbl.bgcolor.thead — Background color of the thead rows
newtbl.default.colsep — By default draw a vertical line between columns
newtbl.default.rowsep — By default draw a horizontal line between rows
newtbl.format.tbody — LaTeX formatting for body table cells
newtbl.format.tfoot — LaTeX formatting for foot table cells
newtbl.format.thead — LaTeX formatting for head table cells
newtbl.use.hhline — Draw the horizontal lines with the hhline package
table.continue.caption — Caption text for continued table titles
table.default.position — Default table float placement policy
table.default.tabstyle — Default table style to apply — Use or emulate a float to display a formal table? — Title on top of the table float
default.table.rules — The default column and row rules for tables using HTML markup
default.table.width — The default width of tables
latex.hyperparam — Options/parameters passed to hyperref
Olink Parameters — Parameters to configure Olinks
Cross References — Turns page numbers in xrefs on and off — Turns page numbers in xrefs to paragraphs on and off
xref.hypermarkup — Wrap the entire the xref markups with an hyperlink?
term.breakline — Put the term description on the next line?
variablelist.term.separator — Text to separate terms within a multi-term varlistentry
qanda.defaultlabel — Sets the default for defaultlabel on QandASet.
biblioentry.item.separator — Text to separate bibliography entries
biblioentry.numbered — Should biblioentry item labels be numbered? — Default natbib citation style to apply
citation.natbib.options — Specifies the natbib package options
citation.natbib.use — Use natbib to display citations
latex.bibfiles — Defines the default BibTeX database to use
latex.biblio.output — Defines how the BibTeX bibliographic entries are printed out — Default BibTeX style to apply
latex.bibwidelabel — Template of the widest bibliography label
Glossary — Generate links from glossterm to glossentry automatically?
Miscellaneous — Enable the annotation support — Force a page break when set to 1. Otherwise beginpage does nothing.
doc.section.depth — Depth of the section numbering
endnotes.heading.command — LaTeX command of the endnotes headings
endnotes.heading.groups — Display the endnotes by groups — Style of the heading of endnotes groups — Properties of the latex package endnotes setup
equation.default.position — Default equation float placement to apply
example.default.position — Default example float placement to apply
example.float.type — Select the type of float for example elements — Cross reference anchor on top of the figure float
figure.default.position — Figure float placement policy — Title on top of the figure float — Hyphenate a filename like if is was an URL — Use footnotes as endnotes
hyphenation.format — Predefined formats to hyphenate
linenumbering.scope — Templates on which the global linenumbering setup applies
linenumbering.default — Default linenumbering setup for literal environments
linenumbering.everyNth — Indicate which lines should be numbered
literal.layout.options — Override the options passed to the listing package
literal.lines.showall — Show the last empty lines in the literal environments?
literal.width.ignore — Ignore the literal environment width attribute
literal.class — Default class to apply to literallayout blocks
literal.role — Default role to apply to verbatim blocks
literal.environment — Latex environment used to format verbatim blocks
literal.extensions — Enable extended verbatim features — Font style of the mediaobject caption text
monoseq.hyphenation — Specifies one of the supported monoseq hyphenation policy
monoseq.small — Use a smaller font to render monoseq portions of text
pdf.annot.options — PDF text annotations rendering options — Format segmented lists as tables?
seg.item.separator — Separator to use between several segs
show.comments — Display remark elements?
texlive.version — Version of the installed Tex Live Distribution
ulink.footnotes — Generate footnotes for ulinks? — Display URLs after ulinks?
xref.with.number.and.title — Use number and title in cross references
imagedata.boxed — Put the images into a framed box
imagedata.default.scale — Specifies the default image scaling properties
imagedata.file.check — Make the latex compilation robust to missing images
keep.relative.image.uris — Should image URIs be resolved against xml:base?
Chuncking — Select a single book or all the books to compile from a set — Use ID value of chunk elements as the filename?
Pagination and General Styles
page.height — The height of the physical page
page.margin.bottom — The bottom margin of the page
page.margin.inner — The inner page margin
page.margin.outer — The outer page margin — The top margin of the page
page.width — The width of the physical page
paper.type — Select the paper type
geometry.options — Raw options to pass to the geometry package
doc.alignment — Specifies the text alignement of the document — Print the document collaborators (authors, etc.) in a table
doc.layout — Specifies the overall document layout. — Print the dblatex logo on the cover page?
draft.mode — Select draft mode
draft.watermark — Print a Watermak on each page in draft mode?
latex.engine.options — Extra arguments to pass to the TeX engine
latex.class.article — LaTeX document class to use for article documents — LaTeX document class to use for book documents
latex.class.options — Options passed to the \documentclass command
latex.encoding — Encoding of the latex document to produce
latex.unicode.use — Use passivetex unicode support?
latex.output.revhistory — Print the revhistory table?
Font Families — The default font family for body text
cjk.font — Fonts to use in CJK environments — The default font family for monospace environments — The default sans-serif font family
xetex.font — Specifies the fonts that XeTeX must use
korean.package — Package included when Korean language is used
latex.babel.language — Force the loaded babel language
latex.babel.use — Disable the use of babel, whatever the document language is
crop.marks — Output crop marks?
crop.paper.type — Select the paper type for paper with crops — The width of the physical crop page — The height of the physical crop page
crop.mode — How to display crops
crop.options — Raw options passed to the crop package
B. Dblatex Processing Instruction Reference
bibtex — Specify how to fill a Bibliography with BibTeX
dblatex citestyle — Sets Natbib Citation Style
latex — Insert Arbitrary text into the LaTeX file
dblatex angle — Rotates an imagedata Image
texmath delimiters — Disable The LaTeX Mathematical Delimiters Control
dblatex bgcolor — Sets the Background Color of A Table Element
dblatex table-width — Control the Automatic Width of a Table
dblatex autowidth — Column sizing by LaTeX in segmentedlist tables
dblatex colwidth — Specifies a column width for segmentedlists presented as tables
dblatex list-presentation — Specifies presentation style for a segmentedlist

List of Figures

1.1. Transforming Process
3.1. Parameter Lengths used for Page Setup

List of Examples

3.1. Choosing the DB2LaTeX style
3.2. Figure inclusion
3.3. Figure conversion
3.4. Figures lookup
3.5. Equation taken from TDG
3.6. Equation with user delimiters
3.7. Inlined Equation
3.8. Equation in a block
3.9. Equation in a float
3.10. Equation without a title
3.11. Index Entry
3.12. XSL Index Language Setup
3.13. A Bibliography
3.14. Bibliography using BibTeX databases
3.15. Writing a document with endnotes
4.1. Table width specified with a Processing Instruction
4.2. Overriding templates
4.3. Reused LaTeX style
4.4. Texpost Python Plugin Example
4.5. User Manual Configuration File
4.6. Customization Precedence
A.1. Configuring with latex.hyperparam

List of Equations

3.1. Equation block with align tabs
3.2. Simple Formula