Prezto を mintty で使うためのフォント設定備忘録

Environment
Photo by hyt.

シェル zsh の便利な設定をまとめて導入可能な prezto を Cygwin の mintty で使うときに,綺麗なフォントが使えるようにするための備忘録です.これ以外の prezto 関係の備忘録は,

Prezto 備忘録
シェル zsh の便利な設定をまとめて導入可能な prezto 導入(はともかくとして)・維持のやり方をいつも忘れてしまうのでメモ. まず,Prezto の元ページは, ですね.初期設定は,上のページを見れば書いてありますが, git cl...

からどうぞ.なお,以下の不具合は修正されたようです.詳しくは,

mintty の一部 unicode 記号表示問題がやっと修正されたみたい
Windows 1809 に更新後ずっと mintty の Unicode 記号の表示に問題があったんですが,やっと修正されたようです. 修正方法は,たぶん Windows Update で,3月1日に出た KB4482887 と適用したら...

をご覧ください.


また,Windows 10 1809 の場合,Inconsolata フォントと mintty の組み合わせだと Unicode 記号の一部の表示に問題が出ます.この場合は,

https://github.com/powerline/fonts/tree/master/DejaVuSansMono

にある DejaVu Sans Mono for Powerline.ttf だと問題ないようです.

なお,本記事は,以下のページを参考にしています.

Inconsolataを日本語フォントの如くリンク改良(Windows) - mofoolog
Windows用にInconsolataとMeiryoKe_Consoleをプログラミングフォントとして制作(今回はリンク)する手順を書いた。
Display graphical symbols in terminal · Issue #22 · mintty/wsltty
I believe it is not wsltty specific and kins of basic windows terminal issue, but still will ask for it: This is neovim ...

Windows 10 Aniversary Update をしたら,mintty on Cygwin のフォントがうまく表示されなくなっていて,しばらく必要な設定を思い出せず,試行錯誤してしまったので,きちんとメモしておくことにします.なお,フォントは Inconsolata を前提とします.また,UTF-8 を標準の文字コードとして用います.

まず,見易いフォントとして,Inconsolata を導入します.

GitHub - google/fonts: Font files available from Google Fonts, and a public issue tracker for all things Google Fonts
Font files available from Google Fonts, and a public issue tracker for all things Google Fonts - google/fonts

にありますのでダウンロードします.Inconsolata 以外にも多くのフォントがダウンロード可能ですが,今回必要なのは

  • Inconsolata-Regular.ttf
  • Inconsolata-Bold.ttf

です.上のページの ofl/inconsolata 以下にあります.

次に Inconsolata は欧文フォントなので,レジストリを変更し,日本語フォントをリンクします.レジストリエディタで,

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontLink\SystemLink

を辿り,右側のウインドウで右クリックして「新規」「複数行文字列値(M)」を選択し,新たな Key として,Inconsolata を作成します.

次に同じウインドウから,Meiryo というキーを探し出し,ダブルクリックして,「値のデータ」に書かれている内容をコピーしておきます(以下の内容のはずです).

SEGUISYM.TTF,Segoe UI Symbol
SEGOEUI.TTF,Segoe UI
SEGOEUI.TTF,Segoe UI,133,83
YUGOTHM.TTC,Yu Gothic UI,128,96
YUGOTHM.TTC,Yu Gothic UI
MSGOTHIC.TTC,MS UI Gothic
MSJH.TTC,Microsoft Jhenghei,128,96
MSJH.TTC,Microsoft JhengHei
MSYH.TTC,Microsoft YaHei,128,96
MSYH.TTC,Microsoft YaHei
MALGUN.TTF,Malgun Gothic,128,96
MALGUN.TTF,Malgun Gothic

この内容を先ほど作成した Inconsolata キーをダブルクリックして現れる「値のデータ」にコピーして再起動します.

再起動後,mintty のフォントの設定を Inconsolata にすれば終わりです.なお,メニューからではなく,設定ファイルで Inconsolata にするには,

$ vi ~/.minttyrc
....
BellFlash=no
BellTaskbar=yes
Font=Inconsolata
Locale=ja_JP
Charset=UTF-8
....

の様に,Font=Inconsolata とすれば OK です.

なお,この設定で表示されるプロンプトは,prezto の sorin テーマのものなのですが,これ以外の,例えば powerline テーマを使おうとしても上手くいきません.フォントの合成等をきちんと行えば良いのかも知れませんが面倒なので試していません.powerline テーマの見た目は好きなので,少し残念なんですけどね.

Environment
スポンサーリンク
Following hyt!
タイトルとURLをコピーしました