Mac OS X 10.8とXQuartz 2.7.2を使用しています。 *.ttf
ディレクトリに/Users/<name>/.fonts
という名前のTrueTypeフォントをいくつかダウンロードして配置しました。 XQuartzを実行すると、fonts.dir
を含むいくつかのファイルが作成されます。このファイルには、インストールした各フォントのさまざまなエンコーディングなどのX11フォント名が含まれています。
私の問題は、xterm -fa <NAME>
または.Xresources XTerm*faceName
エントリで使用する正しい名前を常に「見つけ出す」ことができないことです。一部のフォントでは、fonts.dir
ファイルの詳細なX11フォント名にリストされているコアフォント名が機能しますが、他のフォントでは機能しません。
次のワンライナーは、正しいフォント名を見つけるのに非常に役立ちました。
$ fc-list | cut -f2 -d: | sort -u
特に「IPAX0208明朝」のような日本語フォントでは、正しい名前を推測することはできなかったでしょう。もう少しタイピングを気にしない場合は、
$ fc-list | cut -f2 -d: | sort -u | less -r
ページ出力を取得します。
Xfontselを使用して正しい名前を取得できます。
$ xfontsel
興味のあるフォントを選択して、[選択]ボタンをクリックします。フォント名がクリップボードにコピーされます。その名前を使用してxtermを実行します。例えば。:
$ xterm -font -Adobe-helvetica-*-r-normal-*-12-120-*-*-*-*-*-*
「-fa」を使用して私のシステム(linux)で機能させることはできませんが、「-font」は機能します。
不足しているのは、fonts.alias
ファイルのエントリです。
/usr/share/X11/fonts/75dpi/fonts.alias
このファイルが行うことは、インストールされているX Windowフォントの短い名前(「エイリアス」)を提供することです。ファイルにない短い名前を使用しようとすると、xtermの起動時に次のような動作が発生します。
lansdale:~> xterm -xrm \*font:courr12
xterm: cannot load font "courr12"
(xtermは起動し、デフォルトの異なるフォントで実行されます)
X11フォント名が長いため、fonts.alias
ファイルが存在します。たとえば、courr12は次の略称です。
-Adobe-courier-medium-r-normal--12-120-75-75-m-70-iso10646-1
[長い名前は実際には、ダッシュ/ハイフンでつながれた14の異なる編集可能なフィールドです。それらを表示するには、プログラムxfontselを実行します。すべてのフィールドがアスタリスクで表示され、特定の何かに設定されていないことを意味します。]
ファイルの各行は、短い名前(エイリアス)、空白で始まり、次にそれが指す/参照する長い名前です。この方法では、常に長い名前を使用する必要はなく、エイリアスを設定してそれを使用するだけです。ファイルに新しい行を入れるときは、短い名前を決定します。システムにインストールされているフォントファイルが必要なのは、完全なX11名だけです。
1990年代にUnixシステムで最初に歯を切ったとき、私はcourr12に出くわし、後でxtermにそれをフォント(Courier 'Roman'サイズ12)で欲するようになりました。 HP/UXおよびSolarisでは、fonts.alias
ファイルにはすでにcourr12
が含まれているため、"XTerm*font: courr12"
を.Xdefaults
ファイルに追加するだけで、すべてが正常に機能します。
FontBookを使用してフォントをロードすると、xterm -fa
で使用する正しい名前が表示されます。