DBLATEX(1)
π DBLATEX(1) π
okay bestie, sit down, hydrate, because we're about to talk about dblatex β the section 1 manual page, no less, from the Dblatex Manual Page era. this is the glow-up era, let's go π¦
β¨ NAME β¨
dblatex β the moment when you convert DocBook to LaTeX, DVI, PostScript, and PDF. literally all of them. she does it all π
β¨ SYNOPSIS β¨
dblatex [options] {file | -}
yes that - is real and yes it means stdin, we'll get there π«Ά
β¨ DESCRIPTION β¨
so, real talk: this manual page is the quick version. it briefly documents the dblatex command, and if you want the full tea you go read the PDF manual (see below, i got you π).
here's the vibe: dblatex is a program that transforms your SGML/XML DocBook documents into DVI, PostScript, or PDF by translating them into pure LaTeX as a first process. that's the whole trick. she speaks LaTeX natively, no middleman nonsense β¨
also!! MathML 2.0 markups are supported too. yes queen. math girlies stay winning π
and for the lore: it started as a clone of DB2LaTeX. history class is in session π
β¨ OPTIONS β¨
here's a summary of the options, bestie. for a complete description, go see the PDF manual. this is the highlight reel π
-h,--helpβ shows you a help message and then exits. the classic "hello, what do you do" button π- *
-b*backend,--backend=backend β the backend driver to use:pdftex(that's the default, periodt),dvips, orxetex. -B,--no-batchβ all the tex output gets printed. like, all of it. no filter. she's spilling everything π- *
-c*config,-Sconfig,--config=config β configuration file. a config file lets you group all the options and customizations you want to apply in one place. yes, both-cand-Swork, iconic duality. -d,--debugβ debug mode: it keeps the temporary directory thatdblatexactually works in. so you can go snooping π-D,--dumpβ dumps the error stack when an error occurs (debug purpose). for when you need to see the whole crime scene π- *
-e*indexstyle,--indexstyleindexstyle β index style file to pass tomakeindexinstead of the dblatex default index style. your index, your rules β¨ - *
-f*figure_format,--fig-format=figure_format β input figure format:fig,eps. this is used when the format isn't deduced from the figure file extension. - *
-F*input_format,--input-format=input_format β input file format:sgml,xml(which is the default, obvi). - *
-i*texinputs,--texinputstexinputs β a path added toTEXINPUTS. - *
-I*figure_path,--fig-path=figure_path β an additional lookup path for the figures. - *
-l*bst_path,--bst-path=bst_path β an additional lookup path for the BibTeX styles. - *
-L*bib_path,--bib-path=bib_path β an additional lookup path for the BibTeX databases. - *
-m*xslt,--xslt=xslt β the XSLT engine to use. the available engines are:xsltproc(default, the main character),4xslt,saxon. -ooutput,--output=output β output filename. when you don't specify one, the input filename is used, with the suffix of the output format. π¨ important though: this option is **ignored if several books are chunked from a set β in that case, the-Ooption is applied instead. okay? okay.-Ooutput_dir,--output-dir=output_dir β output directory of the books built from a set. when not specified, the current working directory is used instead. and heads up: this option is **ignored if a single document is outputed, and-ois taken into account instead. they're like, mutually exclusive besties, one or the other π-pxsl_user,--xsl-user=xsl_user β an XSL user stylesheet to use. you can specify **several user stylesheets, but β and this matters β the option order is meaningful: a user stylesheet takes precedence over previously defined user stylesheets. so order = power, no cap π- *
-P*param=value,--param=param=value β set an XSL parameter from the command line. straight from the CLI, we love to see it. -q,--quietβ less verbose, showing only TeX output messages and error messages. she's being chill for once π€«- *
-r[plugin:]script,--texpost=[plugin:]script β a script called at the very end of the tex compilation. its role is to modify the tex file or one of the compilation files before the last round. the script can be a python plugin β in that case, add the prefix term'plugin:'. (that's literally the exact string, colon included, don't @ me.) -slatex_style,--texstyle=latex_style β the LaTeX style to apply. it can be a package name, or directly a latex package path. a package name must be *without a directory path and without the'.sty'extension. on the contrary, a full latex package path *can contain a directory path, but must end with the'.sty'extension. read that twice bestie, this is the one people get wrong π- *
-t*format,--type=format β output format. available formats:tex,dvi,ps,pdf(default). --dviβ DVI output. equivalent to-tdvi.--pdfβ PDF output. equivalent to-tpdf.--psβ PostScript output. equivalent to-tps.- *
-T*style,--style=style β output style. the predefined ones are:db2latex,simple,native(default). -v,--versionβ displays the dblatex version. identity check πͺͺ-V,--verboseβ verbose mode, showing the running commands. she's narrating her own life π£- *
-x*xslt_options,--xslt-opts=xslt_options β arguments directly passed to the XSLT engine. -X,--no-externalβ disables the external text file support. this support is needed for callouts on external files referenced bytextdataorimagedata, but it can be disabled if the document does not contain such callouts. the upside: disabling this support can improve the processing performance for big documents. so if you don't need it, drop it and go fast ποΈβ¨
β¨ FILES AND DIRECTORIES β¨
$HOME/.dblatex/β user configuration directory. this is your personal room, decorate it however π/etc/dblatex/β system-wide configuration directory. the shared living room, everyone's here.
and also: the predefined output styles are located in the installed package directory. that's where they live, that's their home π
β¨ ENVIRONMENT VARIABLES β¨
DBLATEX_CONFIG_FILESβ extra configuration directories that may contain some dblatex configuration files. more places to look, more config to find π
β¨ EXAMPLES β¨
okay this is the part everyone scrolls to, so let's go, real commands, no fluff π
to produce myfile.pdf from myfile.xml:
dblatex myfile.xml
to set some XSL parameters from the command line:
dblatex -P latex.babel.language=de myfile.xml
to use your XSL stylesheet:
dblatex -p myconfig.xsl myfile.xml
to use the db2latex output style:
dblatex -T db2latex myfile.xml
to apply your own latex style:
dblatex -s mystyle myfile.xml
dblatex -s /path/to/mystyle.sty myfile.xml
(see?? package name vs full path, exactly like -s said. i told you it mattered π)
to pass extra arguments to the XSLT engine:
dblatex -x "--path /path/to/load/entity" myfile.xml
to use dblatex and profiling:
xsltproc --param profile.attribute "'output'" \
--param profile.value "'pdf'" \
/path/to/profiling/profile.xsl \
myfile.xml | dblatex -o myfile.pdf -
(that trailing - is the stdin, and there's the pipe doing her thing. the "'output'" double-quote situation is intentional, copy it exactly, no cap π)
to build a set of books:
dblatex -O /path/to/chunk/dir -Pset.book.num=all myfile.xml
that's the whole album right there π§
β¨ SEE ALSO β¨
the program is documented fully by "DocBook to LaTeX Publishing - User Manual", available in the package's documentation directory. go read her, she's thorough πβ¨
β¨ AUTHORS β¨
- Benoit Guillon β upstream maintainer π
- Andreas Hoenen
<andreas.hoenen@arcor.de>β Debian maintainer π«Ά
β¨ COPYRIGHT β¨
Copyright Β© 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015 Andreas Hoenen
that's twelve years of copyright dates, she's been around, she's got history, respect her π
this manual page was written for the Debian(TM) system (but it may be used by others). so like, Debian's the origin story but she's not gatekeeping π
permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License, Version 2 or any later version published by the Free Software Foundation.
on Debian(TM) systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL.
and that's the page bestie!! π¦ dblatex 0.3.12, dated March 6, 2015 β yeah she's a vintage queen and she still eats π go convert something, you got this π«Άβ¨π
π¦ where this page comes from
- arch rolling: dblatex 0.3.12-13 Β· GPL-2.0-or-later AND LicenseRef-Modified-MIT
- centos-stream 10: dblatex 0.3.12-22.el10 Β· GPL-2.0-or-later AND GPL-2.0-only AND LPPL-1.3a AND LicenseRef-DMIT AND LicenseRef-Fedora-Public-Domain
- centos-stream 9: dblatex 0.3.12-4.el9 Β· GPLv2+ and GPLv2 and LPPL and DMIT and Public Domain
- debian bookworm: dblatex 0.3.12py3-2
- debian trixie: dblatex 0.3.12py3-5
- fedora 43: dblatex 0.3.12-28.fc43 Β· GPL-2.0-or-later AND GPL-2.0-only AND LPPL-1.3a AND LicenseRef-DMIT AND LicenseRef-Fedora-Public-Domain
- fedora 44: dblatex 0.3.12-31.fc44 Β· GPL-2.0-or-later AND GPL-2.0-only AND LPPL-1.3a AND LicenseRef-DMIT AND LicenseRef-Fedora-Public-Domain
- nixos 26.05: dblatex 0.3.12
- nixos 26.05: dblatex-full 0.3.12
- nixpkgs unstable: dblatex 0.3.12
- nixpkgs unstable: dblatex-full 0.3.12
- opensuse-leap 16.0: dblatex 0.3.12-160000.2.2 Β· GPL-2.0-only
- ubuntu jammy: dblatex 0.3.12py3-1
- ubuntu noble: dblatex 0.3.12py3-4
- ubuntu questing: dblatex 0.3.12py3-5
- ubuntu resolute: dblatex 0.3.12py3-6
- ubuntu stonking: dblatex 0.3.12py3-6
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms