Commit graph

585 commits

Author SHA1 Message Date
Fini Jastrow
224174a663 doc: Show RFN permissions more visibly
[why]
The fonts where we are allowed to keep the font name despite the RFN
clause in the license have nothing mentioning of RFN or the exception in
the readmes. But it is recommended (required?) by SIL to inform users of
that exception in a most transparent way.

[how]
Add that bit of information to the readme files in the patched-fonts
directories and the release archives.

[note]
Also some other information seemed to be missing, by the complete
rebuild of the readme it also got updated (Gohu/ProFont).

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-08-30 12:57:59 +02:00
Fini Jastrow
66ae03de2e shellcheck.sh: Unify variable style
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-08-28 09:32:03 +02:00
Fini Jastrow
d294607b12 cheatsheet.sh: Make CWD independent
[why]
Sometimes people like to call the scripts from any directory and do not
want to change into the bin/scripts/ directory first.

[how]
Just access the lib files relative to the cheatsheet script file.

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-08-28 09:32:03 +02:00
Fini Jastrow
4712c89819 cheatsheet.sh: Add README entry
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-08-28 09:25:35 +02:00
Fini Jastrow
4b4955ff53 cheatsheet.sh: Fix shellcheck
... and slightly change description

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-08-28 09:25:35 +02:00
hasecilu
2025f40362 Add CLI cheatsheet script 2024-08-28 09:25:35 +02:00
Fini Jastrow
edbce6f1e3 font-patcher: Fix escaping fix
[why]
With Terminess the regex needs to match literal parens, this has been
misunderstood with the last commit.

[how]
Revert the previous commit for Terminess, and use a raw string as
solution instead (because we usually use raw strings for regexes).

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-05-06 22:40:26 +02:00
Fini Jastrow
cb0c9ed1e7 font-patcher: Fix escaping warnings
[why]
Some strings have broken format, because the string should contain a
verbatim backslash.

It seems this is a new warning for Python 3.12

[how]
Use raw strings or escape the escape character via '\\'

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-05-06 22:13:25 +02:00
Finii
4b887d6dc4 [ci] Rebuild original-source font 2024-04-26 11:04:41 +00:00
Fini Jastrow
cd80b9eccc gotta-patch-em: Remove post_process
[why]
The previous change(s) removed executing the config.cfg **shell script**
which would pull in some environment variables like `post_process`.
With that change the appropriate option has to be given with the
commandline value of the new config.cfg **INI** file.

[how]
Remove defunct leftover code.

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-04-22 14:08:28 +02:00
Fini Jastrow
88d63ff827 gotta-patch-em: Correct file type of config files
[why]
The config files are called `config.json` while the contents is
INI-like. The usual extension would be `.cfg`.

[how]
We use `.cfg` already for the shell variable configuration.

Combine both config file variants into one (real) cfg file, that is
directly read by the font-patcher and no shell variables files are used
anymore.

This needs some rewrite in gotta-patch-em to get the quoting right.
To make this simpler we remove the `--debug 1` option from the variable
and insert it directly (as it is applied always anyhow).

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-04-22 14:08:28 +02:00
Finii
6fa413d6bc [ci] Bump release version 2024-04-12 14:31:51 +00:00
Fini Jastrow
490943b955 Add SPDX license info
[why]
It can be hard to find out which license a particular font is using.
Therefore we add a new field to the fonts.json with an SPDX license
identifier (if possible).

[how]
For fonts with a license that has no SPDX identifier we use a free
`LicenseRef-*` identifier, but that reference is not solved in the
fonts.json file.

[note]
Also correct some licensing info given in the license audit.

Related: #1578

Suggested-by:  Jan Christian Gruenhage <jan.christian@gruenhage.xyz>
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-04-12 07:18:36 +02:00
Fini Jastrow
1ddfb70dd3 FontAwesome: Regerenate font
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-04-08 18:11:23 +02:00
Fini Jastrow
0cdbaa83f6 Fix image-preview-paths in fonts.json
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-04-04 12:00:55 +02:00
Fini Jastrow
16121f41c7 doc: Update Sankey diagram
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-04-04 11:14:09 +02:00
Fini Jastrow
8dfc4e4de7 Fix new Powerline icons tag names
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-04-04 11:13:19 +02:00
Finii
1895050935 [ci] Bump release version 2024-04-04 07:53:24 +00:00
Fini Jastrow
5841890d98 Material Design: Correct i_md.sh
[why]
Has double entries.
This has been detected by generate-css that got that check recently.

[how]
Use new generator script.

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-04-04 01:34:05 +02:00
Fini Jastrow
6790860132 generate-glyph-info: Modernize and fix double entries
[why]
When the to be examined font has the same glyph with multiple unicode
codepoints (altuni) the generated list will include the icon multiple
times (with the same name).

[how]
Use glyphs only at their main codepoint.

Also modernize the code a bit.

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-04-04 01:34:05 +02:00
Fini Jastrow
9a06ee4ec6 name-parser: Extract duplicate code into function
CodeClimate issue

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-04-03 16:18:46 +02:00
Fini Jastrow
51d698cc53 Revert "name-parser: Remove superfluous Regular from ID17"
Hmm, this is probably not what we want, but I would like to keep the
commit for future reference.

