Version v0.14.9 of SILE has been released and is available for download! See the included CHANGELOG.md or review the commit history for more explicit details.
Summary of Improvements
Today we have a substantial rollup of small fixes. No one thing here is going to knock your socks off, but lots of things are just better.
On the documentation front a new contributor, John Labovitz, stepped in with a huge copy-edit of the entire manual.
For shiny new features, Didier Willis added a new scalebox
package for reshaping other output.
He also taught some existing packages new tricks, such as adding style hooks to the url
package and allowing the infinitely stretchy fill glue nodes to be initialized with a starting length.
The CLI gained a new --quiet
flag to suppress info and warning messages for those times when you just don't want to know what the engine is telling you.
In bug extermination news, the list of squashed ones is long, and some of them had been around for a long time.
Didier did a lot of work under the hood with hboxes and discretionary node handling.
The upshot for end users is that a lot of weirdness with parindent
settings and they way content that didn't fit on one page is pushed to the next has been smoothed over.
Your indents shouldn't ever get applied twice, underlines won't apply to the indentation space, unnumbered chapters won't sometimes disappear from your ToC, and so forth.
Features
- classes: Add Picas unit to cover all units speced in Docbook (88f03fa)
- classes: Implement the
\code
command in the plain class (0d371ba) - cli: Add -q / --quiet flag to reduce output to essential errors (#1759) (f69ed20)
- core: Support initializing fill glues with a width (#1765) (5bc372a)
- packages: Introduce urlstyle hook in the url package (8f6235d)
- packages: New scalebox package for arbitrary box re-scaling (a11f61e)
- packages: Support migrating content in re-wrapped hboxes (da3ab6d)
- typesetters: Implement hbox building logic in the typesetter (0f5bc69)
Bug Fixes
-
build: Distribute SVG and FTL source files in packages (7cef0ea)
-
classes: Avoid justification issues with relative parindent (3ffd272)
-
classes: Make sure un-numbered chapters make it in the ToC (e5af292)
-
classes: Parse bare number and percentage units in docbook images (8b965b9)
-
classes: Setting current.hangIndent is a measurement (e213d6e)
-
cli: Return success if --help explicitly requested (#1737) (35a229d)
-
core,typesetter: Discretionary nodes are incorrectly handled (dd7d05c)
-
core: Ensure restoring settings top-level state does not error (fce8447)
-
outputters: Update Cairo/Podofo hbox debug API to match libtexpdf (#1703) (607dcf7)
-
packages: Correct image aspect preservation logic (6ace5b1)
-
packages: Fix output of debug breaks in infonode package (#1725) (c8a1467)
-
packages: Make sure pullquotes start in block mode (#1774) (00151bc)
-
packages: Strip content position in ToC entries (#1739) (23345ea)
-
packages: Text conversion in bookmarks has spacing issues (7ef2bb4)
-
typesetter: Account for discretionary dimensions in hbox building (91cb950)
-
typesetter: Avoid initializing new line during hbox creation (ae455a1)
-
typesetter: New typesetter instances shall not reset settings (16d8a6a)
-
typesetter: Skip lines containing only discardables without ignoring next lines (9c3dc65)
-
typesetter: Top glues shall be skipped when streching/shrinking a page (8818a24)
-
typsetter: Hack around scoping issues for parindent setting (fc85298)
-
utilities: Enforce stricter type casts (SU.cast, SU.boolean) (a325eb7)