I'm trying to reproduce an old book with XeLaTeX, and it has the ct ligature but not the st ligature. The Ligatures=Rare
option seems to turn either both on or off. Is there a way to select which ligatures to use in XeLaTeX? I am using the Adobe Caslon Pro OTF fonts. I know the microtype package may be able to do this but it is not supported by XeLaTeX. Any help is appreciated.
Another question I have is, is it possible to change ligature options midway through a document? Or perhaps temporarily change the ligatures for one occasion?
Best Answer
This is possible using Mico's
selnolig
package. It is on CTAN, and added to TeX Live and MikTeX.selnolig
requires the document to be compiled withlualatex
, but that wouldn't keep you from using your fonts; indeed, it is pretty similar toxelatex
in usage.(Btw,
microtype
is available for LuaTeX -- most of its functions -- but it cannot selectively deactivate ligatures. That's whyselnolig
was created.)In this MWE, I load
selnolig
without either of its language options (it can deal with German and English), so it only gets rid of ligatures where I tell it to with\nolig
rules. Since I don't have the Adobe Caslon Pro OTF fonts, I used Linux Libertine, which has the ⟨st⟩ and ⟨ct⟩ ligatures in its Historical set.Just as a comparison, here's the output without
selnolig
:selnolig
's main purpose is to automatically suppress ligatures across morpheme boundaries in German and English texts. Its documentation explains all about how to use it (and how to uselualatex
, if you'd like some pointers there).See also New package, selnolig, that automates suppression of typographic ligatures on Meta.