Search found 341 matches

by Tim Ahrens
26 Mar 2024
Forum: Kern On forum
Topic: Special Spacing Not Working
Replies: 15
Views: 3163

Re: Special Spacing Not Working

Thanks for your help, Sebastian. I definitely found the reason why the default groups were not set properly. They were set in the KO engine but not written to the userData in Glyphs. This discrepancy is the reason for the funny behaviour between the very first start with a font, and the next re-star...
by Tim Ahrens
25 Mar 2024
Forum: Kern On forum
Topic: Special Spacing Not Working
Replies: 15
Views: 3163

Re: Special Spacing Not Working

Thanks for the explanation! I think I found the problem and fixed it.

Can you confirm: Setting the special spacing group only fails when starting with a fresh font, and before re-starting Kern On. Is that correct? Once you re-start Kern On, all behaviour is as expected, right?
by Tim Ahrens
22 Mar 2024
Forum: Kern On forum
Topic: Special Spacing Not Working
Replies: 15
Views: 3163

Re: Special Spacing Not Working

Hello both of you, sorry about this. This is really frustrating for me as well because I really cannot reproduce the problem. Of course, I can see that it is happening in the video. Thanks for the detailed analysis, Alex. Seeing 1 vs 3 is very strange. Was the “Parenthesis” group one you created you...
by Tim Ahrens
18 Mar 2024
Forum: Kern On forum
Topic: loosing kerns
Replies: 6
Views: 364

Re: loosing kerns

As long as you don’t lose models or independents because of the crash, you can just finalize again. (Keep in mind that all kerning except models and independents is “lost” the moment you start Kern On).
by Tim Ahrens
18 Mar 2024
Forum: Kern On forum
Topic: Glyph combinations used as components not kerned
Replies: 14
Views: 6864

Re: Glyph combinations used as components not kerned

Yes, we finally got it to work last week! I sat down with Georg to resolve this. It will be included in the next release.

Do you want me to send you my current in-house version if it’s urgent?
by Tim Ahrens
18 Mar 2024
Forum: Kern On forum
Topic: Add models and ind. for selected pairs from
Replies: 1
Views: 163

Re: Add models and ind. for selected pairs from

Some options are explained in the manual: https://kern-on.com/manual/#font-settings
Does that work for you?
by Tim Ahrens
16 Mar 2024
Forum: Kern On forum
Topic: loosing kerns
Replies: 6
Views: 364

Re: loosing kerns

You can just reply to your purchase confirmation e-mail, or use the one given in the footer at https://kern-on.com/
by Tim Ahrens
16 Mar 2024
Forum: Kern On forum
Topic: /fl kerned differently than /l
Replies: 2
Views: 238

Re: /fl kerned differently than /l

This is really difficult to answer without having the font file, I am afraid. Would you mind sending it to me?
by Tim Ahrens
16 Mar 2024
Forum: Kern On forum
Topic: loosing kerns
Replies: 6
Views: 364

Re: loosing kerns

This is really difficult to answer without having the font file, I am afraid. Would you mind sending it to me?
by Tim Ahrens
15 Mar 2024
Forum: Kern On forum
Topic: Kern On user manual
Replies: 6
Views: 357

Kern On user manual

Hello everyone! I finally assembled a proper user manual:
https://kern-on.com/manual/

Some explanations are rather detailed – they might be interesting if you want more in-depth information than what’s shown in the videos.
by Tim Ahrens
15 Mar 2024
Forum: Kern On forum
Topic: Fighting with KO over the same kinds of model pairs regardless of font. What am I missing?
Replies: 1
Views: 1519

Re: Fighting with KO over the same kinds of model pairs regardless of font. What am I missing?

Hi Brian, Thanks for your detailed feedback. Some of this is impossible to comment on without having the file or seeing more details, some of which I will try to answer here. Regardless of what font I’m working with in KO, I’m finding that with essentially any letters that have extremes amounts of n...
by Tim Ahrens
15 Mar 2024
Forum: Kern On forum
Topic: Inconsistent Auto Pairs
Replies: 1
Views: 1196

Re: Inconsistent Auto Pairs

This does look a bit strange indeed. Would you mind sending me the file?

As a side note, one thing I noticed (although it does not explain the behaviour) is, why does the V have larger sidebearings than the W? I’d expect them to be the same or smaller.
by Tim Ahrens
07 Mar 2024
Forum: Kern On forum
Topic: "Sync kerning types from" affects source file when changes are made in target
Replies: 2
Views: 1277

Re: "Sync kerning types from" affects source file when changes are made in target

It turned out to be a UI glitch. The list of special spacing groups simply did not get updated when we activate a different file (if KO is running for both files). Just fixed this. Btw, the old special spacing groups are still available in the drop-down menu after "Sync kerning types from"...
by Tim Ahrens
07 Mar 2024
Forum: Kern On forum
Topic: "Sync kerning types from" affects source file when changes are made in target
Replies: 2
Views: 1277

