Release history

Abstract

Changes to the package between releases

docbook2X 0.8.3

  • Incorporated Michael Smith's much expanded roff character maps (contains a few thousand translations).

  • There are some improvements to the stylesheets themselves, here and there.

    Also I made the Texinfo stylesheets adapt to the XSLT processor automatically (with regards to the XSLT extensions). This might be of interest to anybody wanting to use the stylesheets with some other XSLT processor (especially SAXON).

  • Fixed a couple of bugs that prevented docbook2X from working on Cygwin.

  • Fixed a programming error in utf8trans that caused it to segfault. At the same time, I rewrote parts of it to make it more efficient for large character maps (those with more than a thousand entries).

  • The Perl component of docbook2X has switched from using libxml-perl (a SAX1 interface) to XML-SAX (a SAX2 interface). I had always wanted to do the switch since libxml-perl is not maintained, but the real impetus this time is that XML-SAX has a pure Perl XML parser. If you have difficulties building XML::Parser on Cygwin, like I did, the Perl component will automatically fall back on the pure Perl parser.

docbook2X 0.8.2

  • Added support for tables in man pages. Almost all table features that can be supported with tbl will work. The rest will be fixed in a subsequent release.

  • Copied the “gentext” stuff over from Norman Walsh's XSL stylesheets. This gives (incomplete) localizations for the same languages that are supported by the Norman Walsh's XSL stylesheets.

    Although incomplete, they should be sufficient for localized man-page output, for which there are only a few strings like “Name” and “Synopsis” that need to be translated.

    If you do make non-English man pages, you will need to revise the localization files; please send patches to fix them afterwards.

  • Rendering of bibliography, and other less common DocBook elements is broken. Actually, it was probably also slightly broken before. Some time will be needed to go through the stylesheets to check/document everything in it and to add anything that is still missing.

  • Added --info option to db2x_texixml, to save typing the makeinfo command.

  • Rename --stringparam option in db2x_xsltproc to --string-param, though the former option name is still accepted for compatibility.

  • Added the stylesheet for generating the XSLT reference documentation. But the reference documentation is not integrated into the main docbook2X documentation yet.

  • docbook2X no longer uses SGML-based tools to build. HTML documentation is now built with the DocBook XSL stylesheets.

  • Changed the license of this package to the MIT license. This is in case someone wants to copy snippets of the XSLT stylesheets, and requiring the resulting stylesheet to be GPL seems too onerous. Actually there is no real loss since no one wants to hide XSLT source anyway.

  • Switched to a newer version of autoconf.

  • Fixes for portability (to non-Linux OSes).

  • A number of small rendering bug fixes, as usual.

docbook2X 0.8.1

  • Bug fixes.

  • Texinfo menu generation has been improved: the menus now look almost as good as human-authored Texinfo pages and include detailed node listings (@detailmenu) also.

  • Added option to process XInclude in db2x_xsltproc just like standard xsltproc.

docbook2X 0.8.0

  • Moved docbook2man-spec.pl to a sister package, docbook2man-sgmlspl, since it seems to be used quite a lot.

  • There are now XSLT stylesheets for man page conversion, superceding the docbook2manxml. docbook2manxml had some neat code in it, but I fear maintaining two man-page converters will take too much time in the future, so I am dropping it now instead of later.

  • Fixed build errors involving libxslt headers, etc. that plagued the last release. The libxslt wrapper (name changed to db2x_xsltproc, formerly called docbook2texi-libxslt) has been updated for the recent libxslt changes. Catalog support working.

  • Transcoding output to non-UTF-8 charsets is automatic.

  • Made some wrapper scripts for the two-step conversion process.

docbook2X 0.7.0

I have added much more stuff in this release than I had expected:

  • More bug squashing and features in XSLT stylesheets and Perl scripts. Too many to list.

  • Added docbook2texi-libxslt, which uses libxslt. Finally, no more Java is necessary.

  • Added a C-based tool to translate UTF-8 characters to arbitrary (byte) sequences, to avoid having to patch recode every time the translation changes. However, Christoph Spiel has ported the recode utf8..texi patch to GNU recode 3.6 if you prefer to use recode.

  • As usual, the documentation has been improved.

    The documentation for the XSLT stylesheets can be extracted automatically. (Caveat: libxslt has a bug which affects this process, so if you want to build this part of the documentation yourself you must use some other XSLT processor. There is no jrefentry support in docbook2X yet, so the reference is packaged in HTML format; this will change in the next release, hopefully.)

  • Build system now uses autoconf and automake.

I do not anticipate any more architectural changes. Subsequent releases will simply add rendering features and fix bugs.

docbook2X 0.6.9

I had intended to release version 0.7.0 straight away, but it is being delayed by my vacation to Japan (for two weeks, starting right now) and some bugs in libxslt. So I am releasing an early version instead:

  • Removed old unmaintained code such as docbook2man, docbook2texi. Moved Perl scripts to perl/ directory and did some renaming of the scripts to saner names.

  • Better make system.

  • Debugged, fixed the XSLT stylesheets more and added libxslt invocation.

  • Cut down the superfluity in the documentation.

  • Fixed other bugs in docbook2manxml and the Texi-XML, Man-XML tools.

docbook2X 0.6.1

  • docbook2man-spec.pl has an option to strip or not strip letters in man page section names, and xref may now refer to refsectn. I have not personally tested these options, but loosing them in the interests of release early and often.

  • Menu label quirks, paramdef non-conformance, and vertical simplelists with multiple columns fixed in docbook2texixml.

  • Brought docbook2manxml up to speed. It builds its own documentation now.

  • Arcane bugs in texi_xml and man_xml fixed.

docbook2X 0.6.0

  • Introduced Texinfo XSLT stylesheets.

  • Bugfixes to texi_xml and docbook2texixml.

  • Produced patch to GNU recode which maps Unicode characters to the corresponding Texinfo commands or characters. It is in ucs2texi.patch. I have already sent this patch to the maintainer of recode.

  • Updated documentation.

docbook2X 0.5.9

  • Both docbook2texixml transform into intermediate XML format which closely resembles the Texinfo format, and then another tool is used to convert this XML to the actual format.

    This scheme moves all the messy whitespace, newline, and escaping issues out of the actual transformation code. Another benefit is that other stylesheets (systems), can be used to do the transformation, and it serves as a base for transformation to Texinfo from other DTDs.

  • Texinfo node handling has been rewritten. Node handling used to work back and forth between IDs and node names, which caused a lot of confusion. The old code also could not support DocBook sets because it did not keep track of the Texinfo file being processed.

    As a consequence, the bug in which docbook2texixml did not output the @setinfofile is fixed. xreflabel handling is also sane now.

    In the new scheme, elements are referred to by their ID (auto-generated if necessary). The Texinfo node names are generated before doing the actual transformation, and subsequent texinode_get simply looks up the node name when given an element.

  • The stylesheet architecture allows internationalization to be implemented easily, although it is not done yet.

  • The (non-XML-based) old code is still in the CVS tree, but I'm not really interested in maintaining it. I'll still accept patches to them, and probably will keep them around for reference and porting purposes.

    There are some changes to the old code base in this new release; see old change log for details.

  • The documentation has been revised.

  • I am currently rewriting docbook2man using the same transform-to-XML technique. It's not included in 0.5.9 simply because I wanted to get the improved Texinfo tool out quickly. Additional XSLT stylesheets will be written.