# Nerd Fonts — Iconic Patched Fonts for Developer Tooling > A curated aggregator and patcher that bundles 3,600+ icons into 50+ popular programming fonts, giving terminals, editors, and status bars consistent glyph coverage. ## Install Save as a script file and run: # Nerd Fonts — Iconic Patched Fonts for Developer Tooling ## Quick Use ```bash # Install via Homebrew (macOS / Linux) brew install --cask font-fira-code-nerd-font # Or download a specific font manually curl -fLO https://github.com/ryanoasis/nerd-fonts/releases/latest/download/FiraCode.zip unzip FiraCode.zip -d ~/.local/share/fonts && fc-cache -fv ``` ## Introduction Nerd Fonts patches popular monospaced typefaces with thousands of glyphs sourced from Font Awesome, Devicons, Octicons, Material Design Icons, and more. The result is a single font file that renders file-type icons, Git branch symbols, and powerline separators without extra font-fallback configuration. It is widely adopted by terminal prompt tools, file managers, and status-line plugins. ## What Nerd Fonts Does - Patches 50+ fonts (Fira Code, JetBrains Mono, Hack, Cascadia Code, etc.) with a unified glyph set - Aggregates 3,600+ icons from 10+ upstream icon projects into a consistent codepoint mapping - Provides a standalone patcher script so users can patch any compatible font themselves - Publishes pre-built releases on GitHub and via Homebrew, Chocolatey, Scoop, and AUR - Ships a CSS web-font variant for browser-based terminal UIs ## Architecture Overview The project centers on a Python-based font patcher built on FontForge. It reads a source font, maps each upstream icon set to a reserved Private Use Area (PUA) codepoint range, and writes a new OpenType file. CI pipelines run the patcher against every supported font and publish release archives. A shell installer script automates download and system font registration. ## Self-Hosting & Configuration - Clone the repo and run `font-patcher` with FontForge to patch a custom font - Use `--complete` flag to include all available glyph sets in a single pass - Set the patched font as your terminal emulator's default monospace typeface - For web use, reference the CSS file from `css/nerd-fonts-generated.css` - Most Linux desktops pick up fonts placed in `~/.local/share/fonts` after running `fc-cache -fv` ## Key Features - Consistent codepoint mapping across all patched fonts for portable dotfile configs - Supports ligature-enabled fonts like Fira Code and JetBrains Mono - Works with every major terminal: iTerm2, Alacritty, Kitty, WezTerm, Windows Terminal - Powers prompt tools like Starship, Oh My Posh, and Powerlevel10k out of the box - Available via all major OS package managers and font distribution channels ## Comparison with Similar Tools - **Powerline Fonts** — only includes powerline glyphs; Nerd Fonts adds thousands more icons - **FiraCode (upstream)** — provides ligatures but no icon glyphs; Nerd Fonts patches icons in - **Codicons** — VS Code's icon font; scoped to the editor, not general terminal use - **Font Awesome** — a standalone icon font for web; Nerd Fonts integrates it alongside many others - **Iosevka** — a customizable coding font with optional ligatures; Nerd Fonts can patch Iosevka too ## FAQ **Q: Do patched fonts break ligatures?** A: No. The patcher preserves the original font's OpenType ligature tables while adding icons in unused codepoint slots. **Q: How large are patched font files?** A: A complete-patched font is typically 5-15 MB per weight, versus 0.5-2 MB for the unpatched original. **Q: Can I patch a proprietary font I have a license for?** A: The patcher works on any compatible font file. License compliance for redistribution is your responsibility. **Q: Which font should I start with?** A: FiraCode Nerd Font and JetBrainsMono Nerd Font are the most popular choices among developers. ## Sources - https://github.com/ryanoasis/nerd-fonts - https://www.nerdfonts.com/ --- Source: https://tokrepo.com/en/workflows/asset-c51a722f Author: Script Depot