mirror of
https://github.com/ryanoasis/nerd-fonts.git
synced 2025-02-12 12:45:44 +02:00
font-patcher: Patch in heavy angle brackets
[why] The heavy angle brackets (276E and 276F) are used for a lot of prompts, but we do not yet patch them in and a lot of fonts do not bring them themselves. [how] One time rip the glyphs out from Hack and patch them in always, but careful (do not replace existing glyph). We take the whole set 276C - 2771. [note] Usually we should never again need to run the generate-extraglyphs script, we rip them out now and they look good. Whatever Hack does with new versions we can follow but that is optional. Related: #1110 Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
This commit is contained in:
parent
d083aa6540
commit
59c5cb5a1f
@ -11,6 +11,7 @@ Note: Usually you need to call the scripts in this directory while actually bein
|
||||
* `fpfix.py`: Can be used to set isFixedPitch property in a font [x]
|
||||
* `generate-casks.sh`: Generates cask files for fonts from data in `archives/` [6]
|
||||
* `generate-css.sh`: Generates the Nerd Fonts CCS, which can be used to access the glyphs on a web page, and the Cheat Sheet [1]
|
||||
* `generate-extraglyphs.py:` Generates `extraglyphs.sfd` from Hack Regular [4]
|
||||
* `generate-fontconfig.sh`: Generates font configuration to enable use of unpatched fonts with Symbols Only Nerd Font [1]
|
||||
* `generate-font-image-previews.sh`: Generates the preview images for `nerdfonts.com` (i.e. gh-pages) [3]
|
||||
* `generate-glyph-info-from-set.py`: Generate the `i_xxx.sh` file from a glyph source (font) file, if the glyphs are named correctly [4]
|
||||
|
32
bin/scripts/generate-extraglyphs.py
Executable file
32
bin/scripts/generate-extraglyphs.py
Executable file
@ -0,0 +1,32 @@
|
||||
#!/usr/bin/env python3
|
||||
# Nerd Fonts Version: 2.3.3
|
||||
# Script Version: 1.0.0
|
||||
# Generates extrasymbols.sfd from Hack
|
||||
|
||||
import os
|
||||
import fontforge
|
||||
|
||||
srcdir = '../../src'
|
||||
srcfont = 'unpatched-fonts/Hack/Regular/Hack-Regular.ttf'
|
||||
outfont = 'glyphs/extraglyphs.sfd'
|
||||
|
||||
print('Opening {}'.format(outfont))
|
||||
font = fontforge.open(os.path.join(srcdir, srcfont))
|
||||
|
||||
font.selection.select(
|
||||
0x276C, # medium left-pointing angle bracket
|
||||
0x276D, # medium right-pointing angle bracket
|
||||
0x276E, # heavy left-pointing angle quotation mark
|
||||
0x276F, # heavy right-pointing angle quotation mark
|
||||
0x2770, # heavy left-pointing angle bracket
|
||||
0x2771, # heavy right-pointing angle bracket
|
||||
)
|
||||
|
||||
num_icons = len(list(font.selection))
|
||||
|
||||
font.selection.invert()
|
||||
font.clear()
|
||||
|
||||
print('Generating {} with {} glyphs'.format(outfont, num_icons))
|
||||
font.generate(os.path.join(srcdir, outfont), flags=("no-FFTM-table",))
|
||||
font.close()
|
@ -6,7 +6,7 @@
|
||||
from __future__ import absolute_import, print_function, unicode_literals
|
||||
|
||||
# Change the script version when you edit this script:
|
||||
script_version = "3.5.3"
|
||||
script_version = "3.5.4"
|
||||
|
||||
version = "2.3.3"
|
||||
projectName = "Nerd Fonts"
|
||||
@ -796,6 +796,9 @@ class font_patcher:
|
||||
0xf0dd: {'align': 'c', 'valign': '', 'stretch': 'pa', 'params': {}},
|
||||
0xf0de: {'align': 'c', 'valign': '', 'stretch': 'pa', 'params': {}}
|
||||
}
|
||||
SYM_ATTR_HEAVYBRACKETS = {
|
||||
'default': {'align': 'c', 'valign': 'c', 'stretch': 'pa', 'params': {'careful': True}}
|
||||
}
|
||||
|
||||
CUSTOM_ATTR = {
|
||||
# 'pa' == preserve aspect ratio
|
||||
@ -895,6 +898,7 @@ class font_patcher:
|
||||
# Symbol font ranges
|
||||
self.patch_set = [
|
||||
{'Enabled': True, 'Name': "Seti-UI + Custom", 'Filename': "original-source.otf", 'Exact': False, 'SymStart': 0xE4FA, 'SymEnd': 0xE5AA, 'SrcStart': 0xE5FA, 'ScaleRules': None, 'Attributes': SYM_ATTR_DEFAULT},
|
||||
{'Enabled': True, 'Name': "Heavy Angle Brackets", 'Filename': "extraglyphs.sfd", 'Exact': True, 'SymStart': 0x0000, 'SymEnd': 0x0000, 'SrcStart': None, 'ScaleRules': None, 'Attributes': SYM_ATTR_HEAVYBRACKETS},
|
||||
{'Enabled': True, 'Name': "Devicons", 'Filename': "devicons.ttf", 'Exact': False, 'SymStart': 0xE600, 'SymEnd': 0xE6C5, 'SrcStart': 0xE700, 'ScaleRules': DEVI_SCALE_LIST, 'Attributes': SYM_ATTR_DEFAULT},
|
||||
{'Enabled': self.args.powerline, 'Name': "Powerline Symbols", 'Filename': "powerline-symbols/PowerlineSymbols.otf", 'Exact': True, 'SymStart': 0xE0A0, 'SymEnd': 0xE0A2, 'SrcStart': None, 'ScaleRules': None, 'Attributes': SYM_ATTR_POWERLINE},
|
||||
{'Enabled': self.args.powerline, 'Name': "Powerline Symbols", 'Filename': "powerline-symbols/PowerlineSymbols.otf", 'Exact': True, 'SymStart': 0xE0B0, 'SymEnd': 0xE0B3, 'SrcStart': None, 'ScaleRules': None, 'Attributes': SYM_ATTR_POWERLINE},
|
||||
|
BIN
src/glyphs/extraglyphs.sfd
Normal file
BIN
src/glyphs/extraglyphs.sfd
Normal file
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user