Commit graph

196 commits

Author SHA1 Message Date
Fini Jastrow
237d7640a6 Clean up svgs
Outline fonts are a bit picky about the embedded svgs.
Best is if there is only one path.

Ungrouped and path merged in Inkscape manually.

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2022-10-20 10:04:58 +02:00
Fini Jastrow
1e75dfac76 Remove more doubles
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2022-10-20 10:04:58 +02:00
Fini Jastrow
974249b534 Actually use new Seti
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2022-10-20 10:04:58 +02:00
Fini Jastrow
2beed43447 Clean up icon doubles
Some icons are now existing twice.

* Their crystal icon looks wrong (rotationwise), compare with https://github.com/crystal-lang/crystal
* Their C logo misses the standard's hex shape
* Their C++ logo misses the standard's hex shape
* Their Elixir icons has a dent in the reflextion?
* Their Elm icon is colored
* Their Git Folder is not a folder
* Their Kotlin icon is colored
* Their Puppet icon is more correct
* Their Pursescript icon is identical
* Their Windows icon is more modern

That means:

* Do not include their crystal, elixir, elm, kotlin, purescript
* Do not include our puppet, windows
* Keeping both c, c++, git-folder

[note]
Keeping their old files around with changed suffix to find this commit
in the future on updates.

Reuse old icons that were labeled as 'seti' but have been vanished as
new custom types with appropriate file naming.

And remove 'red' versions of icons. We have a black and white font...

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2022-10-20 10:04:32 +02:00
Fini Jastrow
589b0dfd9d Mix all custom icons into seti
Add "_nf" suffix to our own svgs.
Add our icons database

Adapt filename in icons database
Just change the filenames of the custom icons to include the new "_nf"
suffix.

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2022-10-20 10:02:52 +02:00
Fini Jastrow
4ada58a660 Add all current seti svgs
From master branch, commit
fd20793e5a

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2022-10-19 08:31:59 +02:00
Finii
f1094f1fad [ci] Rebuild original-source font 2022-10-13 14:43:09 +00:00
Fini Jastrow
f84b4a26e4 Symbols Only font: Remove gaps
[why]
We do not want fonts with gap. Gaps are explicitely removed on patching
anyhow. Why should the templates have gaps?

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2022-10-12 13:46:54 +02:00
Fini Jastrow
a72f9961dd Fix JetBransMono != ligature
[why]
In JetBrainsMono v2.242 the exclam-equal ligature is broken.
It has been fixed in v3.000.

[how]
The JetBrains Mono v3 has not been released yet. So we just transplant
the one broken glyph from v3.000 into our v2.242.

[note]
https://github.com/JetBrains/JetBrainsMono/issues/494

Fixes: #963

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2022-10-12 08:49:44 +02:00
Fini Jastrow
ed33d1b943 Update 3270font to v3.0.1
[why]
We have only a rather old 3270font: v1.2.23

This new font can be processed with current FontForge without problems.
And we have the benefit of an update.

[how]
Because the paths change (Medium->Regular etc) we need to purge the
patched-fonts/ directories manually. The automatic purging does work
only if at least the paths are kept.

[note]
https://github.com/rbanffy/3270font

Fixes: #947

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2022-10-07 11:55:34 +02:00
Fini Jastrow
25d8c0d0bd Update Inconsolata to v3.000
https://github.com/googlefonts/Inconsolata

Only small changes visually, but of course completely different from the
paths (because now the source is a 2D variable font).

Small letter t changed a bit.
Under the letter dot and block-building glyphs changed.
Subscript numerals.

Closes: #774

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2022-10-07 08:28:08 +02:00
Finii
0197629d4b [ci] Rebuild original-source font 2022-09-22 18:24:58 +02:00
Fini Jastrow
bcc80b4077 Update orgmode glyph
[why]
The glyph is needlessly detailed (for a font).
There is another, more simple glyph, which is also used by fileicons.

More details see PR #833.

Reported-by: tecosaur <contact@tecosaur.net>
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2022-09-22 18:24:58 +02:00
Fini Jastrow
12cd703e39 Fix Hasklug ligature removal
[why]
Entering two consecutive vertical-bars (i.e. `||`) results in the
display of just one - the right - bar glyph.

[how]
The ligature removal is only partially implemented. The rule at work
here is not removed. There are two parts at work:

One rule to replace the first bar with nothing.

One rule to replace the second bar with a ligarture glyph with negative
left bearing, that shows two bars.

The second rule has been removed, but the first is still there.
This commit also removes the first rule.

[note]
The whole design here is broken. We remove only some rules and leave
others intact, for reasons unknown to me. Other ligartures will also be
only partially removed and leave the user with unreadable output.

We should either remove all (!) tables and not just some, or leave the
ligatures in the font.

As the ligature removal has been broken at large anyhow (see previous
commit), I would suggest to not remove any ligatures (anymore).

Fixes: #934

