I’m fairly new to Typst, so apologies if this has been discussed somewhere already – I couldn’t find an existing issue or discussion about it.
The problem: In German typography, ligatures like ff, fi, fl, and ft are fine within a single morpheme, but should be suppressed where two morphemes meet. For example:
- flüchten → fl-ligature (single morpheme)
- Auflage → no fl-ligature (Auf + Lage)
- Kaufleute → no fl-ligature (Kauf + Leute)
- Schilfinsel → no fi-ligature (Schilf + Insel)
- …
Compound words are – as you might know – extremely common in German, and suppressing ligatures at morpheme boundaries is a well-established rule in German typography, especially in high-quality typesetting.
For LaTeX there is the package selnolig, that does the work of automatically suppressing the ligatures at those points. Since Typst already does language-aware hyphenation and smartquotes, I wonder if the same would be possible for the ligature suppression.
I’d be grateful for any feedback!