web-dev-qa-db-ja.com

URXVTにUnicode記号がない

私はフォントとしてDejaVu Sans Monoでurxvtを使用しています:

urxvt.font:     xft:DejaVu Sans Mono

しかし、「⌚」のようなUnicode文字を表示することはできません。

どうして ? urxvtはこれらのシンボルを表示できますか?

ありがとうございました

4
dudas

manual page は、オプションの場所です。

-fnfontlist
使用するフォントを選択します。これは、カンマで区切られたフォント名のリストで、文字のグリフを検索するときに順番にチェックされます。最初のフォントは文字のセルサイズを定義します。他のフォントは小さいかもしれませんが、(一般的に)大きくはありません。 (うまくいけば)妥当なデフォルトのフォントリストが常にそれに追加されます。詳細については、リソースのフォントを参照してください。

およびリソース設定:

fontfontlist
使用するフォントを選択します。これは、カンマで区切られたフォント名のリストで、文字のグリフを検索するときに順番にチェックされます。最初のフォントは文字のセルサイズを定義します。他のフォントは小さいかもしれませんが、(一般的に)大きくはありません。 (うまくいけば)適切なデフォルトのフォントリストが常に追加されます。オプション-fn

各フォントは、オプションの接頭辞"x:"が付いた標準のX11コアフォント(XLFD)名、またはXftフォント(コンパイルxft)のいずれかです。 "xft:"が前に付きます。

@thrigによるコメントがあれば、これを実行できるはずです。

urxvt.font:     xft:DejaVu Sans Mono, xft:Noto Emoji

(それらのフォントがインストールされている場合)。

ただし、Fedora24のパッケージgoogle-noto-emoji-fontsは、urxvtが処理しない混合幅フォントのようであり、次のメッセージが表示されます。

$ urxvt -fn 'xft:DejaVu Sans Mono,xft:Noto Emoji'                               
urxvt: unable to calculate font width for 'Noto Emoji:slant=0:weight=100:pixelsize=19:minspace=True', ignoring.

Font-Awesomeバグレポートrxvt#3681では使用できませんによると、urxvtはprivate useのグリフの幅をチェックしませんエリア(つまり、標準化されていない)。これはすべての絵文字フォントに適用されます。

絵文字だけに関心がある場合、urxvtはそのフォントだけで実行されます(すべてに倍幅のセルを使用します)。

urxvt -fn 'xft:Noto Emoji'

urxvt in the background

4
Thomas Dickey

文字間隔を変更しますか:

  -letsp number
       Compile frills: Amount to adjust the computed character width by to
       control overall letter spacing. Negative values will tighten up the
       letter spacing, positive values will space letters out more. Useful
       to work around odd font metrics; resource letterSpace.

読みやすくするために負の値を使用すると、幅が広すぎる文字は印刷できません。これは、多くのUnicode文字に当てはまります。

1