nerd-fonts/bin/scripts/lib
Fini Jastrow 090fbbeebe Sunset in-repo releases
[why]
We struggle with the pack-committing of patched fonts to the repository
on release. This makes our repo grow extremely big. It would be better
to just use release artifacts for the releases and not commit any
patched font back.
There were different approaches discussed, but the problem remains that
I personally have no rights to implement anything of that - neither can
I force push to the default branch, nor can I create new repos in the
organization.

[how]
To make it still possible to add new fonts without a repo size
explosion we do not release NEW fonts back to the repository as commits,
but old fonts are handled as before.
NEW fonts:
 * have a new property set in the fonts.yaml 'database'
 * are released as release artifact via release workflow (but not
   committed back)
 * get a readme in the patched_fonts/ directory that points to the
   release artifact page

The solution is not ideal, but for sure better than not adding any fonts
anymore or having the repo grow in size faster and faster.

At some point in time I would like to phase out all in-repo releases,
also for OLD fonts.

This scheme has been (manually) used / introduced for Intel One.
With this change the .gitignore file is automatically adapted to any new
font that is added with the repoRelease flag set to false (which should
be the default for any added font from now on).

Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2023-09-27 11:20:36 +02:00
..
fonts-small-subset.json Tweak RC for less fonts and try wildcard pattern for artifact upload, comments out commit for now 2022-01-01 07:50:03 -08:00
fonts.json Sunset in-repo releases 2023-09-27 11:20:36 +02:00
i_all.sh [ci] Bump release version 2023-06-04 20:32:30 +00:00
i_cod.sh Correct i_xxx.sh 2023-01-19 08:32:00 +01:00
i_dev.sh Update bash shebangs 2018-07-09 18:18:12 +03:00
i_fa.sh Update bash shebangs 2018-07-09 18:18:12 +03:00
i_fae.sh Cheatsheet correction (fixes #285) 2019-08-15 14:41:20 -07:00
i_iec.sh Update bash shebangs 2018-07-09 18:18:12 +03:00
i_logos.sh [ci] Bump release version 2023-06-04 20:32:30 +00:00
i_material.sh [ci] Bump release version 2023-06-04 20:32:30 +00:00
i_md.sh [ci] Bump release version 2023-06-04 20:32:30 +00:00
i_oct.sh [ci] Bump release version 2023-06-04 20:32:30 +00:00
i_ple.sh Correct i_xxx.sh 2023-01-19 08:32:00 +01:00
i_pom.sh Update bash shebangs 2018-07-09 18:18:12 +03:00
i_seti.sh [ci] Bump release version 2023-06-04 20:32:30 +00:00
i_weather.sh [ci] Bump release version 2023-06-04 20:32:30 +00:00
README.md Fix i_cod.sh docu 2022-09-16 10:57:58 +02:00
template-font-preview.svg Adds regular (non Inkscape) template svg used by script to generate font previews 2019-09-05 14:34:00 -07:00
template-font-preview2.svg generate-font-image-previews: Generate Symbols Only preview 2022-12-19 21:09:29 +01:00

Contents

This directory contains

  • List of all source fonts to patch with CI
  • List of all glyphs for the cheat-sheet

Source fonts

The file fonts.json is used by the github CI to patch all fonts and create all the release zip archives. The 'font matrix' is derived from it.

get-font-names-from-json.sh is a small helper to set the matrix up.

Cheat Sheet

The glyphs get their names through the individual (per glyph source) i_*.sh files in this directory. Only glyphs listed here could be found with the cheat sheet.

  • original-source.otf: i_seti.sh
  • devicons.ttf: i_dev.sh
  • powerline-symbols/PowerlineSymbols.otf: is a subset of PowerlineExtraSymbols
  • PowerlineExtraSymbols.otf: i_ple.sh
  • Pomicons.otf: i_pom.sh
  • font-awesome/FontAwesome.otf: i_fa.sh
  • font-awesome-extension.ttf: i_fae.sh
  • Unicode_IEC_symbol_font.otf: i_iec.sh
  • materialdesignicons-webfont.ttf: i_material.sh
  • weather-icons/weathericons-regular-webfont.ttf: i_weather.sh
  • font-logos.ttf: i_linux.sh
  • octicons.ttf: i_oct.sh
  • codicons/codicon.ttf: i_cod.sh