リリース | フォント | パッチスクリプト | Wiki ドキュメント | ステッカー | VimDevIcons
Nerd Fonts は、たくさんのグリフ (アイコン) を開発者向けのフォントに追加するためのプロジェクトです。とりわけ、著名な「アイコンフォント」からたくさんのグリフを追加することを目的としています。例えば以下のようなフォントです: Font Awesome ➶, Devicons ➶, Octicons ➶, その他.
以下のサンキーダイアグラムにより、現在含まれているグリフセットがわかります。
このダイアグラムは @SankeyMATIC を使って作成されました。master
ブランチにありますファイルのパスは常に同じとは限りません。リポジトリ内を参照する URI が正しいか確認してください。- あなたが開発に貢献するつもりでもなければ、このリポジトリをクローンするのはお勧めできません(リポジトリのサイズが非常に大きいためです)。
- 1 - 手動インストール
- 2 - リリースアーカイブからのダウンロード
- 3 - インストールスクリプト
- 4 - Homebrew Fonts (macOS (OS X) 用)
- 5 - リポジトリのクローン
- 6 - Curl で直接ダウンロード
- 7 - Arch User Repository (AUR) (Arch Linux用)
- 8 - 自分でパッチを当てる
追加情報
Nerd Fonts は著名なプログラミング用フォントにグリフをまとめて追加したものです。たとえ利用したいフォントにパッチが当たっていない場合でも、パッチスクリプトが利用できます。さらに高度な情報が必要でしたら wiki を見てみてください。もし Vim プラグインをお探しでしたら VimDevIcons ➶ をご覧になると良いでしょう。
あなたがもし……
その 1
すぐに、いずれかのフォントをお望みならば、patched-fonts/
ディレクトリーからダウンロードしてください。その 2
書式(太字、斜体など)をまとめたフォントファミリーをダウンロードしたければ、アーカイブからダウンロードしてください。その 3
インストールを自動化したい、あるいは、スクリプト内で利用したい場合はインストールスクリプトを見てください。その 4
macOS 利用者で Homebrew を使いたい方なら、Homebrew Fontsを見てください。その 5
あなたの手で全てを管理したいのなら、リポジトリのクローンを見てください。その 6
curl
コマンドを使いたい、あるいは、スクリプト内で利用したい場合は Curl で直接ダウンロードを見てください。その 7
Arch Linux 利用者で、AUR packages を使いたいならば、非公式 Arch User Repositoryを見てください。その 8
自分でフォントにパッチを当てたいのなら、パッチスクリプトを見てください。
- FontForge 用 Python スクリプトを使ってフォントにパッチを当てます。
- 半角 (固定ピッチ、固定幅)、または、全角のグリフを作成できるオプションを含みます。
- さらに詳しくはパッチスクリプトの節を見てください。
50
を数えるパッチ済みフォントファミリー。1,571,470
を超える、パッチ済みフォントの変種とその組み合わせ(詳細はこちら)。2,600
を超えるグリフ(アイコン)を合成しています。- 現在含まれるグリフセットはこちら: Powerline with Extra Symbols, Font Awesome, Material Design Icons, Weather, Devicons, Octicons, Font Logos (以前Font Linuxと呼ばれていたものです), Pomicons
- それぞれのフォントは半角 (固定ピッチ、固定幅)、あるいは、全角グリフを含みます。
- これは必ずしもフォント全体についてではなく、Nerd Font 由来のグリフについて言っています。
- 開発者、あるいは、開発に貢献したい人は、付属の bash スクリプトを使って全てのフォントにパッチを再び当てることができます。
🔍 🔍 Cheat Sheet を使って NerdFonts.com から簡単にグリフを検索できるようになりました。
Wiki: グリフセットとコードポイントのさらなる詳細を見てください。
Wiki: シェルでアイコン名を参照するを見てください。
*RFN = Reserved Font Name (予約済みフォント名)
1,571,470
を超える、パッチ済みフォントの変種とその組み合わせ (冪集合)。50
のパッチ済みフォント書体。697
のパッチ済みフォントファミリー。2,788
の「完全な」変種とその組み合わせ。1,571,470
の 理論上可能な 変種とその組み合わせ。- 合計
1,574,258
になる組み合わせ (2,788 + 1,571,470)。
- 各々のフォントの「組み合わせ」はそれぞれの変種の組み合わせを表しています。
- フラグ指定なし (標準では Seti-UI + Custom と Devicons を含みます)。
- 全角 (可変幅・プロポーショナル)、または、半角 (固定幅) のグリフ。
- Font Awesome
- Font Awesome Extension
- Material Design Icons
- Weather
- GitHub Octicons
- Font Logos (以前Font Linuxと呼ばれていたものです。)
- Powerline Extra Symbols
- IEC Power Symbols
- Pomicons
- Windows で利用可能なもの。
すぐさま特定のフォントを手に入れたい場合に一番適した選択肢です。
パッチ済みフォントから選んでダウンロードしてください。
アーカイブや書式の完全なフォントファミリーを手に入れたい場合に一番適した選択肢です。
最新リリースからフォントのパッケージをダウンロード可能です。
インストールを自動化したい場合やスクリプト内で利用したい場合に一番適した選択肢です。
注意: Linux と macOS (OS X) でのみ可能です。
注意: 今の所、リポジトリのクローンが必要です。
- 全てのパッチ済みフォントをインストールします (警告: 大変たくさんのフォントがありますので、消費する容量に気をつけてください)。
./install.sh
- 好きなフォントを一つインストールします。
./install.sh <FontName>
./install.sh Hack
./install.sh HeavyData
macOS で、かつ、Homebrew を使いたい場合に一番適した選択肢です。
macOS (OS X) では Homebrew Cask Fonts を通じて全てのフォントが利用できます。
brew tap homebrew/cask-fonts
brew cask install font-hack-nerd-font
全てを管理したい、または、全てのフォントが欲しい、または、開発に貢献したい場合に一番適した選択肢です。
もし単に一部のフォントセットだけが入り用ならば、リポジトリのクローンは不要なだけでなく、非効率です (リポジトリのサイズがほとんどの要因です)。
しかしながら、それでもリポジトリをクローンしたいのでしたら、必ず shallow クローンを行いましょう。
git clone --depth 1
curl
コマンド、または、スクリプト内で利用したい場合の選択肢です。
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
注意: 以前別の選択肢として利用できたパス (~/.fonts
) は deprecated になりました。
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
Arch Linux、かつ、 AUR packages を使いたい場合の選択肢です。
Arch Linux 上の AUR packages で以下のフォントが利用できます。
- Nerd Fonts Complete (double-width)
- Nerd Fonts Complete (single-width)
- Nerd Fonts DejaVu Complete
- Nerd Fonts Source Code Pro Complete
- Nerd Fonts Git (out of date)
- Nerd Fonts Fira Code
- Nerd Fonts Terminus
- Nerd Fonts Liberation Mono
- Nerd Fonts Go Mono
- Nerd Fonts Anonymous Pro
- Nerd Fonts Noto
- Nerd Fonts Inconsolata
自分で好きなフォントにパッチを当てたり、フォントを十分にカスタマイズしたい場合の選択肢です。
下記に添付の Python スクリプトを使うことで、好きなフォントにグリフを追加することができます。
使い方は Font Patcher をみてください。
- このリポジトリで提供済みのフォントを利用したくない場合に、この作業を行なってください。
- 作成したフォントは、システムのフォントディレクトリーに正しくコピーする必要があります。
VimDevIcons ➶ で利用するために自分で選んだフォントにパッチを当てる方法:
- 必要なもの: Python2 (or Python3) と
python-fontforge
パッケージ (バージョン20141231
以降、インストール方法はこちら) - OSX では別の方法もあります:
brew install fontforge
- 使い方:
./font-patcher PATH_TO_FONT
- もう一つの使い方: script フラグを使うと FontForge のバイナリでスクリプトが実行できます。
./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 パッチを当てるフォントのパス。(例: Inconsolata.otf)
optional arguments:
-h, --help このヘルプメッセージを表示して終了します。
-v, --version プログラムのバージョン番号を表示して終了します。
-s, --mono, --use-single-width-glyphs
全角ではなく、半角のグリフを生成するかどうか指定します(デフォルトでは全角です)。
-l, --adjust-line-height
行高を合わせるかどうか指定します (Powerline セパレータがちょうど真ん中になるようにします)。
-q, --quiet, --shutup
デバッグメッセージを表示しません。
-w, --windows 内部で利用するフォント名を 31 文字に制限します (Windows の互換性のためのオプションです)。
-c, --complete 全ての利用可能なグリフを追加します。
--fontawesome Font Awesome のグリフを追加します (http://fontawesome.io/)。
--fontawesomeextension
Font Awesome Extension のグリフを追加します (https://andrelzgava.github.io/font-awesome-extension/)。
--fontlinux, --fontlogos
Font Linux とその他のオープンソースのグリフを追加します (https://github.com/Lukas-W/font-logos)。
--octicons Octicons Glyphs のグリフを追加します (https://octicons.github.com)。
--powersymbols IEC Power Symbols のグリフを追加します (https://unicodepowersymbol.com/)。
--pomicons Pomicon のグリフを追加します (https://github.com/gabrielelana/pomicons)。
--powerline Powerline グリフを追加します。
--powerlineextra Powerline Extra のグリフを追加します (https://github.com/ryanoasis/powerline-extra-symbols)。
--material, --materialdesignicons, --mdi
Material Design Icons のグリフを追加します (https://github.com/templarian/MaterialDesign)。
--weather, --weathericons
Weather Icons のグリフを追加します (https://github.com/erikflowers/weather-icons)。
--custom [CUSTOM] カスタムのシンボルフォントを指定します。全てのグリフがコピーされますが、大きさは変更されません。
--postprocess [POSTPROCESS]
あと処理を行うためのスクリプトを指定します。
--removeligs, --removeligatures
設定ファイルの JSON で指定されたリガチャを除きます。
--configfile [CONFIGFILE]
設定ファイルの JSON を指定します (src/config.sample.json の例を見てください)。
--progressbars グリフセットごとに進捗を百分率で表示します。
--no-progressbars グリフセットごとの進捗を表示しません。
--careful 既に存在するグリフがあれば、それを上書きしないようにします。
-ext [EXTENSION], --extension [EXTENSION]
作成するフォントのファイルタイプを変更します (例: ttf, otf)。
-out [OUTPUTDIR], --outputdir [OUTPUTDIR]
パッチを当てたファイルを保存するディレクトリ。
./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
-
開発に貢献したい人、あるいは開発者用です。
-
まだパッチを当てていないディレクトリーの、全てのフォントに再度パッチを当てます。
./gotta-patch-em-all-font-patcher\!.sh
- オプションで、フォント名のパターンを指定して制限することもできます。
./gotta-patch-em-all-font-patcher\!.sh Hermit
contributing.md を見てください。
パスはリリースごとの変更に影響を受けやすいため、master ブランチではなく、リリースタグを参照してください。
- 例:
- ✅ こちらを使ってください:
https://github.com/ryanoasis/nerd-fonts/blob/0.9.0/patched-fonts/Hermit/Medium/complete/Hurmit%20Medium%20Nerd%20Font%20Complete.otf
- ❌ ダメな例:
https://github.com/ryanoasis/nerd-fonts/blob/
master/patched-fonts/Hermit/Medium/complete/Hurmit%20Medium%20Nerd%20Font%20Complete.otf
- ✅ こちらを使ってください:
- パッチを当てるのに適したフォントのうち、このリポジトリで提供されていない、あるいは、ライセンスの関係で提供できないものを列挙しておきます。:
- Input Mono (ライセンス制限)
- 外部でのホスティングにより提供できるかも :)
- PragmataPro (有料)
- Consolas (プロプライエタリ)
- Operator Mono (有料)
- Dank Mono (有料)
Wiki: Project Purpose を見てください。
changelog.md を見てください。
MIT © Ryan L McIntyre