Reported-by: Rádler Ákos <akos.radler@gmail.com>
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2022-09-22 17:46:55 +02:00
Finii
99f65e19b0 [ci] Rebuild original-source font 2022-09-21 12:00:37 +00:00
Finii
2c7fb2fd2d [ci] Simplify original-source source glyphs 2022-09-21 12:00:35 +00:00
Fini Jastrow
b255bc1d71 Update documentation 2022-09-21 13:54:42 +02:00
Fini Jastrow
eca92e3bd9 Simplify PHP glyph
[why]
This is so big, it will shrink 2 times with a
optimize-original-source.sh run, and we want to have 'optimal' glyphs
after the next (automated) CI run

[how]
Use optimize-original-source.sh once and just commit the php.svg.

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2022-09-21 10:31:41 +02:00
Fini Jastrow
328b8a2d22 Add original-source.otf generator script
[why]
When we add a custom glyph (or want to update Seti) the process is
rather laborious and we are needed to change the font and the
accompanying `i_seti.sh` in sync.

[how]
We use a data file to map icon (svg) filenames to codepoints and
readable names.

That file is parsed and the font and info file is created (overwritten
in the repo); and could then be easily committed. This can be a CI
workflow.

Having a dedicated mapping file (`icons.tsv`) enables us to have stable
codepoints for the same symbol over time. Changes in codepoint
allocation can be checked in git.

Having the font autogenerated help guarantee that the icons are all
likely scaled. We rescale them all to the same size and mid-position.
That is not needed for font-patcher, because it rescales and shifts
again based on to-be-patched font metrics. But it certainly is better
for a view into the original-source font.

Sizes and position are still roughly equivalent to the hand positioned
glyphs.

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2022-09-19 12:02:24 +02:00
Fini Jastrow
604c41253a Add Kotlin icon to Seti & Custom
[why]
It's not available anywhere else (it seems).

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2022-09-07 06:15:30 +02:00
Fini
86c2247ee2
Merge pull request #833 from ashfinal/icon-emacs
Add icons for Emacs and Orgmode
2022-09-07 05:48:55 +02:00
Fini Jastrow
b83d1cfacb Create NerdFontsSymbolsOnly with proportional widths
[why]
The commit
  59c45ba4e  Remove negative bearings on 2048-em glyphs
has been introduced to fix some problems with the symbols only font, at
least from the commit message.

That font is intended to be used in font-fallback situations, and so we
do not know the advance width of the current font anyhow. It does not
make sense to enforce an advance width with these.

[how]
Create the NerdFontsSymbolsOnly as if 59c45ba4e would be still in
effect, i.e. with variable advance width.

[note]
There have been a lot discussions about the reverted commit, some can be
found here:
* #900
* #764
* #731

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2022-09-01 12:36:51 +02:00
Fini Jastrow
49d99fe883 name-parser: Rename font-patcher option
[why]
The option `--parser` instructs `font-patcher` to come up with the font
naming by utilizing the FontnameParser object.

This sounds logical from a programmers perspective, but the option name
is not descriptive for end users of `font-patcher`

[how]
As usual naming is hard. A short but maybe more descriptive name for the
option can be `--makegroups`; as it describes what the option means for
the end user: functioning font grouping.

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2022-08-22 10:53:05 +02:00
Fini Jastrow
0b33b2f97e patch-em-all: Allow to specify font specific options
[why]
We want to patch Cascadia with `--parser` while all other fonts shall be
patched as before.

[how]
Use the config.cfg file that each source font can have to specify one
arbitrary option to the font-patcher calls.

This is just set in Cascadia's config.cfg, but can be extended to other
fonts gradually.

In this way the stand alone `font-patcher` works as before, unless
someone adds the `--parser` option. Which probably will become the
recommended way to use it over time.

The patch-em-all script on the other hand can be instructed to use or
not to use --parser on a font by font basis via their cfg file.

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2022-08-22 10:53:05 +02:00
Fini Jastrow
166b0262d8 Update Cascadia sources to 2111.01
Also including the italic variants.

We do not use the PL versions but patch in the PL glyphs ourselves.
If this is smart can be discussed (I believe: no).

This does not add 'Cascadia Mono'.

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2022-08-22 10:53:05 +02:00
Fini Jastrow
80568d957c Remove obsolete symbol only fonts
[why]
Not sure why they are here, all patched fonts reside now in the
`patched-fonts/` folder.

So we have two times two different symbols only font sets?

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2022-08-20 19:33:29 +02:00
Fini Jastrow
821ac68173 Create symbols only font directly from sfd template
[why]
The symbol only fonts Symbols-1000-em Nerd Font Complete.ttf
and 2048-em in `NerdFontsSymbolsOnly/` are generated from
some 'almost' empty source fonts, that are assumable in turn generated
from the sfd font descriptions in `src/glyphs/`?

