Search found 381 matches

by Tim Ahrens
25 Nov 2024
Forum: Kern On forum
Topic: Does Kern-On work with Ethiopic?
Replies: 3
Views: 152

Re: Does Kern-On work with Ethiopic?

Yes, Ethiopic is supported by Kern On. I added it at a user’s request at some point, and I believe it has been used on real-world projects. Just give it a try and let me know how it works for you!
by Tim Ahrens
20 Nov 2024
Forum: Kern On forum
Topic: KernOn exceptions
Replies: 1
Views: 155

Re: KernOn exceptions

This sounds strange. Would you mind sending me the file? If the shapes of o and e are virtually the same on the left then they should receive the same kerning. Without seeing the file, the only thing I can imagine is that the e or the o has special spacing.
by Tim Ahrens
14 Nov 2024
Forum: Kern On forum
Topic: Do we need kerning against the space character?
Replies: 32
Views: 69334

Re: Do we need kerning against the space character?

Sorry, no news. It is definitely on my list of future improvements, though!
by Tim Ahrens
13 Nov 2024
Forum: Kern On forum
Topic: V period and A asterisk not kerning
Replies: 7
Views: 218

Re: V period and A asterisk not kerning

I quickly checked a few fonts on my computer and couldn’t find any that have kerning between Hebrew and period or asterisk. What’s the current best practice?
by Tim Ahrens
13 Nov 2024
Forum: Kern On forum
Topic: V period and A asterisk not kerning
Replies: 7
Views: 218

Re: V period and A asterisk not kerning

Thanks for the file. It took a while to understand what is going on but here is the explanation: Your font contains RTL kerning. Kern On currently does not support RTL autokerning but it preserves existing RTL kerning, including the kerning groups. Since asterisk and period are kerned RTL, their ker...
by Tim Ahrens
12 Nov 2024
Forum: Kern On forum
Topic: V period and A asterisk not kerning
Replies: 7
Views: 218

Re: V period and A asterisk not kerning

Could you send me the file? Then I can have a closer look.
by Tim Ahrens
16 Oct 2024
Forum: Kern On forum
Topic: Missing Autopairs / Unkerned Pairs
Replies: 5
Views: 5782

Re: Missing Autopairs / Unkerned Pairs

Which glyphs do you kern the arrows against?
by Tim Ahrens
16 Oct 2024
Forum: Kern On forum
Topic: Slow ‘Generating class kerning’ phase
Replies: 1
Views: 176

Re: Slow ‘Generating class kerning’ phase

I spent considerable time improving the speed of Kern On but there are limits as to what you can do. To me, the crucial aspect was the speed of the tool while you are working on your kerning, the reaction time as you set or change models, for example. I believe this is fairly snappy now. During fina...
by Tim Ahrens
16 Oct 2024
Forum: Kern On forum
Topic: Auto-kern all layers command?
Replies: 1
Views: 140

Re: Auto-kern all layers command?

If you have many user-set autopairs then that means you are working with fonts for languages (and characters) that are not supported by Kern On yet? There are several possible solutions to your problem: 1. Go to one master that has all the required user-set autopairs, then click on the little arrow ...
by Tim Ahrens
27 Sep 2024
Forum: Kern On forum
Topic: Generate Pairs only with multiples of 4
Replies: 12
Views: 13221

Re: Generate Pairs only with multiples of 4

Can you explain why you would want that instead of normal quantization?
by Tim Ahrens
27 Sep 2024
Forum: Kern On forum
Topic: Inconsistencies with letter a.
Replies: 6
Views: 392

Re: Inconsistencies with letter a.

Good news! The bug in Glyphs has been fixed. If you update to the latest cutting-edge Glyphs version (or use the latest stable version) things should work as expected.
by Tim Ahrens
10 Sep 2024
Forum: Kern On forum
Topic: Inconsistencies with letter a.
Replies: 6
Views: 392

Re: Inconsistencies with letter a.

