This commit does the actual update of the octicons.ttf font file.
The script to update is 'generate'. It uses the mapping file from the
previous commit to create a new compatible font.
Some icons have meanwhile been dropped. We use their codepoints for new
icons.
Also fix a little bug in the GlyphInfo writer.
Following the output of the actual script run.
$ ./generate feature/update-octicons ● 1 … 5 ⚑ 5
Reading mapping file
Found 172 entries
Fetching octicons archive "v18.3.0.tar.gz"
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 550k 0 550k 0 0 504k 0 --:--:-- 0:00:01 --:--:-- 919k
Unpacking octicons archive
Found 576 svgs
Found 309 icons after de-duplicating
Renamed cloud-download -> download
Renamed cloud-upload -> upload
Renamed clippy -> paste
Renamed mail-read -> read
Renamed primitive-dot -> dot-fill
Renamed primitive-square -> square-fill
Renamed settings -> sliders
Renamed dashboard -> meter
Renamed trashcan -> trash
Renamed paintcan -> paintbrush
Missing octoface
Missing keyboard
Missing gist
Missing file-text
Missing file-pdf
Missing jersey
Missing radio-tower
Missing repo-force-push
Missing mail-reply
Missing arrow-small-right
Missing gist-secret
Missing no-newline
Missing arrow-small-up
Missing arrow-small-down
Missing arrow-small-left
Missing file-symlink-directory
Missing circuit-board
Missing watch
Missing text-size
Missing ellipses
Missing plus-small
Found 151 (of 172, missing 21) and new 158
Filled in missing, remaining new 137
Appended remaining new, total new mapping 309
Generating octicons.ttf with 309 glyphs
Generating GlyphInfo i_oct.sh
Finished
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
[why]
The octicons got a lot updates.
But they do not have a font anymore.
[how]
Keep our old codepoints constant, but add the new icons thereafter.
This commit just moves all the mechanics in and moves the (old) font.
No actual update here.
The mapping file has been created with the analyze_octicons script.
Fixes: #490
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
[why]
Because we do not know if a complete family of fonts has an italic face
we must always assume it does. To get clean RIBBI families in ID1/2 we
create a different family for the oblique slant.
But that is not needed if the font does not have an italic slant, but
just an oblique one (like Bitstream Vera and descendants).
[how]
Add new command line option for font-patcher that specifies if the
family of fonts should be patched under the assumption that there might
be an italic face (default), or if we are sure there is none (and we can
leave oblique in the RIBBI group).
This is then applied to the config.cfg files.
Note that this does not take into account any other of the known_slants.
But they are not encountered in any of our prepatched fonts.
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
[why]
We have both
iA Writer Duospace
iA Writer Duo S
These are the same fonts, Duospace is just the former name of Duo S.
Duospace is version 1.005
Duo S (and Mono and Quattro) is version 2.000
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
[why]
Most fonts can run with the full naming (--makegroups 1).
But for some (especially with full fledged subfamilies) the names become
too long. Here we need to select more shortening.
[how]
This can be either done/stored in the font-patcher script, but if you
need shortening (and which) still depends on what set of fonts you want
to patch.
So instead we make it a config.cfg option of the unpatched-fonts.
[note]
Findings:
3270 2
Agave 1
AnonymousPro 1
Arimo 1
Aurulent 1
BigBlueTerminal 1
BitstreamVera too long, and has RFM
CascadiaCove 4
CodeNewRoman 1
Cousine 1
DaddyTimeMono 1
DejaVuSansMono 1
DroidSansMono 1
FantasqueSansMono 1
FiraCode 2
FiraMono 1
Gohu 1
Go-Mono 1
Hack 1
Hasklig 2
HeavyData 1
Hermit 1
iA-Writer PROBLEM Quattro / Duospace
IBMPlexMono 1
Inconsolata 1
InconsolataGo 1
InconsolataLGC 1
Iosevka 4 (would also work with 3, but keep same with Term)
IosevkaTerm 4
JetBrainsMono 4
Lekton 1
LiberationMono 1
Lilex 1
Meslo 1
Monofur 1
Monoid 1
Mononoki 1
MPlus 2, latX -> 3
NerdFontsSymbolsOnly 1
Noto 5, but!! "ExtraCondensed ExtraLight Italic"
OpenDyslexic 1
Overpass 2
ProFont 1
ProggyClean 1
RobotoMono 3
ShareTechMono 1
SourceCodePro 4
SpaceMono 1
Terminus 1
Tinos 1
Ubuntu 2
UbuntuMono 2
VictorMono 4
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
[why]
We use a prepatched font not the original Anonymous Pro.
The prepatched font contains no bitmaps and is thus like
Anonymous Pro Minus. Also some font internals that fontforge does not
copy out of the box are differing.
And we miss the Bold and Italic variants.
[how]
Crossgrade to original Anonymous Pro as source and add the missing
weight/style.
Add Anonymous to SIL.
Handle 'Pro' naming parts (do not detect 'r' as short for 'Regular').
[note]
Maybe related: #1174
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
[why]
The old naming is the reason for a lot problems. It creates a lot of
duplicate names and breaks bigger font families.
[how]
After introducing --makegroups we now enable it for all fonts.
Remove special cases from config.cfg files.
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
[why]
Both are full fledged families, one specifically for terminal, the other
not. Although it might be that people want both there is a likelyhood
that some just need one set.
Splitting these makes the individual release packages smaller and more
handable, and improves release workflow run time.
[note]
Also fix RFN of mononoki en passant :-}
See comment on mononoki's RFN with the mononoki 1.6 update commit.
See also #803
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
Also drop all the bitmap fonts that we have in src/unpatched-fonts/ but
we do not do anything with them.
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
They started with new version numbering and have different version on
each subset.
The complete naming set changed. See their website to find the font you
used before.
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
[why]
The unicode 2630 (Trigraph Heaven) is often used in vim powerlines (at
least).
[how]
Draw nice 3 rectangles.
Insert 'pa1', always scaling also in non mono fonts. That needs a new
attribute: '!'.
The scaling is in fact an issue. Using 'pa' is the way of least
resistance.
Without the new attribute the glyph would look different in mono and
nonmono, which is not nice.
Fixes: #589
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
[why]
For some unknown reason some files have the execute right bit set in
git. That is neither needed nor recommended.
The *.cfg files are pulled in with `source`, so they do not need to be
executable.
[note]
Example command to check
find . -perm /111 -type f
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
[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>
[why]
In the course of #271 the source for SourceCodePro switched: Before we
used SourceCode Powerline [1], afterwards the original one [2].
One font file has been forgotten, as the font files were differently
named in both variants.
This caused issed with parallel build in the CI and font tweaking (which
is done as additional process after the actual patching).
[note]
[1] https://github.com/ryanmcilmoyl/sourceCodePro-Powerline
[2] https://github.com/adobe-fonts/source-code-pro/releases/tag/2.030R-ro%2F1.050R-it
Maybe, this is not entirely clear, and the 'Powerline' variant does not
have an Italic style.
Fixes: #1084
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
[how]
Icon taken from https://github.com/vlang/v-logo
Edit in inkscape:
- remove shadow
- simulate shadow by cutting right side
- change to black and white
Fixes: #630
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
[why]
We get very bad names using the old naming algo:
`mononoki BoldItalic Nerd Font Complete`
Also the typographic subfamily is useless (will not be set bu the old
algo)
[how]
Use `--makegroups` which results in correct fullname
`Mononoki Nerd Font Complete Bold Italic`
Related: #575
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
[why]
We had a copy of the original Fira Code website.
But all the comments and links are only partially relevant for the Nerd
Fonts patched version, e.g. how to install.
[how]
To reduce confusions do not copy the original readme, but link it.
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
[why]
The JetBrains Mono font has a lot of different families. A lot users install
just all "JetBrainsMono Nerd Font" families, and this can break in a lot
different ways.
[how]
Just turn the feature on in font-patcher (via patch-em-all's config).
Fixes: #542
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
[why]
Material Design Icons has grown quite a bit.
[how]
Add the icons at their original position which is in PUA1.
Use the desktop font instead of the webfont.
Add cheat cheat file.
Fixes: #365
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
[why]
The new asm icon replaces the apple icon.
I believe this has been entered as offset by mistake.
[how]
Add new icon to bottom.
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>