Home

Awesome

<h1 align="center"> <img src="images/nerd-fonts-logo.svg" alt="Nerd Fonts Logo" /> </h1> <h2 align="center"> <img alt="Iconic font aggregator, collection, and patcher" src="images/project-subtitle-phrase.svg"> </h2> <div align="center">

Releases   |   Fonts   |   Font Patcher   |   Wiki Documentation   |   Stickers   |   VimDevIcons

GitHub release Gitter Build Status Code of Conduct PRs Welcome <a href="#patched-fonts" title=""><img src="https://raw.githubusercontent.com/wiki/ryanoasis/nerd-fonts/images/faux-shield-badge-os-logos.svg?sanitize=true" alt="Nerd Fonts - OS Support"></a> Twitter

</div>

Nerd Fonts is a project that patches developer targeted fonts with a high number of glyphs (icons). Specifically to add a high number of extra glyphs from popular 'iconic fonts' such as Font Awesome ➶, Devicons ➶, Octicons ➶, and others.

The following Sankey flow diagram shows the current glyph sets included:

<p align="center"> <img src="images/sankey-glyphs-combined-diagram.svg" alt="@SankeyMATIC Diagram" /> </p> <sub><i>Diagram created using <a href="http://sankeymatic.com/" title="SankeyMATIC (BETA): A Sankey diagram builder for everyone">@SankeyMATIC</a></i></sub>

Important Notices

Table of Contents

TL;DR

Installation Options

Features

Developer / Contributor

Project Motivation

Additional Info

TL;DR

Nerd Fonts takes popular programming fonts and adds a bunch of Glyphs. There is also a font patcher available if your desired font isn't already patched. For more high level information see the wiki. If you are looking for the Vim plugin see VimDevIcons ➶.

Various Download Options for Fonts

If you...

Features

Glyph Sets

:mag: :mag: You can now search for glyphs easily on NerdFonts.com via the Cheat Sheet

See Wiki: Glyph Sets and Codepoints for more details

Icon names in shell

See Wiki: Icon names in shell

Patched Fonts

Font NameFont Name and Repository*RFNEM SizeStatus
3270 Nerd Font3270NO1000w m2 l
AgaveAgaveNO2048w m2 l
Anonymice Nerd FontAnonymous ProNO2048w m2 l
ArimoArimoNO2048w m2 l
Aurulent Sans Mono Nerd FontNO1000w m2 l
BigBlueTerminalNO1200w m2 l
Bitstream Vera Sans Mono Nerd FontNO2048w m2 l
Blex*IBM Plex MonoYES1000w m2 l
Caskaydia Cove Nerd Font*Cascadia CodeYES2048w m2 l
Code New Roman Nerd FontNO2048w m2 l
Cousine Nerd FontCousineNO1000w m2 l
DaddyTimeMonoDaddyTimeMonoNO1024w m2 l
DejaVu Sans Mono Nerd FontNO2048w m2 l
Droid Sans Mono Nerd FontNO2048w m2 l
Fantasque Sans Nerd FontFantasque SansNO2048w m2 l
Fira Code Nerd FontFira CodeNO1000w m2 l
Fira Mono Nerd FontFiraNO1000w m2 l
Go Mono Nerd FontGo-MonoNO1000w m2 l
Gohu Nerd FontGohu TTF,GohuNO1000w m2 l
Hack Nerd FontHackNO2048w m2 l
Hasklug Nerd Font*HaskligYES1000w m2 l
Heavy Data Mono Nerd FontNO2048w m2 l
Hermut Nerd FontNO1000w m2 l
iM-Writing*iA-WriterYES1000w m2 l
Inconsolata Nerd FontNO1000w m2 l
Inconsolata Go Nerd FontNO1000w m2 l
Inconsolata LGC Nerd FontNO1000w m2 l
Iosevka Nerd FontIosevkaNO1000#83
JetBrains MonoJetBrains MonoNO1000w m2 l
Lekton Nerd FontNO1000w m2 l
Literation Mono Nerd Font*LiberationYES2048w m2 l
Meslo Nerd FontNO2048w m2 l
Monofur Nerd FontNO2400w m2 l
Monoid Nerd FontNO1536w m2 l
Mononoki Nerd FontMononokiNO1024w m2 l
M+ (MPlus) Nerd FontNO1000w m2 l
NotoNO1000w m2 l
OpenDyslexicNO1000w m2 l
OverpassNO1000w m2 l
ProFont (Windows tweaked) Nerd FontNO1200w m2 l
ProFont (x11) Nerd FontNO1000w m2 l
ProggyClean Nerd FontNO2048Imperfect
Roboto MonoNO2048w m2 l
Sauce Code Nerd FontSourceYES1000w m2 l
Shure Tech Mono Nerd Font*Share Tech MonoYES1000w m2 l
Space Mono Nerd FontSpace MonoNO1000w m2 l
Terminess Nerd Font*Terminus FontYES1000w m2 l
TinosNO2048w m2 l
Ubuntu Nerd FontNO1000w m2 l
Ubuntu Mono Nerd FontNO1000w m2 l
Victor MonoVictor MonoNO1000w m2 l