Thank you for sending the file. There seems to be a bug in the latest cutting-edge Glyphs version (3316). With Glyphs 3260 (the current stable version) and with Glyphs 3300 (this is just a somewhat older version I have) I am getting the expected, consistent Kern On behaviour in a, n and u. Also, if ...
by Tim Ahrens
09 Sep 2024
Forum: Kern On forum
Topic: Inconsistencies with letter a.
Replies: 6
Views: 392

Re: Inconsistencies with letter a.

You can send it to me by e-mail (see the footer on https://kern-on.com/). Thanks!
by Tim Ahrens
09 Sep 2024
Forum: Kern On forum
Topic: Inconsistencies with letter a.
Replies: 6
Views: 392

Re: Inconsistencies with letter a.

This is strange. Maybe the right side of the a has special spacing (or, n and u have special spacing)?

You can also send me the file if you don’t mind, then I can have a quick look myself.
by Tim Ahrens
06 Aug 2024
Forum: Kern On forum
Topic: Kern-on for cursive
Replies: 2
Views: 5887

Re: Kern-on for cursive

Working with connected scripts should work with Kern On. I personally haven’t tested this very much yet. The workflow should be similar as for unconnected fonts, though. In case you have alternates that should never be kerned on one side then it is probably easiest to use the “No kerning” property t...
by Tim Ahrens
30 Jul 2024
Forum: Kern On forum
Topic: Double lslash kerning
Replies: 3
Views: 3803

Re: Double lslash kerning

It is also possible that your font has many kerning pairs, and you can reduce the number. Maybe there are lots of pairs that should not need kerning? You can use the pairs drop-downs on “neutral” glyph sides to detect other glyphs that lead to unnecessary non-zero pairs because they are not spaced c...
by Tim Ahrens
30 Jul 2024
Forum: Kern On forum
Topic: Double lslash kerning
Replies: 3
Views: 3803

Re: Double lslash kerning

This should answer your question:
https://kern-on.com/manual/#q-compression-artifacts

To keep the pair during the final kerning, you can try to increase the data size (kB).
by Tim Ahrens
25 Jul 2024
Forum: Kern On forum
Topic: Does Kern On know about substitutions in #ifdef VARIABLE blocks?
Replies: 8
Views: 7741

Re: Does Kern On know about substitutions in #ifdef VARIABLE blocks?

mekkablue wrote: 25 Jul 2024 That way, the substitutions are visible to KernOn, I assume?
Kern On sees whatever is inside GSFont.compositorFont. It does not look at the feature code at all.
by Tim Ahrens
22 Jul 2024
Forum: Kern On forum
Topic: Does Kern On know about substitutions in #ifdef VARIABLE blocks?
Replies: 8
Views: 7741

Re: Does Kern On know about substitutions in #ifdef VARIABLE blocks?

In this case, you could remove the “#ifdef Variable” … and remove the feature in all static instances. You mean, Jeremy as the user, or would Kern On do this internally? One solution could be that you check the font but instead of automatically ignoring those glyphs, ask the user. Or do not check a...
by Tim Ahrens
16 Jul 2024
Forum: Kern On forum
Topic: Does Kern On know about substitutions in #ifdef VARIABLE blocks?
Replies: 8
Views: 7741

Re: Does Kern On know about substitutions in #ifdef VARIABLE blocks?

Kern On does not parse the feature code by itself. Instead, it asks Glyphs for a compiled version, and then browses the lookups. As it seems, by default, Glyphs doesn’t include the substitutions you are showing above, when I call the property GSFont.compositorFont. The question is, how can Kern On g...
by Tim Ahrens
15 Jul 2024
Forum: Kern On forum
Topic: Kern on deletes kerning pairs I want to keep
Replies: 2
Views: 3505

Re: Kern on deletes kerning pairs I want to keep

This is strange. You mean, after pushing the Kern On button and finalizing the kerning, and then re-starting Kern On, some models are lost? In other words, the number of model pairs as shown in the bottom section is smaller than it was before pushing the Kern On button? This should never happen. Whi...
by Tim Ahrens
11 Jun 2024
Forum: Kern On forum
Topic: unable to save kern pair KO_T
Replies: 5
Views: 5153

Re: unable to save kern pair KO_T

Not sure how I can help you with that. As you stopped using Kern on, this question is not about Kern On, it seems?
by Tim Ahrens
11 Jun 2024
Forum: Kern On forum
Topic: unable to save kern pair KO_T
Replies: 5
Views: 5153

Re: unable to save kern pair KO_T

Can you explain step-by-step what you are doing, and how Kern On is involved?
by Tim Ahrens
11 Jun 2024
Forum: Kern On forum
Topic: unable to save kern pair KO_T
Replies: 5
Views: 5153

Re: unable to save kern pair KO_T

Sorry, can you explain in more detail?
by Tim Ahrens
10 May 2024
Forum: Kern On forum
Topic: Best way to not kern swashes
Replies: 4
Views: 5154

Re: Best way to not kern swashes

Yes, “No kerning” is probably the solution in this case. Note that you can simply select several glyphs and set it for all of them.
by Tim Ahrens
06 May 2024
Forum: Kern On forum
Topic: default proportional figures
Replies: 2
Views: 4219

Re: default proportional figures

Kerning groups are not a safe way of seeing whether Kern On kerns a glyph (even though this is an indicator). Can you have a look at whether the glyphs in question have any kerning? While Kern On is running, you can also use the “Pairs” drop-down menu to check this. The next thing to check is whethe...
by Tim Ahrens
29 Apr 2024
Forum: Kern On forum
Topic: Complex subsitutions leaving some pairs without AutoKerning
Replies: 7
Views: 6944

Re: Complex subsitutions leaving some pairs without AutoKerning

Keep in mind that using cvXX instead of ssXX is not just a work-around for the “Kern On world”. It’s simply the correct OpenType feature for the task, not just internally in your font editor but also when you export and distribute the fonts.
by Tim Ahrens
29 Apr 2024
Forum: Kern On forum
Topic: Complex subsitutions leaving some pairs without AutoKerning
Replies: 7
Views: 6944

Re: Complex subsitutions leaving some pairs without AutoKerning

This was surprisingly easy to implement. Thanks for the nudge!

The next Kern On update will support cvXX, which means it will autokern any possible combination of alternates accessed via cvXX.
by Tim Ahrens
29 Apr 2024
Forum: Kern On forum
Topic: Complex subsitutions leaving some pairs without AutoKerning
Replies: 7
Views: 6944

Re: Complex subsitutions leaving some pairs without AutoKerning

Thanks for the file, Ryan. Looking at your list of user-set autopairs, there are different reasons for pairs not being autokerned by default: • /s.ss01/ecircumflex is not autokerned because /s/ecircumflex is not autokerned. If this pair is important to you you’d probably want to set /s/ecircumflex a...
by Tim Ahrens
26 Apr 2024
Forum: Kern On forum
Topic: Complex subsitutions leaving some pairs without AutoKerning
Replies: 7
Views: 6944

Re: Complex subsitutions leaving some pairs without AutoKerning

Thanks for your help, Brian. Yes, using custom kerning groups could be a good work-around.

Ryan: Would you mind sending me the file? Then I can have a look and either improve Kern On or possibly find a way of getting this to work with the current version.
by Tim Ahrens
16 Apr 2024
Forum: Kern On forum
Topic: Do we need kerning against the space character?
Replies: 32
Views: 69334

Re: Do we need kerning against the space character?

Jeremy Tribby wrote: 04 Apr 2024 Would it be helpful to have specific examples of this as OpenType feature code (and/or Glyphs specific format for VF), so that a suitable UI could be worked out from there?
Yes, that would be great!
by Tim Ahrens
15 Apr 2024
Forum: Kern On forum
Topic: Autokern now kerns accents with glyphs
Replies: 13
Views: 14962

Re: Autokern now kerns accents with glyphs

I see. This brings up the same old question : “Find all composites in which the positioning of the components is affected by kerning.” This was surprisingly difficult to implement, as you remember, even with Georg’s help. To be honest, the current code never felt very robust to me, and now we are se...
by Tim Ahrens
15 Apr 2024
Forum: Kern On forum
Topic: Autokern now kerns accents with glyphs
Replies: 13
Views: 14962

Re: Autokern now kerns accents with glyphs

Whether to autokern non-exporting glyphs is an interesting question. At first glance it makes sense to automatically exclude them but there can be non-exporting glyphs in a font that should be autokerned, e.g. for fractions. So, the approach is to generously generate autokerning pairs and then disab...
by Tim Ahrens
04 Apr 2024
Forum: Kern On forum
Topic: Autokern now kerns accents with glyphs
Replies: 13
Views: 14962

Re: Autokern now kerns accents with glyphs

Thanks for the explanation and the workaround, Georg. I still don’t understand why you consider shouldAttach = False to be the correct return value in a case like this. The diacritic component is clearly attached (i.e. its position depends on the anchors). From a functional point of view, it does no...
by Tim Ahrens
04 Apr 2024
Forum: Kern On forum
Topic: Autokern now kerns accents with glyphs
Replies: 13
Views: 14962

Re: Autokern now kerns accents with glyphs

Thanks for sending the file. Seems like we were not looking at the same file! Very similar but not identical, which made it easy to dig into it. As it turns out, the PUA values for the .case accents are causing this strange behaviour. What I tested: • Open your latest file (with PUA for the .case ac...
by Tim Ahrens
02 Apr 2024
Forum: Kern On forum
Topic: Autokern now kerns accents with glyphs
Replies: 13
Views: 14962

Re: Autokern now kerns accents with glyphs

What happens if you run the script in Glyphs 3.2? I cannot run any Python scripts in Glyphs 3151 because Glyphs says it cannot not find a compatible Python version. One thing I noticed is that Hmacron seems to be completely unknown to my version of Glyphs. It doesn’t have a Unicode value and Glyphs ...
by Tim Ahrens
29 Mar 2024
Forum: Kern On forum
Topic: Autokern now kerns accents with glyphs
Replies: 13
Views: 14962

Re: Autokern now kerns accents with glyphs

Btw this is a script that can be used to inspect what Glyphs returns for certain layer and component properties: for layer in Font.selectedLayers: print( layer.parent.name, 'hasAlignedWidth', layer.hasAlignedWidth() ) for c in layer.components: print( c, 'shouldAttach', c.shouldAttach() ) print() In...
by Tim Ahrens
29 Mar 2024
Forum: Kern On forum
Topic: Autokern now kerns accents with glyphs
Replies: 13
Views: 14962

Re: Autokern now kerns accents with glyphs

This is strange. If I open the font with Glyphs 3249 and Kern On 1.31 then /H/macroncomb.case is not autokerned. Which version of Glyphs are you working with?
by Tim Ahrens
26 Mar 2024
Forum: Kern On forum
Topic: Special Spacing Not Working
Replies: 15
Views: 19754

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: 19754

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: 19754

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: 7720

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: 23317

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: 4456

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: 7720

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: 5532

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: 7720

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: 7
Views: 8345

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: 5930

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: 5584

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: 6756

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: 6756

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: 5920

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: 12
Views: 13221

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: 7823

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: 6855

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: 7823

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: 12
Views: 13221

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: 6855

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: 12
Views: 13221

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: 12
Views: 13221

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: 19823

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: 12
Views: 13221

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: 19823

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: 19823

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: 19823

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: 19823

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: 19823

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: 19823

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: 19823

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: 19823

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: 5925

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: 11290

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: 11290

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: 11290

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: 11290

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: 9325

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: 9325

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: 9680

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: 6199

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: 23317

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: 23317

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: 23317

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: 23317

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: 23317

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: 5599

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: 23317

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: 6412

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: 23317

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: 23317

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: 6410

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: 6152

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: 9162

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: 13423

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: 7420

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: 13423

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: 19754

Re: Special Spacing Not Working

Sorry, this video seems to be private. YouTube doesn’t allow me to see it.