All skills
massimodeluisa avatar

/nerd-fonts

@0b00b79

Use Nerd Fonts (nerdfonts) glyphs for icons in CLI output, TUIs, shell prompts, statuslines, editor and terminal configs, docs, and web pages. Pick a named glyph from the 10,995 on nerdfonts.com/cheat-sheet (nf-md-, nf-fa-, nf-dev-, nf-oct-, nf-cod-, nf-seti-, nf-pl-), verify the codepoint, and install a patched font from nerdfonts.com/font-downloads. Use when adding or fixing terminal or editor icons, tofu or empty boxes instead of icons, starship, powerlevel10k, oh-my-posh, tmux, lualine, nvim-tree, or a Nerd Font install, even if the user does not say nerd fonts. Do not use for Lucide, Heroicons, Tabler, Iconify SVGs, or Google Fonts pairings. Also: Nerd Font Mono vs Propo, brew, scoop, choco, font-patcher. Triggers: icon, glyph, nerd font, nerdfonts, powerline, starship, powerlevel10k, oh-my-posh, tmux status, lualine, nvim-tree, devicons, tofu, boxes instead of icons, terminal font, editor font, codepoint, font-patcher, emoji, icon font, file icons, statusline icons.

Use this Skill: https://skilld.dev/gh/massimodeluisa/nerdfonts-skill/nerd-fonts

This session only. Nothing lands on disk.

referencesfont-patcher.md

≈926 tokens on demand. Your agent reads this file only when SKILL.md points to it.

font-patcher

Data: Nerd Fonts v3.5.1, retrieved 2026-08-28. Sources: upstream README "font-patcher" section and wiki "ScriptOptions".

Requirements

  • FontForge with Python bindings (brew install fontforge, a distro package, or the FontForge AppImage) and Python 3.
  • FontPatcher.zip from the v3.5.1 release: the script plus src/glyphs. The bare script alone does not work.

Invocation

Download FontPatcher.zip and run FontForge only when the user asked to patch a font and confirmed the download.

curl -fLO https://github.com/ryanoasis/nerd-fonts/releases/download/v3.5.1/FontPatcher.zip
unzip -q FontPatcher.zip -d FontPatcher && cd FontPatcher
fontforge -script font-patcher /path/to/MyFont.ttf --complete --outputdir out/
./font-patcher /path/to/MyFont.ttf --complete --outputdir out/
./FontForge.AppImage -script "$PWD/font-patcher" "$PWD/MyFont.ttf" -out /tmp

The AppImage form needs absolute paths and an explicit output directory.

Docker, no local FontForge:

docker run --rm -v "$PWD/in:/in:Z" -v "$PWD/out:/out:Z" nerdfonts/patcher --complete
docker run --rm -v "$PWD/in:/in:Z" -v "$PWD/out:/out:Z" -e "PN=10" nerdfonts/patcher --complete
docker pull nerdfonts/patcher

PN sets the number of parallel jobs (PN=1 for a single process).

Options

Glyph sets

Option Adds
--complete, -c every set below (usually what you want)
--codicons Codicons
--fontawesome Font Awesome
--fontawesomeext Font Awesome Extension
--fontlogos Font Logos
--material Material Design Icons
--octicons Octicons
--pomicons Pomicons
--powerline Powerline symbols
--powerlineextra Powerline Extra symbols
--powersymbols IEC Power Symbols
--weather Weather Icons

Without a set flag the patcher adds only Seti-UI + Custom and Devicons.

Width

Option Effect
--mono, -s single-width icons (the Mono variant)
--variable-width-glyphs proportional icons without overhang (the Propo variant)
--single-width-glyphs single-width icons without forcing the font to monospace
--adjust-line-height, -l make odd cell heights even

Naming and output

Option Effect
--outputdir DIR, -out DIR output directory
--extension EXT, -ext EXT output format, ttf or otf
--name MODE naming source: full, postscript, filename, or a custom string
--makegroups [N] family naming strategy, level 0 to 6
--careful keep glyphs the font already has

Advanced

Option Effect
--configfile FILE JSON configuration for special cases
--custom FONT add glyphs from your own symbol font
--removeligs strip ligature tables (needs a config file)
--xavgcharwidth [N] keep or set xAvgCharWidth
--boxdrawing replace box drawing glyphs
--cell OPT set or query cell dimensions
--postprocess SCRIPT run a script after patching
--has-no-italic mark the font as Oblique instead of Italic
--metrics HHEA, --metrics TYPO, --metrics WIN vertical metrics source
--quiet, -q; --debug [N]; --dry; --progressbars, --no-progressbars logging and dry run

Examples from the upstream README

./font-patcher Inconsolata.otf --fontawesome --octicons --pomicons
./font-patcher "Droid Sans Mono for Powerline.otf" --mono --quiet
docker run --rm -v ~/myfont/patchme:/in:Z -v ~/myfont/patched:/out:Z nerdfonts/patcher --fontawesome

Install the generated font like any other (see the Install section of SKILL.md).

Source: SKILL.md on GitHub

1 alert20d3 checks · Risk HIGH
  • Gen Agent Trust Hub20d

    The skill provides icon lookup and font management tools for Nerd Fonts. It includes instructions to download data and scripts from the official Nerd Fonts repository and review user files for icon usage. While these actions involve external downloads and execution of project scripts, they are central to the skill's intended purpose and target a well-known project source.

  • Socket20d

    No alerts

  • Snyk20d

    Risk: LOW · No issues

Signed by skilld at 0b00b79. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 3 weeks ago.

Activeupdated 3 weeks ago
Other metadata
metadata
{
  "author": "massimodeluisa",
  "version": "1.2.0",
  "website": "https://www.nerdfonts.com",
  "upstream": "https://github.com/ryanoasis/nerd-fonts",
  "nerd-fonts-release": "v3.5.1"
}

README badge

README badge for massimodeluisa/nerdfonts-skill