29.05.2014 Views

The history of luaTEX 2006–2009 / v 0.50 - Pragma ADE

The history of luaTEX 2006–2009 / v 0.50 - Pragma ADE

The history of luaTEX 2006–2009 / v 0.50 - Pragma ADE

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

XX<br />

Nice to know<br />

XX.I<br />

Tricky ligatures<br />

Getting the 1.06 release <strong>of</strong> Latin Modern out in the wild took some discussion and testing.<br />

Not only were the names (internal names as well as le names) changed in such a way that<br />

multiple paplications could deal with it, but also some more advanced ligature trickery<br />

was added.<br />

\definefontfeature<br />

[ijtest]<br />

[mode=node,<br />

script=latn,language=nld,strategy=3,<br />

liga=yes,kern=yes]<br />

\definefont<br />

[ijfont]<br />

[name:lmroman10regular*ijtest at 36pt]<br />

\start \ijfont \setstrut fijn ijsje fiets flink effe\stop<br />

This bit <strong>of</strong> Dutch shows up as:<br />

fijn ijsje fiets flink effe<br />

Do you see the trick? <strong>The</strong>re are both an ij and an ligature, but we need to prevent the<br />

ij ligature in jn. Of course not all fonts have this feature, which indicated that you can<br />

never depend on it.<br />

XX.II<br />

Herds<br />

A while ago, Duane, Taco and I published the Cow Font. It's non--trivial to cook up a<br />

font made <strong>of</strong> cows, but <strong>of</strong> course Mojca Miklavec (who else) wants to typeset something<br />

Slovenian in this font. Now, the problem is that in MkIV we don't have fallback characters,<br />

or more precisely, we don't make utf characters active and accent composing commands<br />

are mapped onto utf.<br />

This means that nothing will show up when we have no characters in the dened fonts.<br />

For the moment we stick to simple virtual fonts but because we can use node lists in virtual<br />

fonts, in the near future we will cook up a way to create arbitrary fallback characters.<br />

<strong>The</strong> following example demonstrates how to ‘complete’ a font that misses glyphs.<br />

Nice to know 163

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!