Unicode 補足多言語平面 (平面 1) xterm の文字形状

Unicode 補足多言語平面 (平面 1) xterm の文字形状

xtermにUnicode補足多言語平面(平面1)文字を表示しようとしています。これらの文字形状は U+010000..U+01FFFF(https://unifoundry.com/pub/unifont/unifont-15.0.01/unifont_plane1-15.0.01.bmp)。

フォントはunifont-15.0.01.hexとunifont_upper-15.0.01.hexのマージバージョンで、bdfに変換され、私の.Xresourcesファイルを介してロードされます。

*locale: true
*ut8: true
xterm*font: -*-merged-*-*-*-16-*

平面 0 (U+0000..U+FFFF) 文字の外観が機能します。

この投稿に似たロケールの問題かもしれないと思います。xtermはubuntu 18.04で8ビット文字を表示できません。

私は試しましたがLANG=en_US.UTF-8成功LANG=en_USしませんでした。

編集:LANG=en_US.UTF-8Unicode補足多言語平面(平面1)を設定すると、xtermの文字の外観が「奇妙な四角形」として表示されます。 en-US ロケールで xterm を起動すると、LC_ALL=en_US LANG=en-US xtermフラット 1 文字が表示されないか、誤ってエンコードされます。

別のロケールを使用する必要がありますか?それでは、どれが、どのように?また、「unifont_upper」をマージするのではなく、代替アイテムとして定義する方が良いですか?

ベストアンサー1

ビットマップフォントはXライブラリインタフェースを使用します。XDrawString16(望むよりソースコード)は、名前が示すように、16ビットフォントインデックスに制限されています。

可能XmbDrawStringこの制限を超えることが可能です(ただし、これはおおよそのマンページでは手がかりを提供しないので、ソースコードを調べると確認できます)。ご覧のとおり、これは単なる交換ではありません。この議論

行きたいなら骨形態発生タンパク質、TrueTypeフォントを使用する必要があります。

おすすめ記事