[arch]フォントを決着つける
arch linux(LINUXでは多分おなじ)ではfontconfigによってシステムのデフォルトフォントがきまってる。
システム全体の設定は/etc/fonts/font.conf
で定義されており、これは基本編集せずにグローバルに変更したい場合には/etc/fonts/local.conf
にXMLで定義する。(システムデフォルトに設定するときにはttyではビットマップfontのみ使用できることを注意)
ユーザ別に設定したい場合は、~/.config/fontconfig/font.conf
に定義する
そのときに既存でsans, serif, mono,が定義されておりそれを上書きすることで、terminalやその他のフォールバックとして表示されます。
sans等はエイリアスであり、foot, waybarなどでフォントが指定されていない場合に、システムデフォルトのフォントを参照するときなどにしようされます。
なので、hackgen, hack等のフォントをmonoに指定せずとも直接設定し、それをアプリ側からしていすることもできるが、めんどうなため共通でしていしたいばあいはmono, sans等に使用したいフォントを割り当てるのが一般的です。
私の環境ではXDG_CONFIG_HOME環境変数を明示的に.bashrc等に設定せずとも、~/.config/fontconfig/font,conf
の設定を参照してくれるようになっていたため、とくにXDG_CONFIG_HOMEは設定しませんでしたが、他のディレクトリ等で管理したい場合には、その設定が必要になるのかも、その挙動はてすとしていません。。。。
わたしが選んだフォントはHackGen Concole NFです!!!!
りゆう
- 日本語に対応
- nerd fontが結構はいってる
- プログラミング時用に英字としてHackを使用しようとしてたため丁度いい
- 1:2, 3:5を選べる
- fontのよくある不具合が対策されてる
です
これを
packmanでインストールし、user別設定でmonoに割り当てました。(すぐ変えるかも)
使ったコマンド一覧
sudo pacman -Qe
sudo pacman -Re ttf-hackgen
sudo yay -S ttf-hackgen
fc-list : family
fc-list : file
fc-cache -vf
fc-match
fc-match mono
パッケージマネージャを使用せずにフォントをインストールする場合は
/usr/share/local/fonts
~/.local/share/fons内を新しいバージョンなら再帰的に読み込んでくれるためそこにセットし
fc-cacheをおこなう
waybarにはstyle.cssで指定することにしました