It was general advice given in a course on pre-export font engineering.
I can’t remember a specific context being mentioned for this which is part of why I’m wondering if there is a technical reason for not setting legacy marks (dieresis, dotaccent, grave, acute, etc.) to automatic alignment.
There is no pressing use case here. I’m just curious if and why this would be best practice.
What happens upon export is that combining marks are set to 0 advance width (no matter what width you have set). The legacy marks should have advance width, but Glyphs doesn’t explicitly set that on export.
Maybe this best practice refers to a case where you have your combining marks set to 0 width and use them as components in your legacy marks, in which case you shouldn’t automatically align them and set a spacing width on your legacy marks.
My recommendation: set positive side bearings for your combining marks and use them as automatically aligned components in your legacy marks. That way, your legacy marks will have advance width and Glyphs will still set the advance width of combining marks to 0 on export.
I mean, when I use ‘dieresiscomb’ as a component in ‘dieresis’, should the composition be set to automatic alignment or not? But I think Sebastian Carewe has already answered my question below
I probably have misunderstood this in the course if no one has heard of this as best practice.
It is not necessary anymore in the latest app versions.
Glyphs sets non-spacing combining marks to zero width at export. In early versions of Glyphs 3, when *comb marks were used as components in legacy marks, and auto-aligned, the legacy marks would get zero-widthed as well. That is why by default, Glyphs still disables alignment in legacy marks.
Last time I verified this, however, it worked as expected. So you can safely auto-align combining mark components inside legacy marks. But still a good idea to run your exported fonts through Font Spector.