手元のGentooでTwitterなどのページを開いていると、日本語フォントと中国語フォントが混ざる問題が発生。調べたところ、fontconfigのフォント優先度周りの問題のようだ。さらに調べていくと、ちょうどBugzillaに関連する報告を見つけた。
65-nonlatin should be updated for CJK fonts
せっかくだからこれに乗っかって日本語フォントの優先順位を見直す予定。ただ、ドラスティックに変更すると全ディストリビューションに影響する部分でもあるので*1、できるだけ現状維持の方向で調整中。
serif/sans-serif/monospaceにおいて、日本語フォントは次のような順序で提案予定。もっと良い案があれば教えてください。
serif(プロポーショナル明朝相当)
- MS PMincho(MS P明朝)
- IPAMonaPMincho(IPAモナー P明朝 IPAモナーフォント)
- IPAPMincho(IPA P明朝 IPAフォント)
- Sazanami Mincho(さざなみ明朝 さざなみフォント)
- Kochi Mincho(東風明朝 東風フォント代用品)
プロプライエタリをトップに持ってきてるのは今回報告のプロプライエタリを上位に持ってくるポリシーに合わせて。個人的には取っ払いたいが、ぐっと抑える。
IPAフォントよりもIPAモナーフォントが前なのは、今のfontconfigの順序がこの順番だから。
さざなみと東風はプロポーショナルではないが、IPAモナーフォント、IPAフォントがインストールされていなかった場合を考えて予防策。
sans-serif(プロポーショナルゴシック相当)
- MS PGothic(MS Pゴシック)
- UmePlus P Gothic(Ume Plusフォント)
- VL PGothic(VL Pゴシック VLゴシック)
- IPAMonaPGothic(IPAモナー Pゴシック IPAモナーフォント)
- IPAPGothic(IPA Pゴシック IPAフォント)
- Sazanami Gothic(さざなみゴシック さざなみフォント)
- Kochi Gothic(東風ゴシック 東風フォント代用品)
UmePlusフォントを一番上に持ってきたは理由は、
- 現在の65-nonlatin.confに含まれていること
- Mandrivaの標準フォントとして採用されていること
- UmePlusフォントがデフォルトでインストールされるディストリビューションはおそらく少ないこと
ちなみにGentooにはUmePlusフォントがまだない。
monospace(等幅フォント相当)
- MS Gothic(MS ゴシック)
- UmePlus Gothic(Ume Plusフォント)
- VL Gothic(VL ゴシック VLゴシック)
- IPAMonaGothic(IPAモナー ゴシック IPAモナーフォント)
- IPAGothic(IPA ゴシック IPAフォント)
- Sazanami Gothic(さざなみゴシック さざなみフォント)
- Kochi Gothic(東風ゴシック 東風フォント代用品)
歴史的観点からmonospaceにはゴシックを採用。個人的には明朝の方が好きだけど。
調査中
- 40-nonlatin.confと65-nonlatin.confの、使い分け方がよくわからない。
- 上記のように順番を入れ替えても日本語フォントと中国語フォントが混ざる問題は解決しない。
- 別々の設定ファイルにして優先度を定義するのが良いのかも?
他にもフリーなフォントはいっぱいあるよ!なんで他のフォントは追加しないの?
基本的に既存のエントリから増減させてません。順番を入れ替えたのと、serif/sans-serifではプロポーショナル優先、monospaceは等幅優先に変えただけです。
*1:実際は各ディストリビューションで独自に手を入れている場合が多く、影響はあまりない模様。