Special Spacing Not Working
-
- Posts: 8
- Joined: 09 Dec 2023
Special Spacing Not Working
Hey there!
Just started using Kern On and noticed that special spacing isn’t working as intended. Whenever I pick a group for a character, it’s not saved. Also, it doesn’t seem to automatically add special spacing to punctuation.
My friend and I tried using an older version of Kern On with the same file and didn’t encounter this issue.
Let me know if someone else had similar experiences!
Thanks!
Just started using Kern On and noticed that special spacing isn’t working as intended. Whenever I pick a group for a character, it’s not saved. Also, it doesn’t seem to automatically add special spacing to punctuation.
My friend and I tried using an older version of Kern On with the same file and didn’t encounter this issue.
Let me know if someone else had similar experiences!
Thanks!
Last edited by tantsurin@gmail.com on 10 Dec 2023, edited 1 time in total.
-
- Posts: 8
- Joined: 09 Dec 2023
Re: Special Spacing Not Working
Some more information regarding the issue:
1. I've spent some time running Kern On on various Glyphs files and noticed that often punctuation isn't recognized as such, so it's not automatically marked as special spacing.
2. I've yet to understand why some files work fine and don't need manually selecting the category from the drop menu, and some do.
3. In the file I'd originally started working on, all pre-set options for special spacing seemed to have disappeared. I still am able to create my own groups, but characters don't get grouped automatically.
I am running the latest version of Glyphs 3, Macbook Pro M1 Pro if that makes any difference.
Thanks for your help!
1. I've spent some time running Kern On on various Glyphs files and noticed that often punctuation isn't recognized as such, so it's not automatically marked as special spacing.
2. I've yet to understand why some files work fine and don't need manually selecting the category from the drop menu, and some do.
3. In the file I'd originally started working on, all pre-set options for special spacing seemed to have disappeared. I still am able to create my own groups, but characters don't get grouped automatically.
I am running the latest version of Glyphs 3, Macbook Pro M1 Pro if that makes any difference.
Thanks for your help!
-
- Posts: 8
- Joined: 09 Dec 2023
Re: Special Spacing Not Working
Over the past couple of days I've tried re-saving the file, switching to Glyphs 2, adding existing glyphs/masters to a new Glyphs file – but to no avail. Additionally, I don't seem to be able to remove existing models. Simply deleting all kerning when KO is asleep doesn't seem to work.
Really hoping there's a fix for that! :)
Really hoping there's a fix for that! :)
- Tim Ahrens
- Site Admin
- Posts: 447
- Joined: 11 Jul 2019
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!
-
- Posts: 8
- Joined: 09 Dec 2023
Re: Special Spacing Not Working
No worries at all! I am sure it's all fixable — or maybe I am doing something totally wrong. I've just sent the file over! Thanks again! :)
- Tim Ahrens
- Site Admin
- Posts: 447
- Joined: 11 Jul 2019
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:
Just to be sure there is no misunderstanding: You need to select “Special spacing” from the upper drop-down menu, then a group name or “New group...” from the menu below. Only selecting “Special spacing” without using the menu below will not set any special spacing for the glyph.
Generally, I have to say that I never considered the automatic initialisation of special spacing to be very important. In the end, it is better if you think about what you want, and set the groups as you think they make sense. It doesn’t take much time as you can set special spacing for several glyphs at once.
Maybe some clarifications help:
This is strange. You mean, while Kern On is running the special spacing group shows on the dialog for the glyph but when you close Kern On, and start again, this is lost?Whenever I pick a group for a character, it’s not saved.
Just to be sure there is no misunderstanding: You need to select “Special spacing” from the upper drop-down menu, then a group name or “New group...” from the menu below. Only selecting “Special spacing” without using the menu below will not set any special spacing for the glyph.
This only happens the very first time you use Kern On with a file. After that, it will not automatically add special spacing groups. I believe this behaviour is what the user wants: You have full control without any surprises. If you add glyphs after you have already used Kern On on a font then you will need to set special spacing for the new glyphs manually.Also, it doesn’t seem to automatically add special spacing to punctuation.
The support for automatically assigned special spacing is limited. You can look into the plugin file (KernOnGlyphs3.glyphsPlugin) by right-clicking on the file, then “Show Package Contents”. You will find a folder named Resources where there is a file named default_groups.txt. This is what Kern On uses to automatically assign special spacing the first time you use it on a font. If you have suggestions for additional characters or default groups I’ll be happy to add them.1. I've spent some time running Kern On on various Glyphs files and noticed that often punctuation isn't recognized as such, so it's not automatically marked as special spacing.
Generally, I have to say that I never considered the automatic initialisation of special spacing to be very important. In the end, it is better if you think about what you want, and set the groups as you think they make sense. It doesn’t take much time as you can set special spacing for several glyphs at once.
Unused group names are removed from the list when you close and re-start Kern On. I thought this was simpler than adding a functionality for explicitly removing group names.3. In the file I'd originally started working on, all pre-set options for special spacing seemed to have disappeared. I still am able to create my own groups, but characters don't get grouped automatically.
To remove models, you need to switch them to Auto pairs: Just click on the little arrow where the number of models is shown, then select all text in the tab and click on the Auto segment. This will remove all models from the master.Additionally, I don't seem to be able to remove existing models.
-
- Posts: 8
- Joined: 09 Dec 2023
Re: Special Spacing Not Working
Tim,
Thanks for the feedback. Some of the issues described were indeed due to some misunderstanding on my part, sorry about that. As for the special spacing being set manually, it's still very tricky. Here's an example I recorded: https://youtu.be/oXPMn-dKCcQ
As you can see, I clearly set special spacing for the hyphen, which incidentally isn't saved when I switch to another pair.
So technically, unless I can get KO to recognize all the special spacing characters automatically, there's no way for me to set them manually and make sure they are saved properly.
As for deleting models, this was totally my fault. I totally didn't set them to Auto before deleting, my bad!
Thanks for the feedback. Some of the issues described were indeed due to some misunderstanding on my part, sorry about that. As for the special spacing being set manually, it's still very tricky. Here's an example I recorded: https://youtu.be/oXPMn-dKCcQ
As you can see, I clearly set special spacing for the hyphen, which incidentally isn't saved when I switch to another pair.
So technically, unless I can get KO to recognize all the special spacing characters automatically, there's no way for me to set them manually and make sure they are saved properly.
As for deleting models, this was totally my fault. I totally didn't set them to Auto before deleting, my bad!
- Tim Ahrens
- Site Admin
- Posts: 447
- Joined: 11 Jul 2019
Re: Special Spacing Not Working
Sorry, this video seems to be private. YouTube doesn’t allow me to see it.
-
- Posts: 8
- Joined: 09 Dec 2023
Re: Special Spacing Not Working
Oh so sorry! I've just made it public, so you should be able to see it now!
-
- Posts: 8
- Joined: 09 Dec 2023
Re: Special Spacing Not Working
Hey there! Just wanted to share a workaround for the issue I was running into with special spacing not saving or not working automatically.
I tried using KO with previous versions of the same Glyphs file. After around 20 tries, I found a version of the file from a while back that allowed me to set groups and automatically set special spacing for punctuation and symbols. After that, I simply added all masters from the newer file and deleted the old ones. I suppose it can work just as well if you add existing masters to a new Glyphs file.
It worked like a charm but I still have no idea why this issue even occurs. So, in case someone else is plagued by it, here's a not so very elegant fix.
I tried using KO with previous versions of the same Glyphs file. After around 20 tries, I found a version of the file from a while back that allowed me to set groups and automatically set special spacing for punctuation and symbols. After that, I simply added all masters from the newer file and deleted the old ones. I suppose it can work just as well if you add existing masters to a new Glyphs file.
It worked like a charm but I still have no idea why this issue even occurs. So, in case someone else is plagued by it, here's a not so very elegant fix.
Re: Special Spacing Not Working
Hi Tim!
I’m facing exactly the same issue as on the video above with one file — special spacing is not generated automatically and doesn’t stick properly when you add it manually. It seems like kern on fails to add default glyph.userData[“KernOnSpecialSpacing”] on launch. When you add glyphs into special groups manually through UI the result seems random:
1. Tried adding ’parenleft’ into Parenthesis group a few times — no userData added
2. Tried adding ’parenleft’ into Slash group — yes, userData added
3. Tried adding ’parenleft’ into Parenthesis groups again — yes, userData added
So, I tried removing all kern on userData I could find (see below) and reopening the file, restarting and reinstalling Kern On, and even tried a couple of different versions of it, but with no success. Is there any other piece of data that could be stuck somewhere, which makes the file different? Searching for “KernOn” returns nothing. Any workarounds other than clumsily copying everything into a new file?
del(Font.userData['KernOnVersion'])
for master in Font.masters:
del(master.userData['KernOnModels'])
del(master.userData['KernOnIndependentPairs'])
for glyph in Font.glyphs:
del(glyph.userData['KernOnName'])
del(glyph.userData['KernOnSpecialSpacing'])
I’m facing exactly the same issue as on the video above with one file — special spacing is not generated automatically and doesn’t stick properly when you add it manually. It seems like kern on fails to add default glyph.userData[“KernOnSpecialSpacing”] on launch. When you add glyphs into special groups manually through UI the result seems random:
1. Tried adding ’parenleft’ into Parenthesis group a few times — no userData added
2. Tried adding ’parenleft’ into Slash group — yes, userData added
3. Tried adding ’parenleft’ into Parenthesis groups again — yes, userData added
So, I tried removing all kern on userData I could find (see below) and reopening the file, restarting and reinstalling Kern On, and even tried a couple of different versions of it, but with no success. Is there any other piece of data that could be stuck somewhere, which makes the file different? Searching for “KernOn” returns nothing. Any workarounds other than clumsily copying everything into a new file?
del(Font.userData['KernOnVersion'])
for master in Font.masters:
del(master.userData['KernOnModels'])
del(master.userData['KernOnIndependentPairs'])
for glyph in Font.glyphs:
del(glyph.userData['KernOnName'])
del(glyph.userData['KernOnSpecialSpacing'])
- Tim Ahrens
- Site Admin
- Posts: 447
- Joined: 11 Jul 2019
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 yourself?
If you could send me a file and an exact description of what you do, from the very beginning when you start Kern On, that would be great. Maybe even with a video but this is optional. This means, please send me the file you started with, not saved after you did what you describe. Then I can try again to reproduce this here.
Also, as this may be important: Which version of macOS are you using?
Thanks for the detailed analysis, Alex. Seeing 1 vs 3 is very strange. Was the “Parenthesis” group one you created yourself?
If you could send me a file and an exact description of what you do, from the very beginning when you start Kern On, that would be great. Maybe even with a video but this is optional. This means, please send me the file you started with, not saved after you did what you describe. Then I can try again to reproduce this here.
Also, as this may be important: Which version of macOS are you using?
Re: Special Spacing Not Working
Hi Tim, here’s a couple more details I figured:
The bug is there in version 1.27 and 1.30 but not in 1.23 (don’t have others).
The steps 1–3 are reliably reproducible for all special spacing glyphs — setting the “correct” default group (such as “hyphen” for /hyphen) does not store userData, but setting a wrong group does the trick, after which you can reset it to the correct group.
Attaching a mockup file (Glyphs 2, but the bug is the same if you test it in Glyphs 3 too)
OS 12.6.1
The bug is there in version 1.27 and 1.30 but not in 1.23 (don’t have others).
The steps 1–3 are reliably reproducible for all special spacing glyphs — setting the “correct” default group (such as “hyphen” for /hyphen) does not store userData, but setting a wrong group does the trick, after which you can reset it to the correct group.
Attaching a mockup file (Glyphs 2, but the bug is the same if you test it in Glyphs 3 too)
OS 12.6.1
- Attachments
-
- Kern On Test.glyphs.zip
- (3.11 KiB) Not downloaded yet
- Tim Ahrens
- Site Admin
- Posts: 447
- Joined: 11 Jul 2019
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?
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?
Re: Special Spacing Not Working
Hi Tim, just since I have been running into this myself for quite a while, I wanted to make sure that this is something you have noticed (and, maybe, fixed):
When I start Kern On on a new font, every single glyph is set to "Standard Kerning". No special spacing groups are set automatically anymore, I need to set them manually or import them from an older file. Setting them manually works and the groups stick for me, though.
When I start Kern On on a new font, every single glyph is set to "Standard Kerning". No special spacing groups are set automatically anymore, I need to set them manually or import them from an older file. Setting them manually works and the groups stick for me, though.
- Tim Ahrens
- Site Admin
- Posts: 447
- Joined: 11 Jul 2019
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-start. After the next start of KO, the behaviour is correct. It took me a while to understand this as the feedback was not entirely clear.
The problem will be fixed in the next version.
The problem will be fixed in the next version.