The process is not documented and we have issues in the generated font
(for example the glyph for capital `E` is defined (and empty) #581 #765).

[how]
Use the existing font definitions from `src/glyphs/*.sfd` directly as
source font. That needs a change in font-patcher because the empty
fonts have no glyphs that can be used to orient the scaling upon. In
that case scale on the source font definitions EM.

Then we need patch-em-all to also patch *.sfd fonts.

And finally we need patch-em-all to take a font specific command line
switch for font-patcher (compare 9e2bc9a26 of #723) to instruct it to
create a ttf rather than a sfd font file.

In the sfd file we additionally set the Panose type.
And the UnderlinePosition is adjusted to match the current patched font.

[note]
Also fix wrong glob pattern in patch-em-all `*.[o,t]tf`. The comma is
for sure some leftover from a '{}' shell pattern, that is not used
anymore. (This comment is probably outdated, due to rebasing.)

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2022-08-20 19:33:29 +02:00
Fini Jastrow
34fda84b2d Update Font Logos to 1.0.1
[why]
That release contains a bugfix:
https://github.com/lukas-w/font-logos/issues/82

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2022-08-18 11:16:44 +02:00
Fini Jastrow
f9f3612e80 Update Font Logos to 1.0.0
[why]
Before Font Logos 1.0.0 there was no stable-codepoint guarantee, and the
later revisions (0.18) reassigned the codepoints. That makes updating
for us very hard, because we would have to resort the icons or follow
the codepoint changes.

With 1.0.0 this changed. That new major release introduced not only a
codepoint guarantee, but it also shifted the codepoints from the F100
region to the F300 region, where we put them anyhow (in most cases).
That is one subset less with 'dynamic base codepoint'.

The reassignment of codepoints in Font Logos kept the codepoints stable
for the icons we already have in release 2.1.0. But at the moment the
2.2.0 Release Candidate (which updated Font Logos with commit 557b8da)
have added glyphs, which are on different points as compared with the
Font Logos 1.0.0 release.

What I want to say, we need to get this straight, before our 2.2.0 RC
turns into a Release 2.2.0.

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2022-08-18 11:16:44 +02:00
ashfinal
7f04248439 Add icons for Emacs and Orgmode 2022-05-21 17:17:44 +08:00
moritzdietz
dd5274002d
JetBrains Mono v2.251: Add unpatched fonts
Signed-off-by: moritzdietz <moritzdietz@users.noreply.github.com>
2022-02-02 18:52:06 +00:00
Ryan L McIntyre
d2cd41e4c5 Stop gap fix for #753 [skip ci]
* set a width on the control characters for 1000-em and 2048-em so width works properly with --mono flag
* also fixes the naming
2022-01-09 03:15:45 -08:00
Ryan L McIntyre
d702344b51 Removes unnecessary Noto fonts that also cause long patching process and high size usage 2022-01-03 09:28:34 -08:00
Ryan L McIntyre
adcef8e294 Fix missing font patcher archive readme info 2022-01-03 03:48:46 -08:00
Ryan L McIntyre
725c9df524 Follow up changes for new Codicons glyph set 2021-12-22 05:47:28 -08:00
Ryan L McIntyre
611f9279f9
Merge branch 'master' into codicon 2021-12-22 13:28:52 -08:00
Ryan L McIntyre
6c41bf7dfa Fixes a few issues brought up in #724 2021-12-19 11:12:08 -08:00
Ryan L McIntyre
2d03a39223 Improves structure and hopefully automated patching of symbol only nerd font variations
* relates to issues #479 #668
2021-12-11 13:43:47 -08:00
Ryan L McIntyre
d72b772cb5
Merge pull request #704 from gitfool/gh697
Update Fira Code to latest version
2021-12-11 17:32:31 -08:00
Ryan L McIntyre
9633b4d362 License audit work to fix some licensing issues in #266 2021-12-11 08:10:08 -08:00
Ryan L McIntyre
775952fa02 Fixes #709 invalid VF font included 2021-12-11 08:08:13 -08:00
Sean Fausett
78be0e1e74
Add unpatched FiraCode v6.2 2021-12-07 12:14:51 +13:00
Charles Strahan
96ab7f6ef7 add support for codicons
Closes #620
2021-12-04 16:44:01 -06:00
Sean Fausett
d23d0e0089
Add unpatched FiraCode v6.1 2021-12-04 14:36:29 +13:00
ktanoooo
eadcf61372 Update command for Homebrew cask option 2021-11-25 08:07:16 +01:00
Ryan L McIntyre
3a05ea62d3
Merge pull request #648 from moritzdietz/moritzdietz/JetBrainsMono-2.242
Update JetBrains Mono to version v2.242
2021-11-18 21:36:29 -08:00
Ryan L McIntyre
a7d8f517e9 Updates Iosevka src to verson/release 11.0.1 2021-11-17 13:15:21 -08:00
Ryan L McIntyre
87df343814
Merge pull request #622 from FollieHiyuki/iosevka-update
Update Iosevka font to 6.1.3
2021-11-17 20:56:21 -08:00
David Hollinger III
c01e5f62f8
Add the official Puppet icon as a custom icon 2021-08-13 12:51:35 -05:00
moritzdietz
c3f30aa3e0
Add updated JetBrainsMono fonts in version v2.242 2021-08-07 13:13:14 +02:00