Wie finde ich die geeignete Schriftart zum Rendern von Unicode-Codepoints?
gnome-terminal
feststellen, dass Zeichen wie «🉃⼼😻🕲🝤» mit Schriftarten wie Symbola gerendert werden können und nicht mit meiner Terminal-Schriftart oder dem Codepoint-in-Square-Fallback (�). Wie ?
Akzeptierte Antwort:
Fontconfig verwenden,
> fc-list ':charset=<hex_code1> <hex_code2>'
z. B.
> fc-list ':charset=2713 2717'
zeigt alle Schriftdateinamen an, die ✓ und ✗ enthalten.
Um den dem Zeichen entsprechenden Codepunkt zu erhalten, verwenden Sie (zum Beispiel)
> printf "%x" '✓
2713>
Dies verwendet ein etwas obskures Feature des POSIX printf
Dienstprogramm:
Wenn das führende Zeichen ein einfaches oder doppeltes Anführungszeichen ist, muss der Wert der numerische Wert im zugrunde liegenden codierten Zeichensatz des Zeichens sein, das auf das einfache oder doppelte Anführungszeichen folgt.
Zusammen genommen,
> printf '%x' '✓ | xargs -I{} fc-list ":charset={}"
Dies verwendet die xargs
-I
Flag zum Ersetzen von {}
mit Namen aus stdin
. Das läuft effektiv auf Folgendes hinaus:
> fc-list ":charset=2713"