mirror of
https://github.com/ryanoasis/nerd-fonts.git
synced 2024-09-12 09:41:47 +02:00
patcher: Fix grave (backtick) zero width
[why] In ligature-enabled environments the accent grave will be rendered as zero width, thus overlapping with the next character (in some source fonts). The problem is, that the glyph type in the sourcefonts is set to 'auto', and fontforge exports these as 'mark' - the patched font will be broken. [how] There is no way we can get that glyph to be 'auto', but we can force it to be an ordinary 'baseglyph' instead, and that will be respected on export. Maybe I should raise an Issue at fontforge... maybe later. Fixes: #858 Fixes: #582 Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
This commit is contained in:
parent
131cbb71c4
commit
3234fe0caf
1 changed files with 8 additions and 0 deletions
|
@ -126,6 +126,14 @@ class font_patcher:
|
|||
symfont.close()
|
||||
print("\nDone with Patch Sets, generating font...")
|
||||
|
||||
# The grave accent and fontforge:
|
||||
# If the type is 'auto' fontforge changes it to 'mark' on export.
|
||||
# We can not prevent this. So set it to 'baseglyph' instead, as
|
||||
# that resembles the most common expectations.
|
||||
# This is not needed with fontforge March 2022 Release anymore.
|
||||
if "grave" in self.sourceFont:
|
||||
self.sourceFont["grave"].glyphclass="baseglyph"
|
||||
|
||||
# the `PfEd-comments` flag is required for Fontforge to save '.comment' and '.fontlog'.
|
||||
if self.sourceFont.fullname != None:
|
||||
self.sourceFont.generate(self.args.outputdir + "/" + self.sourceFont.fullname + self.extension, flags=(str('opentype'), str('PfEd-comments')))
|
||||
|
|
Loading…
Reference in a new issue