<sub>*RFN = Reserved Font Name</sub>

Combinations

Variations

Font Installation

Option 1: Download and Install Manually

Best option for quickly getting a specific individual font.

Download the specific patched font of your choice

Option 2: Release Archive Download

Best option if you want an archive or complete font family of variations (Bold, Italic, etc.).

Fonts are available for download as packages in the latest release

Option 3: Install Script

Best option if you want to automate installing or for use in scripts.

Note: Only for Linux & macOS (OS X) Note: Requires cloning the repo as of now

All fonts:

./install.sh

Single font:

./install.sh <FontName>
./install.sh Hack
./install.sh HeavyData

Option 4: Homebrew Fonts

Best option if on macOS and want to use Homebrew.

All fonts are available via Homebrew Cask Fonts on macOS (OS X)

brew tap homebrew/cask-fonts
brew cask install font-hack-nerd-font

Option 5: Clone the Repo

Best option for full control, all or most of the fonts, or contributing to development.

Cloning of this repository is not required nor efficient (mostly due to Repository size) if you are simply only interested in a limited set of fonts.

However if you do want to clone the repo be sure to shallow clone:

git clone --depth 1

Option 6: Ad Hoc Curl Download

Option if you want to use the curl command or for use in scripts.

Linux

mkdir -p ~/.local/share/fonts
cd ~/.local/share/fonts && curl -fLo "Droid Sans Mono for Powerline Nerd Font Complete.otf" https://github.com/ryanoasis/nerd-fonts/raw/master/patched-fonts/DroidSansMono/complete/Droid%20Sans%20Mono%20Nerd%20Font%20Complete.otf

Note: deprecated alternative paths: ~/.fonts

macOS (OS X)

cd ~/Library/Fonts && curl -fLo "Droid Sans Mono for Powerline Nerd Font Complete.otf" https://github.com/ryanoasis/nerd-fonts/raw/master/patched-fonts/DroidSansMono/complete/Droid%20Sans%20Mono%20Nerd%20Font%20Complete.otf

Option 7: Unofficial Arch User Repository (AUR)

Option for Arch Linux and wanting to use AUR packages.

The following fonts are available via AUR packages on Arch Linux:

Option 8: Patch Your Own Font

The option for patching your own font or fully customizing the patched font.

Use the provided Python command line script to generate a patched font from your own font to get the extra new glyphs

See: Font Patcher for usage

<h2 align="center" id="font-patcher"> <img src="images/nerd-fonts-patcher-logo.png" alt="Nerd Fonts Patcher"> </h2>

Patching the font of your own choosing for use with the VimDevIcons ➶:

./font-patcher PATH_TO_FONT
./fontforge -script font-patcher PATH_TO_FONT
usage: font-patcher [-h] [-v] [-s] [-l] [-q] [-w] [-c] [--fontawesome]
                    [--fontawesomeextension] [--fontlinux] [--octicons]
                    [--powersymbols] [--pomicons] [--powerline]
                    [--powerlineextra] [--material] [--weather]
                    [--custom [CUSTOM]] [--postprocess [POSTPROCESS]]
                    [--removeligs] [--configfile [CONFIGFILE]]
                    [--progressbars | --no-progressbars] [--careful]
                    [-ext [EXTENSION]] [-out [OUTPUTDIR]]
                    font

