Version 5.8 released
Categories: Development
Version 5.8 of the speedata Publisher is out. After the big 5.6 release this is a smaller one: mostly bug fixes, a few nice improvements, and some housekeeping in preparation for version 6.0.
Deprecations: luxor and fontforge
The most important thing first, because it might affect you: the old XPath parser (luxor) and the old fontforge font handler are now deprecated and will be removed in version 6.0. Both have been replaced by better implementations (lxpath and harfbuzz) that have been the default for a while now.
If your layout still uses one of the old variants, the Publisher writes a warning to the log with a hint on how to migrate. The chapter on compatibility with older versions in the manual shows what to do. If you run into something that works with luxor but not with lxpath, please tell me — that is exactly the kind of feedback I need before 6.0.
The manual is now included
The distribution ZIP files now contain the HTML manual. sp doc serves it through a local web server and opens the browser, so the documentation matches exactly the version you have installed and works without an internet connection. Speaking of the manual: it got a complete restructuring recently, including a new how-to section with recipes.
Warnings for unknown attributes
A typo like <Textblock widht="..."> was silently ignored so far, which could cost you a lot of debugging time for something the software should have told you about. The Publisher now warns about attributes that a command does not know, with the name of the attribute and the element. Attributes from other namespaces (such as xml:lang or your own annotations) are ignored as before.
An extra page between the parts of a split table
The new attribute break-pagetype on <Table> inserts an extra page between the two parts of a table that is split at a page break, for example for the back side of a sheet in duplex printing. The value is the name of a page type, and the content of the inserted page is created with <AtPageCreation> as usual.
Better column balancing
When <Output balance="yes"> distributes content over two frames, the split position is now determined by the actual height of the lines, not by their number. And balanced tables now take the height of repeated table headers (sethead="yes") into account. In both cases the columns end up visibly more even.
Bug fixes
A selection of the fixes in this release:
- Functions defined with
<Function>now return their result in all contexts, including attribute expressions andconcat() - XPath union expressions such as
a | bwork with the new parser, as dointersectandexcept upper-case()andlower-case()now handle umlauts and other non-ASCII characters- Collecting elements in a variable with
<Copy-of>works again - A
<Mark>inside a<Paragraph>is no longer lost - An empty
<Paragraph>now creates an empty line - Pages output via
<SavePages>/<InsertPages>get their trim and bleed boxes, as PDF/X demands - Objects that move to the next page keep their requested grid column
- The letter spacing on
<Span>now scales with the font size - Groups are no longer limited to ten page heights
As always, downloads are at download.speedata.de. The detailed changelog is in the manual. If you find a regression, please open an issue on GitHub.