Skip to content

Releases: Omikhleia/resilient.sile

v2.5.0

12 Oct 18:39
Compare
Choose a tag to compare

This minor release introduces a few enhancements to the cover creation system in master documents, and improves the display of math equation numbers. It also fixes a few issues.

Features

  • (Input) Extended cover creation options in master documents (#93, #95)
  • (Styling) Display math equation numbers now use a resilient style (#90, #91)
  • (Book class) Display math equation numbers subscribe to the cross-referencing system (#90, #91)

Fixes

  • (Styling) Lua 5.1 compatibility issue with the "thsp" unit (#84, #85)
  • (Packages) Lost headers and folios, and leaking styles in the bible.tei package (#86, #87)

Other

  • Dependencies have been updated to markdown.sile 2.2.0 and printoptions.sile 1.2.0 (#92, #94, #96).
    (Installation with luarocks will automatically install the required versions, so this note is mostly for rare users with custom setups.)
  • The user manual also received several improvements.

Migration notes

The display math equation numbering relies on the feature introduced in SILE 0.15.0.

Other than that, the minimum supported version of SILE is still 0.14.13 theoretically, but we strongly encourage you to use the latest version of SILE, which is 0.15.5 at the time of writing.
When SILE reaches version 0.16, support for SILE 0.14 will definitely be dropped.

v2.4.0

31 Aug 17:29
Compare
Choose a tag to compare

This minor release adds support for SILE 0.15, while still maintaining compatibility with SILE 0.14.11 and later.
However, we strongly recommend upgrading to at least SILE 0.15.5 for the best performance and compatibility.
If you are using an older version of SILE, please upgrade to avoid potential issues.

v2.3.0

17 Mar 22:40
Compare
Choose a tag to compare

This minor release introduces several new features.

The main one is the support of "decorations" in character styles, to easily customize underlined content, struck out content, redacted or highlighted content.

Features

  • (Styling) Add decorations to character styles (#78, #76, #75)
    • Character styles now support an additional "decoration" element, refer to the documentation for more details.
  • (Packages) Add resilient.liners package (part of the above feature)
    • This is a technical package using the new "liners" (constructs that can span multiple lines), which will be part of SILE 0.15 (and are already available to re·sil·ient via the silex.sile compatibility layer).
    • It provides underlines, strikethroughs, redacted and highlighted ("mark") constructs, with support for "rough" sketchy variants.
  • (Packages) Add piecharts.sile dependency (#79, #80)
    • This recent addition to the SILE ecosystem provides for the rendering of pie (donut) charts from data in CSV format.

Migration notes

Dependencies have been updated to silex.sile 0.5, markdown.sile 2.0 and ptable.sile 3.0.
While most regular users shouldn't be impacted, all of these introduce slightly breaking changes in their behavior, please check their release notes if you think you might be affected.

v2.2.1

28 Dec 19:28
Compare
Choose a tag to compare

This is a patch release with better compatibility for Lua "minimum" profile, ensuring the module works with Lua 5.1 (and most of all with LuaJIT 2.x, since SILE is moving towards that target in official builds).
A few other minor issues were also fixed on the way.
Merry Christmas and happy new year!

Fixes

  • Ensured Lua 5.1 minimum compatibility (#70, #71) -- Many thanks to @alerque on the topic!
  • Added robustness to master document parsing (bc3f04f)
  • Fixed a YAML error on array of multi-line strings (via an update of the currently-vendored tinyyaml library) (bfcc8d8)
  • Added several missing styles and elements to the USX (Bible XML format) support package (#72, #74)

Migration notes

A few dependencies are also updated (ptable, textsubsuper, markdown).
As the consequence, the minimum supported version of SILE is now 0.14.13.
Older SILE versions are no longer officially supported, please ensure upgrading you setup.

v2.2.0

01 Oct 17:54
b6ed68a
Compare
Choose a tag to compare

This minor release introduces several new features.

The main one is the addition of "book matters" in master documents:

  • Automatically generated pages (half-title pages, title pages, end-papers...) based on your document metadata
  • Provisions for generating front and back cover pages

From a single master document file, you can now generate a book from front-cover to back-cover, with all the required "usual" pages in between and all the content at the right place.

Features

  • (Input) Add "book matters" feature to master documents (#57)
  • (Book class) Running header variability for different types of books: class option for controlling what goes in running headers (#58, #68)
  • (Book class) Add style-aware implementation for code and verbatim (#59)
  • (Packages) Add resilient.defn package for styled definition items (#60, #65)
  • (Packages) Add more paragraph styles for resilient.poetry environments (#62, #63)
  • (Packages) Add style-aware resilient.verbatim package (#59)

Fixes

  • (Styles) Standalone chapter/part number does not work with all paragraph alignments (075f051)

Documentation

The user manual also received several improvements.
It now uses "book matters" and covers.

Migration notes

The internal implementation of the sectioning hooks has changed again (#58, #68). You shouldn't be affected, unless you implemented your own derived document class and/or tweaked the provided hooks. In this case, you may have to update your code.

A few 3rd-party dependencies are updated. Notably, the silex.sile dependency is upgraded. As stated in the previous release, be aware that the latter overrides some of the core SILE components, changing their behavior — normally for the better, but it may break some workflows.

v2.1.0 Nala

17 Aug 19:27
60a71d6
Compare
Choose a tag to compare

This minor release introduces several new exciting features.
And it's an anniversary release.

First of all, it's the first release where all dependencies are versioned on LuaRocks, so that you can now install them without the --dev option and get the required versions of each component.
This should make it much easier for you to install or upgrade the package collection, and get all dependencies right:

luarocks install resilient.sile

The main new feature in this release is the support of a master document format, which allows you to split your document in several files, and have them easily assembled into a single book. With Djot and Markdown also made first-class citizens, you can now write your book without using the SIL language at all, or only in a limited way. Future versions of the master document format will make the need of SIL even more optional.

In other words, with its style paradigm and now with master documents, the re·sil·ient collection introduces a new way of writing books with SILE.

Styles have also been updated to support text casing, a must-have feature for novels and other literary works. For instance, you may now have uppercase chapter titles in the book body, independently from running headers or the table of contents.

Features

  • (Input) Master document format (#18, #51)
  • (Style) Character style support for text casing (#41)
  • (Layouts) Add a "geometry" page layout for user-defined arbitrary margins (ae9d862)
  • (Layouts) Add the \layout command for changing the page layout (05594b6)
  • (Book class) Make djot package first-class in resilient.book class (8aaef48)
  • (Packages) Experimental packages for XML USX bible and XML TEI Gotica bible formats (#53)

Fixes

  • (Styles) Extraneous blank pages are sometimes inserted before chapters or parts (4992c8c)
  • (Styles) Incorrect running header initialization in absence of odd header (#43)
  • (Book class) Running headers must be tracked to occur on the correct page (#43, #54) ⚠️
  • (Book class) Wrong section number level in odd page header (#47) ⚠️
  • (Styles) Chapter title in running header should honor its numberstyle (#46) ⚠️
  • (Book class) Missing borders in \showlayoutwith latest version of ptable.sile (f56ae98)
  • (Packages) A document.parskip in relative unit causes issues in lists (#3)
  • (Styles) Bold is font weight 700, not 800, default styles are erroneous (005291a)
  • (Packages) Better conformance of the poetry package with the style paradigm (8ba1bf8)

Packaging

  • Switch to versioned rocks on LuaRocks.
  • Dependency on sile·x as a common layer for providing common bricks and blocks, compatility features and opinionated hacks. ⚠️

Documentation

The user manual also received several improvements.

Migration notes

Some of the fixes above, marked with a ⚠️ sign, may affect your documents.

Early adopters who used version 2.0 may have to manually fix odd and even running header styles in their (earlier-generated) style file, as they were not properly honored.

Also in relation with running headers, the internal implementation of the sectioning hooks has changed to address a number of issues (#43, #47, #54). You shouldn't be affected, unless you implemented your own derived document class and/or tweaked the provided hooks. In this case, you may have to update your code. The current implementation is a workaround in order to avoid breaking styles more than needed, and may be subject to further changes in the future.

An important code refactor occurred to support text casing (or other input filters) in styles. Normally, it shouldn't affect you, unless some edge cases were overlooked. Please report any issue you may encounter.

More importantly, the module collection now depends on silex.sile. Your "resilient" workflows will work as before, and even better... but be aware that sile·x, once installed, overrides some of the core SILE components. Notably, the core "autodoc" package may break and a few other little used and unstable core packages may be affected. As a consequence, the SILE manually may not compile anymore, etc. That's a little price to pay for the benefits of abstracting dirty hacks that were previously cluttering the resilient codebase.

Anniversary release

My first involvement in the SILE project was in late August 2021.

Almost two years later, I'm happy with the achievements of the resilient collection. On the way, I became the third code contributor to Lunamark and to SILE, and the top contributor to the SILE ecosystem of 3rd party packages on LuaRocks. I don't particularly feel any pride about this, all I wanted is a working solution for typesetting books...

So after trying this collection, if you enjoy it as much as I do, please add a "Star" ⭐ to its GitHub repository. It's important, for its visibility first of all, and also for myself to feel this is useful to other peoples. You are also welcome contributing to the GitHub discussions or reporting issues.

But most of all, try the collection, really, and enjoy it!

v2.0.1

25 Apr 23:30
Compare
Choose a tag to compare

This patch release fixes a few annoying issues.
It also benefits from recent fixes and improvements in SILE 0.14.9.
The new features in this release are improvements, needless to say, over a not-so-good behavior in previous versions--They are bordering the line and might actually be considered as small bug-fixes too, hence the decision to include them.

Features

  • (Styles) Correctly support URL styling with (internally) SILE 0.14.9's new urlstyle (#28, #35).
  • (Styles) Properly implement "collapsing" of consecutive skips (#27, #36), also avoiding some weird, possibly unexpected, skips in documents.

Fixes

  • (Styles) Section number is no longer shown if the main numberstyle is not defined (#22).
  • (Styles) Styles did not allow not showing captioned element numbers (#21).
  • (Styles) Default folio styles were not cancelling paragraph indentation (#30, #34). ⚠️ See "migration notes" below.
  • (Table of contents) Avoid extra ToC rerun warnings when the ToC hasn't changed (#26).
  • (Layouts) Proper cast of layout ratio to a number (448a264).

Documentation

The user manual also received several improvements and fixes (#31, #33, #38, #39, #40 and more via other bug-fixes)

Recommendations

Important issues that also affected this collection were fixed in SILE v0.14.9.
We strongly recommend upgrading SILE, if you were using an older version.

Some other dependencies (e.g. markdown.sile) also received important fixes.
We strongly recommend checking and upgrading all dependencies, if you had installed an older development version of the present collection.

Migration notes

Early adopters who used version 2.0.0 may have to manually fix the folio and header styles in their (earlier-generated) style file, see #42.

v2.0.0

12 Mar 10:12
d25cc41
Compare
Choose a tag to compare

Our first major official milestone is reached!

It starts at 2.0, since this repository is the successor of the my earlier “Omikhleia’s classes & packages for SILE”, fully redesigned for SILE v0.14 or upper, and provided as a separate installable module.

I feel that the packages and class proposed here are now usable, with a pretty good set of core features.

Besides all the changes from SILE v0.12.x to v0.14.x. the redesign entails many more things, with breaking changes, hence the major version and the new name.

The porting effort started mid-August 2022, with a hiatus in Fall 2022 as the focus went on the markdown.sile collection. Resumed after the latter was completed, the new implementation here at last brings to life my vision regarding two exciting features:

  • The styling paradigm, which abstracts (almost) all style decisions outside the code, and provides an external style file for you to tune at convenience. You may regard it as some “CSS made simpler” solution to styling.

  • The page layout implementation, which allows easily selecting a page layout (a.k.a. page masters) from a curated set of usual or standard layouts, so you do not have to bother re-inventing the wheel.

And of course, the resilient book class aims at being an interesting alternative to the standard SILE book class, leveraged with additional features and a lot of options.