GlyphConstruction icon indicating copy to clipboard operation
GlyphConstruction copied to clipboard

xOffset isn't set on first build, but is is when building again without changing anything

Open cjdunn opened this issue 1 year ago • 1 comments

Weird low priority bug I noticed: For glyphs where one of the base glyphs are missing (not common for final pruodtion, but hapeens early on when doing a quick pass at accents), strangely the first time I run Build Glyphs there is no xOffset written for the .cmb diacritic (which does exist in the UFO), the second time I run build this value is written as zero. The doesn't happen if both base glyphs are present.

Eg, in this example, I haven't added the /dotlessi glyph yet. Here's the diff between 1st run and 2nd run (with no changes to recipe), this is the diff:

 	<advance width="1000"/>
 	<outline>
 		<component base="dotlessi"/>
-		<component base="tilde.cmb" yOffset="79"/>
+		<component base="tilde.cmb" xOffset="0" yOffset="79"/>
 	</outline>
 	<lib>
 		<dict>

I there some kind of normalization that's happening the second time, which doesn't happen the first time?

cjdunn avatar Apr 07 '23 22:04 cjdunn

@cjdunn are you using the ufonormalizer in any way?

from mojo.UI import getDefault
print(getDefault("shouldNormalizeOnSave"))

I've noticed something similar off and on, I just assumed it had to do with ufonormalizer rather than any particular plugin, but if you're not using it, then it might be glyphConstruction!

colinmford avatar Apr 10 '23 18:04 colinmford