Come posso far funzionare i simboli unicode e i caratteri TrueType in xterm / uxterm?


12

Vorrei usare un font TrueType in xterm / uxterm (versione 278) ma ho problemi con i simboli unicode (ad esempio, viene visualizzato bene, quindi suppongo che non sia un utf8 disabilitato o un problema di localizzazione):

$ echo -e "\xE2\x98\xA0"

mi dà un quadrato invece di ☠ con la seguente configurazione:

UXTerm*faceName: Liberation Mono
UXTerm*faceSize: 9
XTerm*faceName: Liberation Mono
XTerm*faceSize: 9

Quando disabilito i caratteri TrueType utilizzando il menu di scelta rapida ctrl, il simbolo viene visualizzato correttamente utilizzando i caratteri predefiniti, il che non è affatto piacevole. Ho provato uxrvt e ho avuto lo stesso problema quando non ho abbastanza spazio tra le lettere, ma funziona bene quando lo aumento. Tuttavia, uxrvt mi ha dato molti altri problemi, proprio come tutti gli altri emulatori di terminali che ho provato. Qualcuno ha un'idea?


Hai qualche motivo per credere che quel glifo esista in Liberation Mono?
HalosGhost

L'ho provato in LibreOffice Writer ed è lì. Funziona anche in uxrvt dopo aver aumentato la spaziatura delle lettere. Il mio problema non è specifico di questo tipo di carattere, non sono riuscito a trovare alcun carattere TrueType in cui non ho questo problema.
Sebastian Blask,

Strano. Ho provato a riprodurre il problema di LibreOffice Writer e ha funzionato. Forse LO-Writer passa a un altro carattere, se un determinato Unicode non è supportato da quello attuale? Inoltre, come può aumentare la spaziatura tra le lettere risultante in Liberation Mono che supporta improvvisamente un carattere Unicode non supportato? Come si aumenta la spaziatura delle lettere?
polimero

Rispondi alla mia prima domanda sopra: vinc17 ha scoperto che LibreOffice sta cambiando silenziosamente il carattere!
polimero

1
In rxvt-unicode, puoi vedere a quale font appartiene un glifo facendo clic con il tasto sinistro del mouse mentre tieni il controllo e lo spostamento. I dettagli dovrebbero apparire nella parte inferiore sinistra della finestra del terminale. Inoltre, per controllare un font ttf, controlla l'editor dei font fontforge. È incredibile quanto possa essere complicato un font.
etherfish

Risposte:


8

Il carattere di Liberazione non sembra avere questo simbolo. Ma l'uso XTerm*faceName: DejaVu Sans Mono(che è anche un tipo di carattere TrueType) consente di visualizzare ☠.

MODIFICA: Non usare LibreOffice o OpenOffice per determinare se un glifo è supportato in un font, in quanto ricade silenziosamente su un altro font: OpenOffice bug 45128 .


wow bella scoperta. Sembra che il mio sospetto fosse giusto haha: D! Upvote!
polimero

Ero abbastanza sicuro che Deja Vufosse nell'elenco dei caratteri che ho provato, ma apparentemente no. Un po 'imbarazzante che sia stato così semplice: -S Lasciami provare sul mio computer di lavoro domani ...
Sebastian Blask,

5

vinc17 è corretto:

Il glifo ☠, chiamato anche SKULL AND CROSSBONES, non è supportato dal carattere Liberation Mono come puoi vedere qui e qui .

Devi passare a un carattere che copra questo unicode (intervallo).

I caratteri che supportano questo particolare glifo ☠ sono elencati qui .

Per trovare il nome e varie altre informazioni di un carattere unicode tramite il testo, usa questo strumento .

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.