This reverts commit ecca0a4f35.
2024-04-03 16:18:46 +02:00
Fini Jastrow
7d3c59b072 name-parser: Remove superfluous Regular from ID17
We do not need "Condensed Regular" as ID17, a simple "Condensed" is
enough.

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-04-03 16:18:46 +02:00
Fini Jastrow
8b69828c97 name-parser: Fix keep-regular rule
[why]
The keep-regular rule should add 'Regular' as weight if there is no
weight (e.g. Bold) or style (e.g. Italic).

But when a font does have neither but has a widths specifier it is also
not added.

[how]
Check for some conrete weight and not only any entry in the weight
token, because we - unfortunately - mix weights and widths in that token
set.

We do not need to check the styles because it is technically impossible
for it to comtain Regular and something else.

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-04-03 16:18:46 +02:00
Fini Jastrow
4fb601bd8f name-parser: Rename Recursive Semi Casual differently
[why]
"RecMonoSemi" looks a bit broken.

[how]
Unchanged version "RecMonoSemicasual" is two chars too long for NFP.
This is independent on makegroups mode, because the PS name is affected.

Use "RecMonoSmCasual" which is just the right length and still the
original is discernible (I guess).

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-04-03 16:18:46 +02:00
Fini Jastrow
e1f7f4b59c name-parser: Prevent wrong modifier detection
[why]
Modifier on their own are not allowed (except "Demi").
The previous commit where we changed the CodeClimate fix from
' ' to '' allowed any modifier to be a stand alone detected word.

This resulted in this font name:
  RecMonoCasual Nerd Font Propo Semi

[how]
Remove the cumbesome CodeClimate kludge completely, it just makes the
code more complex without any real benefit. Codeclimate just complains
because our tables look so "similar" :rolleyes: That's data dude!

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-04-03 16:18:46 +02:00
Fini Jastrow
9bf159f414 name-parser: Fix Terminus-Bold-Italic parsing
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-04-03 16:18:46 +02:00
Fini Jastrow
c1161d4762 query_names: Only consider basic language
[why]
We have now fonts where names for multiple languages are set
(differently) but we need to compare only the base language which is
English US.

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-04-03 16:18:46 +02:00
Fini Jastrow
be3ee4854f name-parser: Add "thick" weight for Lilex
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-04-03 16:18:46 +02:00
Fini Jastrow
be48f93710 name-parser: Fix style names two-language-mode
[why]
The code needlessly create two language ID17 even if ID16 is only one
entry / one languange. ID17 is always the same for both languages.

This is an example for the wrong way:

======== BlexMonoNerdFont-Text.ttf ========
SFNT Fullname      ID 4     BlexMono Nerd Font Text
SFNT Family        ID 1     BlexMono Nerd Font Text
SFNT SubFamily     ID 2     Regular
SFNT Pref Family   ID 16    BlexMono Nerd Font
SFNT Pref Styles   ID 17    ('Text', 'Text')
SFNT PS Name       ID 6     BlexMonoNF-Text
SFNT Compatible    ID 18    -
SFNT CID findfont  ID 20    -
SFNT WWS Family    ID 21    -
SFNT WWS SubFamily ID 22    -
PS fontname                 BlexMonoNF-Text
PS fullname                 BlexMono Nerd Font Text
PS familyname               BlexMono Nerd Font Text
fondname                    None

This is an example for the correct way (two ID17 when we have two ID16):

======== NotoSerifCondensedNerdFont-BlackItalic.ttf ========
SFNT Fullname      ID 4     NotoSerif Condensed NF Black Italic
SFNT Family        ID 1     NotoSerif Cond NF Black
SFNT SubFamily     ID 2     Italic
SFNT Pref Family   ID 16    ('NotoSerif Condensed Nerd Font', 'NotoSerif Cond NF')
SFNT Pref Styles   ID 17    ('Black Italic', 'Black Italic')
SFNT PS Name       ID 6     NotoSerifCondensedNF-BlackItalic
SFNT Compatible    ID 18    -
SFNT CID findfont  ID 20    -
SFNT WWS Family    ID 21    -
SFNT WWS SubFamily ID 22    -
PS fontname                 NotoSerifCondensedNF-BlackItalic
PS fullname                 NotoSerif Condensed NF Black Italic
PS familyname               NotoSerif Cond NF Black
fondname                    None

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-04-03 16:18:46 +02:00
Fini Jastrow
92c5b0f3e0 Update Font Logos to 1.2.0
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-04-02 20:38:36 +02:00
Fini Jastrow
f089ee8a6e Font Awesome: Update to 6.5.1
This does not pull in all icons of 6.5.1, but only of
'Region A' and 'Region B', see script `remix` and
PR #1563.

It keeps the codepoints constant for existing icons.

Fixes: #1550

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-04-02 18:24:46 +02:00
Fini Jastrow
09c6c8988c Add Ubuntu Sans
Prevent the "SansMono" becomes "SansM" rule for UbuntuSansMono.