Re: "Sync kerning types from" affects source file when changes are made in target

Hmmm... scratching my head.

This only happens if KO is running for both files. You could open both files, start KO for the target font and sync. Then close the other file.

It’s probably a bug, will have a closer look. Thanks for the notice.
by Tim Ahrens
01 Mar 2024
Forum: Kern On forum
Topic: "Add models and independents from..." is not working
Replies: 2
Views: 1076

Re: "Add models and independents from..." is not working

One thing I noticed is that it does not import special spacing groups. No, this is a separate feature. It is called “Sync kerning types from”, also in the (•••) menu. “Kerning type” means special spacing, standard kerning or no kerning. If you want to transfer both then you should first transfer (s...
by Tim Ahrens
01 Mar 2024
Forum: Kern On forum
Topic: Generate Pairs only with multiples of 4
Replies: 10
Views: 2094

Re: Generate Pairs only with multiples of 4

Thanks for the scripts, Manuel! But compared to the 2–4% with your palettize script I was getting a much better improvement in file size. This figure was just what I found back then, from a handful of files I was generating at the time. Comparing the saving to the overall file size is not a very sen...
by Tim Ahrens
01 Mar 2024
Forum: Kern On forum
Topic: UcLc kerning glyphs set with 'no kerning'
Replies: 6
Views: 1386

Re: UcLc kerning glyphs set with 'no kerning'

KernOn keeps telling me the right side bearing of my B is too tight so it kerns it away from the H by 7. Visually it’s now too loose to my eye, so I make a model pair and set it to zero. Yes, that’s the way to go! But now that affects my nn pair, which is also a model pair set to zero. That’s impos...
by Tim Ahrens
29 Feb 2024
Forum: Kern On forum
Topic: Too many Independent Pairs, Missing Kerning
Replies: 3
Views: 1314

Re: Too many Independent Pairs, Missing Kerning

Manuel, sorry, here is the reply to what is left of your message:

What exactly was the problem? Did Kern On remove a model that contained the e? Which was the other model it was conflicting with?

It’s difficult to say what went wrong without seeing the file.
by Tim Ahrens
29 Feb 2024
Forum: Kern On forum
Topic: UcLc kerning glyphs set with 'no kerning'
Replies: 6
Views: 1386

Re: UcLc kerning glyphs set with 'no kerning'

You should definitely not set the left side of the /n to “No kerning” as there are many combinations with /n as the second glyph that require kerning.

I’d strongly advise against using “No kerning” for any letters.
by Tim Ahrens
29 Feb 2024
Forum: Kern On forum
Topic: Generate Pairs only with multiples of 4
Replies: 10
Views: 2094

Re: Generate Pairs only with multiples of 4

If you currently use multiples of 8 at 1000 UPM, you can re-scale the font to 125 UPM as 1000 / 8 = 125.
by Tim Ahrens
29 Feb 2024
Forum: Kern On forum
Topic: Too many Independent Pairs, Missing Kerning
Replies: 3
Views: 1314

Re: Too many Independent Pairs, Missing Kerning

Hi mckc: overkern Let’s try to avoid this expression; it does not have any clearly defined meaning (and it is not commonly used afaik). In Rainer’s script it has a very specific meaning (see discussion here ), it seems you are using it with a different meaning (and, funnily, that spam bot with yet a...
by Tim Ahrens
24 Feb 2024
Forum: Kern On forum
Topic: Generate Pairs only with multiples of 4
Replies: 10
Views: 2094

Re: Generate Pairs only with multiples of 4

Thanks for your work, Manuel! There was lots of extensive Kern On feedback coming in today so I will need a few days to have a proper look at it and write the thorough answer it deserves. Miyamoto, it seems you are working with 1000 UPM but then place everything, including contour points, spacing an...
by Tim Ahrens
22 Feb 2024
Forum: Kern On forum
Topic: Generate Pairs only with multiples of 4
Replies: 10
Views: 2094

Re: Generate Pairs only with multiples of 4

There were similar requests before. My feeling is that the main motivation is to keep things “tidy under the hood”. This seems to be a strong (though irrational) desire among many designers, which I initially underestimated. I will soon implement the quantisation of the autokerning values (multiples...
by Tim Ahrens
22 Feb 2024
Forum: Kern On forum
Topic: How to avoid overkerns?
Replies: 14
Views: 3109

Re: How to avoid overkerns?

Some spam filters are set to allow all posts from users that already have at least one approved post (I just saw that setting in my own filter but it is not active). That explains the strategy: first, one innocent post, followed by spam posts.
by Tim Ahrens
21 Feb 2024
Forum: Kern On forum
Topic: Generate Pairs only with multiples of 4
Replies: 10
Views: 2094

Re: Generate Pairs only with multiples of 4

Can you explain what exactly “a limited amount of kerning pairs” would be? Also, what exactly are you trying to achieve? Not sure I understand.
by Tim Ahrens
20 Feb 2024
Forum: Kern On forum
Topic: How to avoid overkerns?
Replies: 14
Views: 3109

Re: How to avoid overkerns?

Oh dear, I just found out that “DanielNiz” is in fact a spam account. Seems like LLMs are getting good enough to fool me (and the spam filter, which usually works quite well). In future, I’ll face the challenge of trying not to waste my time with stupid LLM-generated posts but also not to insult rea...
by Tim Ahrens
20 Feb 2024
Forum: Kern On forum
Topic: How to avoid overkerns?
Replies: 14
Views: 3109

Re: How to avoid overkerns?

Daniel, what exactly does “overkern” mean as you use it? The term does not have a clear definition, and it is not widely used. The script referred to at the beginning of this discussion calls “overkerned” any pair that has a strongly negative kerning compared to the smaller advance width of the two ...
by Tim Ahrens
19 Feb 2024
Forum: Kern On forum
Topic: How to avoid overkerns?
Replies: 14
Views: 3109

Re: How to avoid overkerns?

Yes, that’s exactly the problem.
by Tim Ahrens
16 Feb 2024
Forum: Kern On forum
Topic: How to avoid overkerns?
Replies: 14
Views: 3109

Re: How to avoid overkerns?

Btw, the only perfect solution to handle the challenges described above is to use kerning triples. Implementing this in Kern On is fairly high on my to-do list, and Glyphs will also soon be more powerful at handling triples, I heard. ;-)
by Tim Ahrens
16 Feb 2024
Forum: Kern On forum
Topic: How to avoid overkerns?
Replies: 14
Views: 3109

Re: How to avoid overkerns?

Update: It turned out that the script “New Tab with Overkerned Pairs” did not consider exceptions. I implemented that, and it is updated in the live version now. So, we should not get false positives from the script any more. I also slightly tweaked the algorithm in Kern On so as to avoid generating...
by Tim Ahrens
14 Feb 2024
Forum: Kern On forum
Topic: How to avoid overkerns?
Replies: 14
Views: 3109

Re: How to avoid overkerns?

> I would love to, but KO keeps overkerning Thanks for pointing this out. I found out what is happening. This happens because Kern On usually has to omit exceptions in order not to exceed the given kB size. This means that, for rare pairs, we have to accept that the final kerning value deviates from...
by Tim Ahrens
13 Feb 2024
Forum: Kern On forum
Topic: How to avoid overkerns?
Replies: 14
Views: 3109

Re: How to avoid overkerns?

Here is an example for reference. As you can see, the kerning value (-138) is exactly -50% of the advance width of quoteright (276). Even though, the script shows this pair if I set the threshold to 55%.
by Tim Ahrens
13 Feb 2024
Forum: Kern On forum
Topic: How to avoid overkerns?
Replies: 14
Views: 3109

Re: How to avoid overkerns?

Just tried this script myself. One question is, where does the default 40% come from? What is the reasoning? Kern On limits the negative autokerning to 50% of the smaller advance width. If I set 50%, the script wrongly reports pairs. In other words, the output of the script is incorrect even accordi...
by Tim Ahrens
11 Feb 2024
Forum: Kern On forum
Topic: no kerning group?
Replies: 2
Views: 1120

Re: no kerning group?

Class kerning (groups, as Glyphs calls it) is not necessarily better in this case: Three glyph-glyph pairs cost 3 * 4 bytes plus overhead for the first glyph. Writing these pairs into the class kerning table will add a row to the table, which costs 2 bytes per cell plus class definition overhead. Wr...
by Tim Ahrens
11 Feb 2024
Forum: Kern On forum
Topic: No kern for accented letters
Replies: 8
Views: 1827

Re: No kern for accented letters

Maybe you omitted the .split() at the end of the first line?
by Tim Ahrens
11 Feb 2024
Forum: Kern On forum
Topic: No kern for accented letters
Replies: 8
Views: 1827

Re: No kern for accented letters

This code should do practically the same but it is more complicated to set up. ;-)
by Tim Ahrens
10 Feb 2024
Forum: Kern On forum
Topic: No kern for accented letters
Replies: 8
Views: 1827

Re: No kern for accented letters

You can also work with glyph names, with space in-between: characters_1st = 'f.calt g.calt t.calt f.liga t.low e.ss04'.split() characters_2nd = 'Aacute Abreve Acircumflex Adieresis Agrave Amacron Aogonek Aring Atilde AE Cacute Ccaron Ccedilla Ccircumflex Dcaron Dcroat Eth Eacute Ecaron Ecircumflex E...
by Tim Ahrens
10 Feb 2024
Forum: Kern On forum
Topic: No kern for accented letters
Replies: 8
Views: 1827

Re: No kern for accented letters

This seems to be a unique use case. Right now, there is no elegant, built-in way of achieving what you want. Maybe I should add a feature that allows to specify user-set autopairs for groups of glyphs. For now, you can use this code: characters_1st = '◆■‣•' characters_2nd = 'ÁĂÂÄÀĀĄÅÃÆĆČÇĈĎĐÐÉĚÊËĖÈĒ...
by Tim Ahrens
09 Feb 2024
Forum: Kern On forum
Topic: Unpredictable exceptions
Replies: 5
Views: 1627

Re: Unpredictable exceptions

I suppose you refer to the little lock symbol in Glyphs next to the kerning value? It’s just how Glyphs shows you whether a pair is a class-class pair (locked icon) or a glyph-glyph pair, a.k.a. exception (unlocked icon). It’s a strange visualisation as class-class pairs are not protected (“locked”)...
by Tim Ahrens
07 Feb 2024
Forum: Kern On forum
Topic: Unpredictable exceptions
Replies: 5
Views: 1627

Re: Unpredictable exceptions

Sorry you are not getting the results you expect. It’s a bit difficult to tell what is going on without seeing it myself. Would you mind sending me the .glyphs file? Then I can have a closer look. It is not unthinkable that there is a small slip somewhere in the code that causes wrong output in your...
by Tim Ahrens
01 Feb 2024
Forum: Kern On forum
Topic: "Blue Zone" kerning
Replies: 5
Views: 3295

Re: "Blue Zone" kerning

Sorry for not answering to your reply quicker. a user-specified filter into the step between where the deviations are calculated and when they are multiplied by the frequency of the pair. I don’t think being able to customize this value is necessary. It is not really a mater of taste and I believe a...
by Tim Ahrens
01 Feb 2024
Forum: Kern On forum
Topic: Does the Kern On algorithm prioritize reducing further suggestions?
Replies: 2
Views: 1280

Re: Does the Kern On algorithm prioritize reducing further suggestions?

When Kern On determines the suggestions, the objective is to “fill the gaps” in the cloud of models. It should suggest pairs that have a shape combination which is not similar to any of the existing models, and therefore the engine (all models combined) currently has a “loose grip”, i.e. you will ty...
by Tim Ahrens
01 Feb 2024
Forum: Kern On forum
Topic: Glyph combinations used as components not kerned
Replies: 14
Views: 6864

Re: Glyph combinations used as components not kerned

I can’t test the script in 3.1.2 as it complains about missing Python 3. I am certain that is worked at some point, as I tested it when I implemented it in February 2023. In any case, I think what Kern On needs to detect is clear: Composites in which kerning affects the positioning. It would be very...
by Tim Ahrens
22 Jan 2024
Forum: Kern On forum
Topic: Glyph combinations used as components not kerned
Replies: 14
Views: 6864

Re: Glyph combinations used as components not kerned

Using this code: for layer in Font.selectedLayers: print( layer.parent.name, 'hasAlignedWidth?', layer.hasAlignedWidth() ) for c in layer.components: print( c, c.alignment, c.alignmentType() ) print() I am getting this output: onehalf hasAlignedWidth? True <GSComponent "one.numr" x=0.0 y=0...
by Tim Ahrens
22 Jan 2024
Forum: Kern On forum
Topic: Glyph combinations used as components not kerned
Replies: 14
Views: 6864

Re: Glyph combinations used as components not kerned

Next attempt: for layer in Font.selectedLayers: if not layer.hasAlignedWidth(): continue pairs = [] prevComponent = None for c in layer.components: if c.alignment == 0 and prevComponent and prevComponent.alignment == 0: if c.alignmentType() == 3 or prevComponent.alignmentType() == 3: pairs.append(pr...
by Tim Ahrens
22 Jan 2024
Forum: Kern On forum
Topic: Glyph combinations used as components not kerned
Replies: 14
Views: 6864

Re: Glyph combinations used as components not kerned

Btw, I am working in Objective C, of course. Georg, you can see the current code in the shared Github repo.
by Tim Ahrens
22 Jan 2024
Forum: Kern On forum
Topic: Glyph combinations used as components not kerned
Replies: 14
Views: 6864

Re: Glyph combinations used as components not kerned

You mean something like this? for layer in Font.selectedLayers: if not layer.hasAlignedWidth(): continue kernedComponents = [] for c in layer.components: if c.alignment == 0: kernedComponents.append(c.name) if len(kernedComponents) >= 2: print( layer.parent.name, kernedComponents ) No, this also cat...
by Tim Ahrens
21 Jan 2024
Forum: Kern On forum
Topic: Manual Mode?
Replies: 1
Views: 1270

Re: Manual Mode?

the fact that every launch is a new day means you have to proof *everything* after each correction, having no clue where to expect changes. This is exactly what the “Compare to” functionality is for. Just save the old version as a separate snapshot file, then start Kern On, make the changes, open t...
by Tim Ahrens
21 Jan 2024
Forum: Kern On forum
Topic: Glyph combinations used as components not kerned
Replies: 14
Views: 6864

Re: Glyph combinations used as components not kerned

I need to identify composite glyphs in which the positioning of the components is affected by kerning.
by Tim Ahrens
20 Jan 2024
Forum: Kern On forum
Topic: Kerning a pixel font?
Replies: 2
Views: 1531

Re: Kerning a pixel font?

Thanks for pointing this out. It’s not too difficult for me to implement the application of the font’s grid. I’ll add that to my to-do list.

Another possible work-around would be to work with a UPM of 20 (if your grid is currently 50 units at 1000 UPM). This is what I would do anyway, I guess.
by Tim Ahrens
20 Jan 2024
Forum: Kern On forum
Topic: Glyph combinations used as components not kerned
Replies: 14
Views: 6864

Re: Glyph combinations used as components not kerned

Thanks for the file. This is a bug in Glyphs that was introduced at some point in 2023. I reported it to Georg in December. To demonstrate it you can use: for layer in Font.selectedLayers: print( layer.parent.name ) for c in layer.components: print( c, c.alignment, c.alignmentType() ) print() In som...
by Tim Ahrens
18 Jan 2024
Forum: Kern On forum
Topic: Glyph combinations used as components not kerned
Replies: 14
Views: 6864

Re: Glyph combinations used as components not kerned

Hello, I seem to remember this was a feature introduced with some update a while back: glyph combinations that are used as components in other glyphs (such as /one.dnom /fraction in /onehalf) were kerned by Kern On, regardless of importance on the pair frequency list. Yes, this is how it should wor...
by Tim Ahrens
11 Jan 2024
Forum: Kern On forum
Topic: KO 1.27 - Work only in a single master
Replies: 2
Views: 1572

Re: KO 1.27 - Work only in a single master

What exactly is it that is not working in the other masters?

Can you send me the file? Then I can have a closer look. Thanks!
by Tim Ahrens
18 Dec 2023
Forum: Kern On forum
Topic: f kerned, f.italic not kerned
Replies: 2
Views: 1487

Re: f kerned, f.italic not kerned

Are the .italic glyphs accessible via any OT feature? In other words, is there any OT feature that has something like sub f by f.italic? If there isn’t then Kern On does not generate the auto-pairs for these glyphs. (The roboty answer would be that this means that in the exported font, these glyphs ...
by Tim Ahrens
16 Dec 2023
Forum: Kern On forum
Topic: "Expand Kerning" from autokerned masters to models?
Replies: 4
Views: 2309

Re: "Expand Kerning" from autokerned masters to models?

As of today, is implemented in the latest version: Kern On now generates local models automatically when you un-autokern a master. You still get some warnings but Kern On is playing a trick: These warnings suppressed at first; they are only shown once you start modifying or setting new models, or if...
by Tim Ahrens
16 Dec 2023
Forum: Kern On forum
Topic: Manual keyboard strokes don't always function properly after latest KO update (v 1.24)
Replies: 7
Views: 4090

Re: Manual keyboard strokes don't always function properly after latest KO update (v 1.24)

Good news! This problem should be solved. Get the latest update from https://kern-on.com/update/ and don’t forget to restart Glyphs!

Please let me know if you run into this problem again.
by Tim Ahrens
16 Dec 2023
Forum: Kern On forum
Topic: Cyrillic question - Л and л
Replies: 4
Views: 1792

Re: Cyrillic question - Л and л

This is tricky to answer without seeing the font. Kern On never thinks a pair is too tight as such, it only thinks it is it is too tight compared to another pair. For example, when it says “дл is too tight compared to vn” it might as well say, “vn is too loose compared to дл”, with the same meaning....
by Tim Ahrens
15 Dec 2023
Forum: Kern On forum
Topic: Manual keyboard strokes don't always function properly after latest KO update (v 1.24)
Replies: 7
Views: 4090

Re: Manual keyboard strokes don't always function properly after latest KO update (v 1.24)

I will try to reproduce this problem. The challenge here is, this text field is an interaction between Kern On, Glyphs (because KO uses an Objective C class provided by Glyphs), and macOS, of course. Any change in any of the three can potentially trigger this wrong behaviour. Would you mind letting ...
by Tim Ahrens
15 Dec 2023
Forum: Kern On forum
Topic: Special Spacing Not Working
Replies: 15
Views: 3163

Re: Special Spacing Not Working

Sorry, this video seems to be private. YouTube doesn’t allow me to see it.
by Tim Ahrens
13 Dec 2023
Forum: Kern On forum
Topic: Special Spacing Not Working
Replies: 15
Views: 3163

Re: Special Spacing Not Working

Thanks for sending the file. So far, I could not find anything that does not work as it should. Maybe some clarifications help: Whenever I pick a group for a character, it’s not saved. This is strange. You mean, while Kern On is running the special spacing group shows on the dialog for the glyph but...
by Tim Ahrens
12 Dec 2023
Forum: Kern On forum
Topic: Special Spacing Not Working
Replies: 15
Views: 3163

Re: Special Spacing Not Working

Sorry about this. Would you mind sending me the file? Then I can have a closer look, and I am sure we’ll find a fix!
by Tim Ahrens
03 Dec 2023
Forum: Kern On forum
Topic: "Expand Kerning" from autokerned masters to models?
Replies: 4
Views: 2309

Re: "Expand Kerning" from autokerned masters to models?

Btw you can also try to juggle pairs and values by showing the models in the upright, then copy-pasting them (as text) into the italic, select all, make them models. In order to transfer the values you could shut down Kern On, open an autokerned backup of the Italic master, copy-paste all kerning to...
by Tim Ahrens
03 Dec 2023
Forum: Kern On forum
Topic: "Expand Kerning" from autokerned masters to models?
Replies: 4
Views: 2309

Re: "Expand Kerning" from autokerned masters to models?

I would like to copy just the model pairs, but set the values resulting from the autokerning process. Agreed, this is simply what should happen if you deselect “Autokern from”. If you deselect “Interpolate master” this is how it already works (I believe) but I need to implement the same principle f...
by Tim Ahrens
15 Nov 2023
Forum: Kern On forum
Topic: in-Glyphs kerning not matching output
Replies: 2
Views: 1620

Re: in-Glyphs kerning not matching output

I assume what is happening is what you also suspect: The pair is too infrequent in the list. This is why it does not end up with the ideal value (as it is generated on-the-fly while Kern On is running). See my explanation in the other thread for more details. As an experiment, you can increase the v...
by Tim Ahrens
15 Nov 2023
Forum: Kern On forum
Topic: "Blue Zone" kerning
Replies: 5
Views: 3295

Re: "Blue Zone" kerning

What you describe is roughly how the class kerning algorithm works. Sticking to your example, let’s assume a certain pair against /adieresis has an ideal value of 50, and /amacron has 60. If 50 is the class kerning value then, if the exception with /amacron is omitted, the deviation is 10. Multiply ...
by Tim Ahrens
03 Nov 2023
Forum: Kern On forum
Topic: Manual keyboard strokes don't always function properly after latest KO update (v 1.24)
Replies: 7
Views: 4090

Re: Manual keyboard strokes don't always function properly after latest KO update (v 1.24)

Thanks for the notice. I identified the bug that leads to the wrong slider behaviour, and I think this also fixes the wrong behaviour of the key-up and key-down in the text field (which was not as easy to reproduce). You can get the update from kern-on.com/update . Please let me know if any of the p...
by Tim Ahrens
02 Nov 2023
Forum: Kern On forum
Topic: Got spam?
Replies: 1
Views: 2540

Re: Got spam?

Thanks for the notice. Yes, we do get a lot of spam and, although the spam filter is generally doing a good job, it sometimes lets things slip through.
by Tim Ahrens
14 Oct 2023
Forum: Kern On forum
Topic: Create kerning groups for everything
Replies: 3
Views: 2456

Re: Create kerning groups for everything

Using class kerning for sparse rows or columns is inefficient in terms of data size: We need 2 bytes per table cell, no matter whether it is used (non-zero) or not. Glyph-glyph pairs need 4 bytes per pair (each option has a certain overhead). So, for rows or columns that contain fewer pairs than rou...
by Tim Ahrens
13 Oct 2023
Forum: Kern On forum
Topic: Create kerning groups for everything
Replies: 3
Views: 2456

Re: Create kerning groups for everything

In principle, this would be possible to add as a feature but why would you want to do that?
by Tim Ahrens
11 Oct 2023
Forum: Kern On forum
Topic: KernOn crashes when setting special spacing groups
Replies: 3
Views: 2279

Re: KernOn crashes when setting special spacing groups

Thanks for sending the file. This crash only occurs in very specific situations (one master autokerned from another master, from which all models are removed). I just fixed it in the code.
by Tim Ahrens
11 Oct 2023
Forum: Kern On forum
Topic: KernOn crashes when setting special spacing groups
Replies: 3
Views: 2279

Re: KernOn crashes when setting special spacing groups

Thanks for the notice. Would you mind sending the file? Than I can investigate. Thanks!
by Tim Ahrens
05 Oct 2023
Forum: Kern On forum
Topic: Kern-on 1.23 - macOS Sonoma 14.0 (23A344)
Replies: 7
Views: 3390

Re: Kern-on 1.23 - macOS Sonoma 14.0 (23A344)

Yes, I can confirm that Kern On crashes if all masters in the font have “Link Metrics With Master”. It seems to be independent of the OS (and, looking at the code, it should be). I am just fixing this crash. This set-up, however, is unreasonable: How can all masters in the font be linked to somethin...
by Tim Ahrens
04 Oct 2023
Forum: Kern On forum
Topic: Kern-on 1.23 - macOS Sonoma 14.0 (23A344)
Replies: 7
Views: 3390

Re: Kern-on 1.23 - macOS Sonoma 14.0 (23A344)

Sorry, I cannot reproduce this crash here. Would you mind sending me the file? Thanks!
by Tim Ahrens
03 Oct 2023
Forum: Kern On forum
Topic: Kern-on 1.23 - macOS Sonoma 14.0 (23A344)
Replies: 7
Views: 3390

Re: Kern-on 1.23 - macOS Sonoma 14.0 (23A344)

Thanks for the notification. I am installing Sonoma on one of my computers right now and will have a closer look at this problem.
by Tim Ahrens
28 Aug 2023
Forum: Kern On forum
Topic: HX H – why?
Replies: 1
Views: 2199

Re: HX H – why?

This seems strange. Would you mind sending me the .glyphs file?
by Tim Ahrens
23 Aug 2023
Forum: Kern On forum
Topic: Kerning pairs - reasonable quantity?
Replies: 4
Views: 2788

Re: Kerning pairs - reasonable quantity?

The quick answer is: Don’t worry about the number of kerning pairs. The somewhat longer answer is: Don’t try to make you font pretty under the hood. All that counts is the visible, final rendering. If that looks good then all is good. Try to be rational: What is the issue with a large number of pair...
by Tim Ahrens
23 Aug 2023
Forum: Kern On forum
Topic: Single point side bearing change leads to drastic auto-kerning
Replies: 2
Views: 2278

Re: Single point side bearing change leads to drastic auto-kerning

What you describe clearly sounds like a wrong behaviour or Kern On. Would you mind sending me the .glyphs file so I can reproduce it? Thanks!
by Tim Ahrens
23 Aug 2023
Forum: Kern On forum
Topic: Locking existing Kern-On data
Replies: 6
Views: 8086

Re: Locking existing Kern-On data

1. Sorry, there are still not bubbles yet. What you can do is: • keep a copy of the file with the manual Latin kerning • in Kern On, set the Latin letters to “No kerning” • after finalizing (generating the full autokerning), copy & paste the Latin kerning fro your backup file You need to do this...
by Tim Ahrens
04 Aug 2023
Forum: Kern On forum
Topic: How to: RTL (Arabic)?
Replies: 1
Views: 1982

Re: How to: RTL (Arabic)?

Sorry, RTL is not implemented in Kern On yet. It is definitely on my to-do list, though. Stay tuned!
by Tim Ahrens
29 Jul 2023
Forum: Kern On forum
Topic: Some extended Latin characters not getting kerned
Replies: 7
Views: 4050

Re: Some extended Latin characters not getting kerned

Further: When I generate the list of supported pairs (i.e. pair_frequencies.txt) I first crunch large amounts of text from various sources, combine them and then remove what appears to be junk data or does not make sense to me, and then synthesize pairs based on what I consider sensible pairs. “Synt...
by Tim Ahrens
29 Jul 2023
Forum: Kern On forum
Topic: Some extended Latin characters not getting kerned
Replies: 7
Views: 4050

Re: Some extended Latin characters not getting kerned

The pipeline that generates the list of pairs has a list of to-be-kerned characters, which is the results of several whitelists and blacklists. I can confirm that all the mentioned characters are on the list: in principle, they are not excluded. Some more details on the occurrence in my corpus: ʔ U+...
by Tim Ahrens
29 Jul 2023
Forum: Kern On forum
Topic: Some extended Latin characters not getting kerned
Replies: 7
Views: 4050

Re: Some extended Latin characters not getting kerned

To get a better overview: Latin Extended-B: Ɂ U+0241 LATIN CAPITAL LETTER GLOTTAL STOP (This is the uppercase of U+0242 and U+0294) ɂ U+0242 LATIN SMALL LETTER GLOTTAL STOP (This is the lowercase of U+0241 and U+0294) IPA Extensions: ɬ U+026C LATIN SMALL LETTER L WITH BELT ʔ U+0294 LATIN LETTER GLOT...
by Tim Ahrens
29 Jul 2023
Forum: Kern On forum
Topic: Some extended Latin characters not getting kerned
Replies: 7
Views: 4050

Re: Some extended Latin characters not getting kerned

Are you using the 0k feature? This is always an interesting tool for analysis, to understand whether a pair is not kerned because it is simply not in the system, or whether it was lost because of its low frequency. You can also have a look at the file pair_frequencies.txt inside KernOnGlyphs3.glyph...
by Tim Ahrens
24 Jul 2023
Forum: Kern On forum
Topic: Does KO need a keyboard shortcut?
Replies: 7
Views: 4092

Re: Does KO need a keyboard shortcut?

Okay, I just removed the default shortcut. This will be reflected in the next KO update. Let’s hope there are few or no users who want a shortcut, and at the same time cannot do so on their computer.
by Tim Ahrens
24 Jul 2023
Forum: Kern On forum
Topic: Multiple entries for same kern pair
Replies: 3
Views: 2713

Re: Multiple entries for same kern pair

Good to know!

I guess I can’t “close this” thread, using a stone-age forum (oh, wait: bulletin board) software here.
by Tim Ahrens
22 Jul 2023
Forum: Kern On forum
Topic: Multiple entries for same kern pair
Replies: 3
Views: 2713

Re: Multiple entries for same kern pair

Thanks for the notification, I will look into this.
by Tim Ahrens
21 Jul 2023
Forum: Kern On forum
Topic: Something is very wrong with fractions
Replies: 4
Views: 3086

Re: Something is very wrong with fractions

Also, Eben’s idea is very good. If you specify 0kB you will get un-compressed raw glyph-glyph kerning. Could be a good hint when searching for the underlying problem.
by Tim Ahrens
21 Jul 2023
Forum: Kern On forum
Topic: Something is very wrong with fractions
Replies: 4
Views: 3086

Re: Something is very wrong with fractions

Sorry to hear about these problems. Which version of Kern On are you using? In case you are using the latest version you will find an “About Kern On” entry in the (•••) menu. If you could send me the .glyphs file that would be great, then I can have a look and I’m sure we’ll solve the problem. Btw, ...
by Tim Ahrens
17 Jul 2023
Forum: Kern On forum
Topic: Lost in models influences
Replies: 1
Views: 2087

Re: Lost in models influences

Kern On “links” all models to all autokerned pairs. It does not link any models to each other. Rather, it tries to assemble them all into an autokerning engine. Sometimes it doesn’t manage to “fit them all under one hat”, as we say in German, and it needs to remove one or several models. There is a ...
by Tim Ahrens
17 Jul 2023
Forum: Kern On forum
Topic: Small kern pairs
Replies: 10
Views: 6111

Re: Small kern pairs

Another important thought: When we design typefaces, we do two things: Looking, and Thinking. Some decisions are based on Looking, such as “The w needs to be a little wider”. Other decisions are based purely on Thinking. While Thinking can be powerful and efficient, it can be (1) undeniably correct,...
by Tim Ahrens
17 Jul 2023
Forum: Kern On forum
Topic: Small kern pairs
Replies: 10
Views: 6111

Re: Small kern pairs

If you slant a correctly spaced font then that means in practice, the spacing is usually still pretty much correct. If you look at it from a geometric perspective, though, you can’t say that nothing happens to the space between the shapes. One thing is, the distance between the shapes gets smaller i...
by Tim Ahrens
27 Jun 2023
Forum: Kern On forum
Topic: Does KO need a keyboard shortcut?
Replies: 7
Views: 4092

Re: Does KO need a keyboard shortcut?

Is it also possible to remove shortcuts?
by Tim Ahrens
26 Jun 2023
Forum: Kern On forum
Topic: Does KO need a keyboard shortcut?
Replies: 7
Views: 4092

Re: Does KO need a keyboard shortcut?

I don’t think any add-on should define its keyboard shortcut, to be honest. It has been like that for a very long time, and I have done that with my add-ons, but it never made much sense to me. Ideally, every user should simply set up their own shortcuts and that’s it. However, the whole shortcut sy...
by Tim Ahrens
30 May 2023
Forum: Kern On forum
Topic: Small kern pairs
Replies: 10
Views: 6111

Re: Small kern pairs

Okay, I am slowly getting willing to implement a higher (or customizable) threshold for kerning values. Sometimes you just have to be persistent. ;-) The reason why I think a higher threshold would be beneficial is that it makes the kerning in woff/woff2 more compressible. It’s quite amazing how oth...
by Tim Ahrens
21 May 2023
Forum: Kern On forum
Topic: Incompatible Model Relationships
Replies: 1
Views: 2219

Re: Incompatible Model Relationships

When you set models for pairs that include special spacing, Kern On determines the value for each special spacing group internally, by comparing all models. Typically, comparing the models for a special spacing group to the letter-letter models reveals that the special spacing value must be at least...
by Tim Ahrens
19 May 2023
Forum: Kern On forum
Topic: Unnecessary Kerning Exceptions
Replies: 1
Views: 2184

Re: Unnecessary Kerning Exceptions

Yes, Kern On does take into account the zone above the cap height. Looking at your examples, giving V against A+diacritics somewhat looser kerning than VA does not seem unreasonable to me. If an exception has only a few units of difference (at which UPM, btw?) then maybe, instead of “unnecessary”, w...
by Tim Ahrens
11 May 2023
Forum: Kern On forum
Topic: Small kern pairs
Replies: 10
Views: 6111

Re: Small kern pairs

Some parts of the code normalize things, and use the x-height as a measure of the “scale” of the font. If you have a font at 250 UPM you may have an x-height of less than 100, and if you draw at 4096 UPM it will be well over 1000, of course. I just had another look at the code and made additional te...
by Tim Ahrens
11 May 2023
Forum: Kern On forum
Topic: Small kern pairs
Replies: 10
Views: 6111

Re: Small kern pairs

Yes, this has been discussed before:
viewtopic.php?t=180

It’s a bit unusual to get +1 and -1 values. What is the x-height of your font?
by Tim Ahrens
03 May 2023
Forum: Kern On forum
Topic: Delete All Model and independent pairs
Replies: 1
Views: 2064

Re: Delete All Model and independent pairs

Here is what you can do: On the Kern On window there is a line that tells you how many model pairs you have, and a little arrow. If you click on that arrow it will show you a list of all models. If you select all text, then click on the “Auto” segment this will remove all models. You need to do this...