Nerd Fonts Font Patcher: patches a given font with programming and development related glyphs

* Website: https://www.nerdfonts.com
* Version: 2.0.0
* Development Website: https://github.com/ryanoasis/nerd-fonts
* Changelog: https://github.com/ryanoasis/nerd-fonts/blob/master/changelog.md

positional arguments:
  font                  The path to the font to patch (e.g., Inconsolata.otf)

optional arguments:
  -h, --help            show this help message and exit
  -v, --version         show program's version number and exit
  -s, --mono, --use-single-width-glyphs
                        Whether to generate the glyphs as single-width not double-width (default is double-width)
  -l, --adjust-line-height
                        Whether to adjust line heights (attempt to center powerline separators more evenly)
  -q, --quiet, --shutup
                        Do not generate verbose output
  -w, --windows         Limit the internal font name to 31 characters (for Windows compatibility)
  -c, --complete        Add all available Glyphs
  --fontawesome         Add Font Awesome Glyphs (http://fontawesome.io/)
  --fontawesomeextension
                        Add Font Awesome Extension Glyphs (https://andrelzgava.github.io/font-awesome-extension/)
  --fontlinux, --fontlogos
                        Add Font Linux and other open source Glyphs (https://github.com/Lukas-W/font-logos)
  --octicons            Add Octicons Glyphs (https://octicons.github.com)
  --powersymbols        Add IEC Power Symbols (https://unicodepowersymbol.com/)
  --pomicons            Add Pomicon Glyphs (https://github.com/gabrielelana/pomicons)
  --powerline           Add Powerline Glyphs
  --powerlineextra      Add Powerline Glyphs (https://github.com/ryanoasis/powerline-extra-symbols)
  --material, --materialdesignicons, --mdi
                        Add Material Design Icons (https://github.com/templarian/MaterialDesign)
  --weather, --weathericons
                        Add Weather Icons (https://github.com/erikflowers/weather-icons)
  --custom [CUSTOM]     Specify a custom symbol font. All new glyphs will be copied, with no scaling applied.
  --postprocess [POSTPROCESS]
                        Specify a Script for Post Processing
  --removeligs, --removeligatures
                        Removes ligatures specified in JSON configuration file
  --configfile [CONFIGFILE]
                        Specify a file path for JSON configuration file (see sample: src/config.sample.json)
  --progressbars        Show percentage completion progress bars per Glyph Set
  --no-progressbars     Don't show percentage completion progress bars per Glyph Set
  --careful             Do not overwrite existing glyphs if detected
  -ext [EXTENSION], --extension [EXTENSION]
                        Change font file type to create (e.g., ttf, otf)
  -out [OUTPUTDIR], --outputdir [OUTPUTDIR]
                        The directory to output the patched font file to

Examples

./font-patcher Droid\ Sans\ Mono\ for\ Powerline.otf
./font-patcher Droid\ Sans\ Mono\ for\ Powerline.otf -s -q
./font-patcher Droid\ Sans\ Mono\ for\ Powerline.otf --use-single-width-glyphs --quiet
./font-patcher Droid\ Sans\ Mono\ for\ Powerline.otf -w
./font-patcher Droid\ Sans\ Mono\ for\ Powerline.otf --windows --quiet
./font-patcher Droid\ Sans\ Mono\ for\ Powerline.otf --windows --pomicons --quiet
./font-patcher Inconsolata.otf --fontawesome
./font-patcher Inconsolata.otf --fontawesome --octicons --pomicons
./font-patcher Inconsolata.otf

<a name="gotta-patch-em-all"></a>

Gotta Patch 'em All Font Patcher!

./gotta-patch-em-all-font-patcher\!.sh
./gotta-patch-em-all-font-patcher\!.sh Hermit

Contributing

See contributing.md

Unstable File Paths

:warning: Warning: File paths may change based on releases (especially major version bumps)

Reference the release branch and not the master branch because paths are subject to change for each release

Other Good Fonts to Patch

Project Motivation

See Wiki: Project Purpose

Changelog

See changelog.md

License

MIT © Ryan L McIntyre

<!-- Repo References --> <!-- Website References --> <!-- Link References --> <!-- Font repos --> <!-- Patched Font internal links --> <!-- Quick Link Images --> <!-- Patched Font Statuses -->