Include / exclude lists

Post Reply
tiro_j
Posts: 27
Joined: 26 Jan 2021

Include / exclude lists

Post by tiro_j »

KO produces a lot of kerning that I don’t want, e.g. lowercase-to-uppercase, lowercase-to-smallcaps, math operators to non-math characters. At the same time, it misses some pairs that I do want, e.g. kerning for North American indigenous languages that are under-represesented in online corpora.

Is there any way KO could be set up to make use of lists of pairs to be included or excluded, preferably expressable as rules?
User avatar
Tim Ahrens
Site Admin
Posts: 502
Joined: 11 Jul 2019

Re: Include / exclude lists

Post by Tim Ahrens »

I can see that rules could be useful in some cases but they are not implemented yet.

To suppress kerning, you can use “No kerning” for glyph sides if that is applicable, or zero-value independent pairs but this is feasible only if there aren’t too many combinations. In the same sense, you can also use user-set autopairs to force the inclusion.

Lowercase-to-uppercase is a somewhat debatable case but I decided to include it because generally, they are useful, and they don’t have high priority when Kern On is forced to choose a subset in the final kerning, via size limit. Some users may have specific reasons to omit them, and rules would solve this, but it is not possible for now. (It may help if I understand why lowercase-to-uppercase is undesirable in some cases.)

Lowercase-to-smallcaps is not autokerned by default. Maybe you have an unusual setup of OT features? You can send me the file so I can have a closer look.

If there are missing pairs for North American indigenous languages, or any other script, feel free to send me specific corpora or a different definition of the necessary pairs, as we have done in the past.
tiro_j
Posts: 27
Joined: 26 Jan 2021

Re: Include / exclude lists

Post by tiro_j »

Thanks, Tim. I think I could get some ways using the ‘No kerning’ for straight-sided glyphs.

The issue for North American indigenous languages is that corpora don’t exist, or in some cases are protected by communities. So I take a shape-based approach, even though I am sure this produces kerning for some sequences that will never occur.
Post Reply