db2x_manxml(1)
π db2x_manxml β bestie edition π
okay so real quick, this is db2x_manxml(1), part of docbook2X, and it's genuinely one of those little tools that does one job and does it flawlessly. we're gonna go through the whole thing together, no skips, no skimming, because you deserve the full picture. π«Ά
β¨ NAME β¨
db2x_manxml β Make man pages from Man-XML
like, that's it. that's the whole vibe. Man-XML goes in, man pages come out. π
πΈ SYNOPSIS πΈ
db2x_manxml [options] [xml-document]
π¦ DESCRIPTION π¦
So db2x_manxml takes a Man-XML document and converts it into one or more man pages. They get written into the current directory. That's the whole thing, she's not complicated, she's just good at her job. π
And if you don't hand her an xml-document? No stress, she'll just read the document to convert from standard input instead. lowkey considerate of her ngl. β¨
π OPTIONS π
--encoding=encodingβ pick the character encoding for the output files. The available encodings are the ones fromiconv(1). Default isus-ascii.
here's the tea though: your XML source might have characters that straight up cannot be represented in the encoding you picked. When that happens the program bombs out mid-processing and you have to go pick a different encoding. π (this is guaranteed not to happen with any Unicode encoding like UTF-8, but unfortunately not everyone is able to process Unicode texts. tragic, i know.)
If you're using GNU's version of iconv(1), you can stick //TRANSLIT onto the end of the encoding name to attempt transliterations of any unconvertible characters in the output. BUT β beware β the really inconvertible characters will be turned into another one of those damned question marks. (Aren't you sick of this? because same. π)
The suffix //TRANSLIT applied to a Unicode encoding β in particular, utf-8//TRANSLIT β means the output files are to remain in Unicode, but markup-level character translations using utf8trans are still to be done. So in most cases, an English-language document converted with --encoding=utf-8//TRANSLIT will actually end up as a US-ASCII document, but any untranslatable characters will remain as UTF-8 without any warning whatsoever. (Note: strictly speaking this is not "transliteration".) This method of conversion is a compromise over strict --encoding=us-ascii processing, which aborts if any untranslatable characters are encountered.
also worth knowing: man pages and Texinfo documents in non-ASCII encodings (includingUTF-8) may not be portable to older (non-internationalized) systems. That's literally why the default value for this option isus-ascii. π
And if you want to suppress any automatic character mapping or encoding conversion whatsoever, pass --encoding=utf-8.
--list-filesβ writes a list of all the output files to standard output, on top of doing the normal processing. so you get the receipts. π§Ύ--output-dir=dirβ tells her which directory the output files go in. Default is the current working directory.
heads up: this option is ignored if the output is being written to standard output (which happens when you trigger --to-stdout).
--to-stdoutβ writes the output to standard output instead of to individual files.
If you use this even when there are supposed to be multiple output documents, then everything gets concatenated to standard output. But beware that most other programs will not accept this concatenated output. π
This option is incompatible with --list-files, obviously. like, obviously obviously.
--helpβ Show brief usage information and exit.--versionβ Show version and exit.
okay so some man pages get referenced under two or more names instead of just one. Example: strcpy(3) and strncpy(3) often point to the same man page which describes the two functions together. Pick one of these to decide how those get generated:
--symlinksβ for each of all the alternate names for a man page, erect symbolic links to the file that contains the real man page content. π--solinksβ generate stub pages (using.soroff requests) for the alternate names, pointing them to the real man page content. πͺ--no-linksβ do not make any alternative names available at all. The man page can only be referenced under its principal name. main character only, no understudies. π
This program uses certain other programs for its operation. If they're not in their default installed locations, use these to set their location:
--utf8trans-program=path,--utf8trans-map=charmapβ use the character mapcharmapwith theutf8trans(1)program (included with docbook2X), found underpath.--iconv-program=pathβ the location of theiconv(1)program, used for encoding conversions.
π NOTES π
The man pages produced should be compatible with most troff implementations and other tools that process man pages. Some backwards-compatible groff(1) extensions are used to make the output look nicer. β¨ she's pretty AND functional, we love that for her.
π AUTHOR π
Steve Cheng <stevecheng@users.sourceforge.net>.
π SEE ALSO π
The docbook2X manual (in Texinfo or HTML format) fully describes how to convert DocBook to man pages and Texinfo.
Up-to-date information about this program can be found at the docbook2X Web site β¨http://docbook2x.sourceforge.net/β© .
The input to db2x_manxml is defined by the XML DTD present at dtd/Man-XML in the docbook2X distribution.
and that's the whole page bestie, you're officially fluent π«Ά this was docbook2X 0.8.8, dated 3 March 2007, so yeah she's an icon from another era but she still eats. periodt. π π
π¦ where this page comes from
- alpine 3.22: docbook2x-doc 0.8.8-r10 Β· MIT
- alpine 3.23: docbook2x-doc 0.8.8-r10 Β· MIT
- alpine 3.24: docbook2x-doc 0.8.8-r10 Β· MIT
- arch rolling: docbook2x 0.8.8-19 Β· MIT
- centos-stream 10: docbook2X 0.8.8-50.el10 Β· MIT AND DocBook-XML
- centos-stream 9: docbook2X 0.8.8-40.el9 Β· MIT
- debian bookworm: docbook2x 0.8.8-17+b1
- fedora 43: docbook2X 0.8.8-50.fc43 Β· MIT
- fedora 44: docbook2X 0.8.8-52.fc44 Β· MIT
- nixos 26.05: docbook2X 0.8.8
- nixpkgs unstable: docbook2X 0.8.8
- opensuse-leap 16.0: docbook2x-doc 0.8.8-160000.2.2 Β· MIT
- opensuse-leap 16.0: docbook2x-doc 0.8.8-160000.2.2 Β· MIT
- opensuse-leap 16.0: docbook2x-doc 0.8.8-160000.2.2 Β· MIT
- opensuse-leap 16.0: docbook2x-doc 0.8.8-160000.2.2 Β· MIT
- ubuntu jammy: docbook2x 0.8.8-17
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms