The SILE Typesetter
  • Home
  • What is SILE?
  • Examples
    • Global Scripts
    • Packages
  • Manual (PDF)
  • Lua API
  • Rust API
  • SIL Grammar
  • Download
GitHub

SILE v0.14.15 Is Released

27 Jan 2024 — Caleb Maclennan

Version v0.14.15 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

In today's minor release we tinker with language support.

Didier Willis contributed improvements to non-breaking space handling in French. He also setup handling of Catalan hyphenation at ela geminada and Polish hyphenation at existing hyphens. Turkish gained a new setting (on by default per the current Turkish Language Association guidelines) for handling hyphenation at apostrophes. The previous behaviour (used by some publisher style guides) is available by toggling off the new setting.

All languages gained an (on by default) setting that makes spaces after em-dashes at the start of paragraphs be fixed width. This is used in at least French and Turkish typography to typeset dialogue and the fixed spacing keeps everything lining up per expectations. Other languages may benefit as well, but also the feature can be disabled if flexible spacing is actually desired.

Details for each of these languages and their related settings are in the SILE manual.

Features

  • languages: Accomodate alternate Turkish hyphenation guidelines at apostrophes (92904fc)
  • typesetters: Support for speaker change introduced by em-dash (2afa4cb)

Bug Fixes

  • languages: Break at ela geminada in Catalan cancels the punt vola (f8c4c1e)

  • languages: Break at explicit hyphen in Polish repeats the hyphen (0f8c7aa)

  • languages: Remove multiple repetitions of U+00A0 nbsp in French (0356a49)

  • languages: U+00A0 nbsp in French causes unexpected word breaks (b93975c)

SILE v0.14.14 Is Released

23 Dec 2023 — Caleb Maclennan

Version v0.14.14 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

Merry Christmas!

Not this isn't the Rusty release you might want in your stocking. That is coming along nicely though, we're just including an abitioun rollup of breaking changes and going slow to do it right. You can preview the release notes or follow issues in the milestore for teasers. More notably there are already lots of ways to run the development release: Homebrew has --HEAD support, Docker images are available, the Nix flake works, Arch Linux has VCS packages, and more. If you want to start putting it through the paces go ahead.

Until the cookies are fully baked, this minor release has a few goodies that are not breaking changes. Didier Willis contributed some updates to the dropcaps package to better handle fonts with descenders in their capitals. He also contributed some improvements to Unicode handling: soft hyphen and non-breaking spaces work as expected. SILE has perhaps more robust ways of defining custom hyphenation and glue nodes, but the Unicode handling is convenient is handy if you input content has such data anyway. For bonus points some CLI error messages have been dramatically improved to be more informative and less repetative.

Features

  • cli: Change module load error to suggestion for how to install 3rd party modules (c280050)
  • languages: U+00A0 non-breaking space must be stretchable by default (b769a63)
  • typesetters: Support U+00AD soft hyphen as discretionary break (285507e)

Bug Fixes

  • backends: Fix plain text backend to work in LuaJIT/Lua 5.1 (b185d49)

  • cli: Stop outputting error messages twice on failure to process main file (da5d609)

  • core: Use nil-safe and Lua-version-robust table utils (2405b23)

  • packages: Adjust dropcap logic for letters with a depth (fd6963d)

SILE v0.14.13 Is Released

30 Oct 2023 — Caleb Maclennan

Version v0.14.13 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

This minor release brings a couple improvements from a new contributor, João Quinaglia. We have one new feature, a boolean option flag on our base class that enables landscape mode. Any paper orientation has been supported already, but the preset paper sizes only had the standard portrait orientation and landscape orientations required entering custom dimensions. This flag makes it a bit easier to swap the X and Y dimensions of the standard (or custom) value parsed from the papersize option. Additionally he fixed a bug in the frametricks package such that using the \makecolumns function doesn't break relative frame constraints used by, for example, footnote or folio frames. This fix only works for TTB-LTR automatic column setups for now.

Finally, some build system fixes and features were backported from v0.15.0 development work. Most significantly the handling of the SILE_PATH environment variable now allows multiple paths, which in turn allows a single project to utilize multiple external collections of 3rd party packages rather than having to collate them all into one location.

Features

  • classes: Add landscape option to base class (#1892) (0fb9ade)
  • cli: Allow multiple runtime SILE_PATH segments (backport from develop branch) (e7c8fe2)

Bug Fixes

  • frames: Update frame constraints with new frame IDs after \makecolumns (b2d6b4f)

SILE v0.14.12 Is Released

11 Oct 2023 — Caleb Maclennan

Version v0.14.12 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

This is another minor maintenance release. We throw a few less warning messages having dropped a few that were not actually informative. A few memory management bugs have been fixed, most notably affecting Lua 5.1. For the most part we hope you are on LuaJIT anyway (or your system's default Lua, hopefully newer than 5.1) but we do try to keep everything working smoothly on any platform. A few other minor improvements are noted below.

In other news, the v0.15.0 release is coming soon too. It is already stable enough to be used for real work and should play nice with most systems. Issue #1864 has some notes on how to run the development branch for it before it is released.

Features

  • i18n: Add Portuguese localizations for bibtex package (#1859) (f716c35)
  • utilities: Add utility function for console messages without trace info (18526ce)

Bug Fixes

  • build: Make sure vendored luarocks isn't a phony target that runs repeatedly (713434d)

  • core: Allocate exactly what we use, not a guess with an extra just in case (640ded0)

  • core: Correct usage of HarfBuzz when passing a filtered list of shapers (f488643)

  • core: Fixup class loader so cache is all Lua module specs (#1863) (7efff5b)

  • packages: Don't warn on TOC content change if not actually used (87c443d)

SILE v0.14.11 Is Released

22 Aug 2023 — Caleb Maclennan

Version v0.14.11 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 only fix the things we broke yesterday. This is a very minor release with only a couple of touch-ups to actual code. The biggest motivation for the release is actually the documentation. Our documentation changes don't show up in the automatic change logs, but we fixed a number of problems with the layout of the manual. Over the last couple releases we introduced several mistakes in the documentation code causing a bit of mess. The manual still isn't perfect, but at least no bits are drawn over other bits any more! Additionally a whole new chapter on how to write modules to add input and output formats landed thanks to Didier Willis.

Bug Fixes

  • core: Leave legacy masterFilename alone but use first input filename internally (29667a7)

  • core: Make masterFilename actually a filename (759131e)

  • packages: Avoid mix-and-matching indents in fixed-width specimin blocks (de41cac)

  • utilities: Use real semver parser for deprecation warnings (5f0fed5)

« Prev 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Next »