Fixes: #1435

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-04-02 18:21:29 +02:00
Fini Jastrow
3d7aa9298c name-parser: Sort Widths before Weights
[why]
Usually we want the width before the weight:

ZedMono Nerd Font Extended ExtraBold Italic

but we get:

ZedMono Nerd Font ExtraBold Extended Italic

The reason is that we do not sort widths and weights and handle them as
one list, keeping the original order.

All fonts but Zed have the width before the weight and it never turned
up

[how]
Handle widths and weights on their own and only afterwards concattenate
width (first) to weights (second).

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-04-02 15:59:21 +02:00
Fini Jastrow
f2862d4475 Fix CodeClimate Fix
[why]
When we add a dummy we need to remove that later on.

Originally that has been introduces to avoid a wrong code duplication
warning.

See how the blank leaks into the name:

ERROR: ====-< Family (ID 1)      too long (38 > 31): ZedMono Nerd Font Extended ExtraBold
DEBUG: =====> SubFamily (ID 2)   ok       ( 6 <=31): Italic
DEBUG: =====> Fullname (ID 4)    ok       (45 <=63): ZedMono Nerd Font Extended ExtraBold   Italic
DEBUG: =====> PSN (ID 6)         ok       (33 <=63): ZedMonoNF-ExtendedExtraBoldItalic
DEBUG: =====> PrefFamily (ID 16) ok       (17 <=31): ZedMono Nerd Font
DEBUG: =====> PrefStyles (ID 17) ok       (27 <=31): Extended ExtraBold   Italic
DEBUG: =====> PrefStyles (ID 17) ok       (27 <=31): Extended ExtraBold   Italic
DEBUG: =====> Filename 'ZedMonoNerdFont-ExtendedExtraBoldItalic.ttf'

(Note trailing blanks even in ID 1.)

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-04-02 15:51:52 +02:00
cabrinha
cb6c1c6c64 Add font Zed Mono
This squashes also these commits:

* ds-store
* ZedMono: Clean up files
  Remove files that should not be in the PR, because they are autocreated
  or belong somewhere else.
* Also divide Extended and non-Extended versions.
* ZedMono: Fix metadata
* ZedMono: Fix some metadata
* ZedMono: Drop some more exotic weights and restructure dirs

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-03-31 00:32:26 +01:00
Fini Jastrow
4af1693cb6 Add Recursive Mono
'for Code' variants.

Rename RecMonoSemicausal to RecMonoSemi to avoid too long font names
after we add 'Nerd Font Mono' )or even (NFM) to it.

Fixes: #845

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-03-31 00:26:34 +01:00
Youri Wijnands
584c397e5c Update all Iosevka variants to version 29.0.4
Sqashed these commits:

* Remove Thin, Extra-Light, Semi-Bold and Heavy variants of IosevkaTermSlab
* Remove Thin, Extra-Light, Semi-Bold and Heavy files after unpacking
* No more subfolders per weight
* Revert commiting patched fonts
* Rewrite update scripts
* Update readme.md
2024-03-31 00:22:36 +01:00
Fini Jastrow
9136231ad2 Update Victor Mono to 1.5.6
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-03-31 00:20:43 +01:00
Fini Jastrow
d1c7397a30 Update Lilex to 2.400
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-03-31 00:20:43 +01:00
Fini Jastrow
298f3a13e7 Update InconsolataLGC to 1.5.2
Also remove patched-fonts/InconsolataLGC/ subdirectories.

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-03-31 00:20:43 +01:00
Fini Jastrow
f31143c553 Update Geist Mono to 1.200
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-03-31 00:20:43 +01:00
Fini Jastrow
4a17ad2134 Update Commit Mono to 1.143
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-03-31 00:20:43 +01:00
Fini Jastrow
4b1db681db Update IBM Plex Mono to 2.004 (v6.4.0)
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-03-31 00:20:43 +01:00
Fini Jastrow
39a3a2a753 Update 0xProto to version 1.603
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-03-31 00:20:43 +01:00
Finii
47986a4368 [ci] Rebuild original-source font 2024-03-31 00:11:13 +01:00
Fini
f81f17af0d
Merge pull request #1558 from landfillbaby/master
update Intel One Mono to 1.3.0
2024-03-30 13:28:01 +01:00
Fini Jastrow
23a14f1847 Update Terminus to 4.49.3
[why]
The outlines in Terminus 4.49.2 are rather weird. Autoconverted but not
too nice.

[how]
Update to 4.49.3 as tis has much better outlines.

Fixes: #1329

Suggested-by: Wiesław Herr @herself
Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-03-30 10:09:40 +01:00
Fini Jastrow
5d463f0940 tests: Add new glyphs to vertical lines test
and improve the script code in general

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-03-29 14:43:37 +01:00
Fini Jastrow
7543e4a3a8 Add inverse powerline arrow heads
Fixes: #1451

See also (merged but not released):
eb6b9721a8

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2024-03-29 14:10:31 +01:00