カラクリスタ

「輝かしい青春」なんて失かった人のブログ

Ricty + Powerline + NERD Fonts

概要

  • Ricty + Powerline + NERD Fonts なフォントを作る方法
  • 色々試行錯誤とかしていたので、そのまとめ

作り方

準備

作成

  • 最初に NERD Font patched な Inconsolata を使って Ricty を作る
  • 次に先程生成した Ricty に Powerline パッチを当てる
  • 以上

何故この手順が必要か

Ricty を合成するために NERD Fonts patched な Inconsolata を使うだけは、Powerline 用文字の文字幅とかその辺りが不完全な状態になるらしく、Powerline 用文字の周りで隙間とかが開くため。

実際に使う

実際に Terminal Emulator 等で使う場合には、

wcwidth-cjk

を有効にして、かつ、 ambiguous width 周りを 2 文字として扱う環境を整えた上で、Terminal の文字間の幅を調整すること。

なお、上手く行けば、下記のスクリーンショットの様に、上手い事表示できる:

NERFonts を適用した画像

ちなみに、上記スクリーンショットの画像では、

  • OSX の Termianl.app
  • tmux 2.2 + NeoVim + vim-airline + vim-devicon
  • 今回の手順で作った Ricty Discord

を使用しています。

注意点

NERD Fonts patched な Inconsolata は、 Inconsolata for Powerline Nerd Font Complete.otf を使った。なお、Mono と付いてる方を使うのはうまく行かなくなるので、そちらは使わないこと。

また、ambiguous width をきちんと正しい文字幅で表示するためには、

  • 表示している Terminal Emulator での ambiguous width の取り扱い
  • tmux や screen を使っている場合には、それらの ambiguous width の取り扱い
  • さらに、NeoVim 等の Console App 内での ambiguous width の取り扱い

が一致している必要が有るので、この辺りはどこがズレの原因になっているか、 一つずつ問題を切り分けて確認すること。

ということで

以上。