xterm zeigt keinen Unicode an


8

Ich war noch nie in der Lage, mein Terminal dazu zu bringen, Unicode-Symbole anzuzeigen. Zum Beispiel, bevor ich mein jetziges Betriebssystem hatte, habe ich Strg + A dem griechischen Mu in Vim zugeordnet, und es funktioniert auf anderen Computern, aber nicht auf meinem aktuellen xterm. Hier ist der relevante Abschnitt von meinem .vimrc:

set encoding=utf-8
"map control-a to mu
imap <C-a> <C-k>m*

Außerdem muss ich Sympy-Gleichungen in Python ausgeben, und dies funktioniert auf anderen Computern, aber nicht auf meinem aktuellen xterm. an Stelle von:

$ python
Python 2.7.3 (default, Mar 14 2014, 11:57:14) 
[GCC 4.7.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sympy
>>> x = sympy.symbols('x')
>>> sympy.init_printing()
>>> (sympy.sqrt(x**3/(x+1)), 1)
⎛     _______   ⎞
⎜    ╱    3     ⎟
⎜   ╱    x      ⎟
⎜  ╱   ───── , 1⎟
⎝╲╱    x + 1    ⎠

Ich verstehe das:

>>> (sympy.sqrt(x**3/(x+1)), 1)
n      -------   n
n     n    3     n
n    n    x      n
n   n   ───── , 1n
nnnn    x + 1    n

Tatsächlich scheint es nur das nZeichen zu verwenden, wenn es kein Unicode-Zeichen anzeigen kann.

Ich führe xterm aus einer ~/.xinitrcDatei aus und setze einige Schriftarten und Farben für das Terminal in ~/.Xresources. Hier sind alle relevanten Informationen, die mir einfallen:

$ uname -a
Linux mypcname 3.2.0-4-amd64 #1 SMP Debian 3.2.60-1+deb7u3 x86_64 GNU/Linux
$ xterm -version
XTerm(278)
$ cat ~/.xinitrc 
#!/bin/bash

#update the xterm colors, font size, etc
[[ -f ~/.Xresources ]] && xrdb -merge ~/.Xresources

# run the window manager in the background first
metacity &

# get the window manager process id
wm_pid=$!

# wait a little while for the window manager to load (extend this if the xterm is not being properly maximised)
sleep 2

# run the xterm in fullscreen
#xterm +u8 -js -fullscreen &
xterm -en en_AU.UTF-8 -js -fullscreen &

# do not let the window manager become a zombie
wait $wm_pid

# this would run xterm first, then the window manager. doesn't maximise properly the first time startx is run
#xterm -fullscreen &
#exec mutter

$ cat ~/.Xresources 
! see man xterm under the resources heading for explanations
! run `xrdb -merge ~/.Xresources` after altering this file
! run `xrdb -query -all` to see the current settings

xterm.vt100.faceName: Terminus
xterm.vt100.faceSize: 14
! do not display bold fonts in bold
xterm.vt100.AllowBoldFonts: false
! display bold fonts in a different color to make them stand out
xterm.vt100.colorBDMode: true
! use green as the bold color (same as in ~/.bashrc)
xterm.vt100.colorBD: #98E34D

! cols x lines ... update with values from $(echo $COLUMNS) and $(echo $LINES)
xterm.vt100.geometry: 126x52

! dark green foreground (same as in ~/.bashrc)
*foreground: #4E9A06
! black background
*background: #000000

! scroll quickly
xterm*fastScroll: true

! enable utf-8 encoding
xterm*locale: true
xterm*utf8: 1

! flash the current line instead of making the bell sound
*visualBell: true
*visualBellLine: true

! black
*color0: #2E3436
! darkred
*color1: #CC0000
! dark green
*color2: #4E9A06
! brown
*color3: #C4A000
! darkblue
*color4: #3465A4
! darkmagenta
*color5: #75507B
! darkcyan
*color6: #06989A
! lightgrey
*color7: #D3D7CF
! darkgrey
*color8: #555753
! red
*color9: #EF2929
! green
*colorA: #8AE234
! yellow
*colorB: #FCE94F
! blue
*colorC: #729FCF
! magenta
*colorD: #AD7FA8
! cyan
*colorE: #34E2E2
! white
*colorF: #EEEEEC

$ tail -10 .bashrc
PATH=/usr/local/bin:/usr/bin:/bin:/sbin

export LC_ALL=en_AU.UTF-8
export LANG=en_AU.UTF-8
export LANGUAGE=en_AU.UTF-8

# final logon actions:

# go straight to x on login. only do this for tty1 so that we can still use the other tty consoles without starting x. also only do this when there is not already a display, otherwise the xterm will try and do this after x starts aswell
[[ -z $DISPLAY ]] && [[ $(tty) = /dev/tty1 ]] && startx

$ locale
LANG=en_AU.UTF-8
LANGUAGE=en_AU.UTF-8
LC_CTYPE="en_AU.UTF-8"
LC_NUMERIC="en_AU.UTF-8"
LC_TIME="en_AU.UTF-8"
LC_COLLATE="en_AU.UTF-8"
LC_MONETARY="en_AU.UTF-8"
LC_MESSAGES="en_AU.UTF-8"
LC_PAPER="en_AU.UTF-8"
LC_NAME="en_AU.UTF-8"
LC_ADDRESS="en_AU.UTF-8"
LC_TELEPHONE="en_AU.UTF-8"
LC_MEASUREMENT="en_AU.UTF-8"
LC_IDENTIFICATION="en_AU.UTF-8"
LC_ALL=en_AU.UTF-8

$ printenv XTERM_LOCALE
en_AU.UTF-8

$ xrdb -query -all
*background:    #000000
*color0:    #2E3436
*color1:    #CC0000
*color2:    #4E9A06
*color3:    #C4A000
*color4:    #3465A4
*color5:    #75507B
*color6:    #06989A
*color7:    #D3D7CF
*color8:    #555753
*color9:    #EF2929
*colorA:    #8AE234
*colorB:    #FCE94F
*colorC:    #729FCF
*colorD:    #AD7FA8
*colorE:    #34E2E2
*colorF:    #EEEEEC
*foreground:    #4E9A06
*visualBell:    true
*visualBellLine:    true
xterm*fastScroll:   true
xterm*locale:   true
xterm*utf8: 1
xterm.vt100.AllowBoldFonts: false
xterm.vt100.colorBD:    #98E34D
xterm.vt100.colorBDMode:    true
xterm.vt100.faceName:   Terminus
xterm.vt100.faceSize:   14
xterm.vt100.geometry:   126x52

Wie kann ich utf-8 dazu bringen, griechische Symbole in vim und Gleichungen in anzuzeigen sympy?


zusätzliche Informationen angefordert

$ echo $TERM
xterm
$ appres XTerm
*form.Thickness:    0
*tekMenu*tekreset*Label:    RESET
*tekMenu*tektext2*Label:    #2 Size Characters
*tekMenu*tekhide*Label: Hide Tek Window
*tekMenu*tekcopy*Label: COPY
*tekMenu*tektext3*Label:    #3 Size Characters
*tekMenu*vtshow*Label:  Show VT Window
*tekMenu*tektextsmall*Label:    Small Characters
*tekMenu*vtmode*Label:  Switch to VT Mode
*tekMenu*tektextlarge*Label:    Large Characters
*tekMenu*tekpage*Label: PAGE
*tekMenu.Label: Tek Options
*mainMenu*redraw*Label: Redraw Window
*mainMenu*sunKeyboard*Label:    VT220 Keyboard
*mainMenu*terminate*Label:  Send TERM Signal
*mainMenu*backarrow key*Label:  Backarrow Key (BS/DEL)
*mainMenu*logging*Label:    Log to File
*mainMenu*hpFunctionKeys*Label: HP Function-Keys
*mainMenu*kill*Label:   Send KILL Signal
*mainMenu*num-lock*Label:   Alt/NumLock Modifiers
*mainMenu*print-immediate*Label:    Print-All Immediately
*mainMenu*scoFunctionKeys*Label:    SCO Function-Keys
*mainMenu*quit*Label:   Quit
*mainMenu*alt-esc*Label:    Alt Sends Escape
*mainMenu*print-on-error*Label: Print-All on Error
*mainMenu*tcapFunctionKeys*Label:   Termcap Function-Keys
*mainMenu*meta-esc*Label:   Meta Sends Escape
*mainMenu*toolbar*Label:    Toolbar
*mainMenu*print*Label:  Print Window
*mainMenu*suspend*Label:    Send STOP Signal
*mainMenu*delete-is-del*Label:  Delete is DEL
*mainMenu*print-redir*Label:    Redirect to Printer
*mainMenu*fullscreen*Label: Full Screen
*mainMenu*continue*Label:   Send CONT Signal
*mainMenu*oldFunctionKeys*Label:    Old Function-Keys
*mainMenu*securekbd*Label:  Secure Keyboard
*mainMenu*interrupt*Label:  Send INT Signal
*mainMenu*8-bit control*Label:  8-Bit Controls
*mainMenu*allowsends*Label: Allow SendEvents
*mainMenu*sunFunctionKeys*Label:    Sun Function-Keys
*mainMenu*hangup*Label: Send HUP Signal
*mainMenu.Label:    Main Options
*VT100.utf8Fonts.font4: -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso10646-1
*VT100.utf8Fonts.font2: -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso10646-1
*VT100.utf8Fonts.font6: -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso10646-1
*VT100.utf8Fonts.font5: -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso10646-1
*VT100.utf8Fonts.font3: -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso10646-1
*VT100.utf8Fonts.font:  -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso10646-1
*VT100.font4:   7x13
*VT100.font2:   5x7
*VT100.font6:   10x20
*VT100.font5:   9x15
*VT100.font3:   6x10
*VT100.font1:   nil2
*vtMenu*selectToClipboard*Label:    Select to Clipboard
*vtMenu*reversewrap*Label:  Enable Reverse Wraparound
*vtMenu*softreset*Label:    Do Soft Reset
*vtMenu*cursesemul*Label:   Enable Curses Emulation
*vtMenu*autolinefeed*Label: Enable Auto Linefeed
*vtMenu*hardreset*Label:    Do Full Reset
*vtMenu*visualbell*Label:   Enable Visual Bell
*vtMenu*appcursor*Label:    Enable Application Cursor Keys
*vtMenu*clearsavedlines*Label:  Reset and Clear Saved Lines
*vtMenu*bellIsUrgent*Label: Enable Bell Urgency
*vtMenu*appkeypad*Label:    Enable Application Keypad
*vtMenu*tekshow*Label:  Show Tek Window
*vtMenu*poponbell*Label:    Enable Pop on Bell
*vtMenu*scrollbar*Label:    Enable Scrollbar
*vtMenu*scrollkey*Label:    Scroll to Bottom on Key Press
*vtMenu*tekmode*Label:  Switch to Tek Mode
*vtMenu*scrollttyoutput*Label:  Scroll to Bottom on Tty Output
*vtMenu*jumpscroll*Label:   Enable Jump Scroll
*vtMenu*cursorblink*Label:  Enable Blinking Cursor
*vtMenu*vthide*Label:   Hide VT Window
*vtMenu*allow132*Label: Allow 80/132 Column Switching
*vtMenu*reversevideo*Label: Enable Reverse Video
*vtMenu*titeInhibit*Label:  Enable Alternate Screen Switching
*vtMenu*altscreen*Label:    Show Alternate Screen
*vtMenu*keepSelection*Label:    Keep Selection
*vtMenu*autowrap*Label: Enable Auto Wraparound
*vtMenu*activeicon*Label:   Enable Active Icon
*vtMenu.Label:  VT Options
*SimpleMenu*menuLabel.font: -adobe-helvetica-bold-r-normal--*-120-*-*-*-*-iso8859-*
*SimpleMenu*menuLabel.vertSpace:    100
*SimpleMenu*Sme.height: 16
*SimpleMenu*BackingStore:   NotUseful
*SimpleMenu*HorizontalMargins:  16
*SimpleMenu*Cursor: left_ptr
*SimpleMenu*borderWidth:    2
*menubar.borderWidth:   0
*tek4014*fontLarge: 9x15
*tek4014*font2: 8x13
*tek4014*font3: 6x13
*tek4014*fontSmall: 6x10
*MenuButton*borderWidth:    0
*fontMenu*render-font*Label:    TrueType Fonts
*fontMenu*fontdefault*Label:    Default
*fontMenu*font6*Label:  Huge
*fontMenu*allow-window-ops*Label:   Allow Window Ops
*fontMenu*utf8-mode*Label:  UTF-8 Encoding
*fontMenu*font1*Label:  Unreadable
*fontMenu*fontescape*Label: Escape Sequence
*fontMenu*utf8-fonts*Label: UTF-8 Fonts
*fontMenu*fontsel*Label:    Selection
*fontMenu*allow-bold-fonts*Label:   Bold Fonts
*fontMenu*utf8-title*Label: UTF-8 Titles
*fontMenu*font-linedrawing*Label:   Line-Drawing Characters
*fontMenu*font2*Label:  Tiny
*fontMenu*allow-color-ops*Label:    Allow Color Ops
*fontMenu*font-doublesize*Label:    Doublesized Characters
*fontMenu*font3*Label:  Small
*fontMenu*allow-font-ops*Label: Allow Font Ops
*fontMenu*font-loadable*Label:  VT220 Soft Fonts
*fontMenu*font4*Label:  Medium
*fontMenu*allow-tcap-ops*Label: Allow Termcap Ops
*fontMenu*font-packed*Label:    Packed Font
*fontMenu*font5*Label:  Large
*fontMenu*allow-title-ops*Label:    Allow Title Ops
*fontMenu.Label:    VT Fonts
*colorD:    #AD7FA8
*color5:    #75507B
*backarrowKeyIsErase:   true
*colorE:    #34E2E2
*color6:    #06989A
*ptyInitialErase:   true
*colorF:    #EEEEEC
*background:    #000000
*color7:    #D3D7CF
*saveLines: 1024
*color8:    #555753
*color0:    #2E3436
*foreground:    #4E9A06
*IconFont:  nil2
*color9:    #EF2929
*color1:    #CC0000
*visualBell:    true
*colorA:    #8AE234
*color2:    #4E9A06
*visualBellLine:    true
*colorB:    #FCE94F
*color3:    #C4A000
*colorC:    #729FCF
*color4:    #3465A4
$ xterm -u8 -fa "DejaVu Sans Mono"
# the following is typed in the resulting terminal:
$ echo -e "\xE2\x98\xA0"
n
# however when i copy the result from `echo -e "\xE2\x98\xA0"`
# into my browser, i get this: ☠ (a skull) but it does not show
# up as a skull in my xterm

$ lsof -p $PPID | grep fonts
xterm   5990 me  mem    REG              254,1     4971 13501810 /usr/share/fonts/X11/misc/ter-u18b_iso-8859-1.pcf.gz
xterm   5990 me  mem    REG              254,1     4897 13505403 /usr/share/fonts/X11/misc/ter-u18n_iso-8859-1.pcf.gz

Ich lief auch, $ fc-listaber die Ausgabe war zu groß, um in diese Frage einzufügen. also habe ich es hier gestellt

was es in meinem Browser anzeigt:

/usr/share/fonts/truetype/freefont/FreeSansBold.ttf: FreeSans:style=Bold,получерен,negreta,tučné,fed,Fett,Έντονα,Negrita,Lihavoitu,Gras,Félkövér,Grassetto,Vet,Halvfet,Pogrubiony,Negrito,gros,Полужирный,Fet,Kalın,huruf tebal,жирний,Krepko,treknraksts,pusjuodis,đậm,Lodia,धृष्ट

Was ich in meinem Terminal sehe:

/usr/share/fonts/truetype/freefont/FreeSansBold.ttf: FreeSans:style=Bold,nnnnnnnnn,negreta,tunné,fed,Fett,nnnnnn,Negrita,Lihavoitu,Gras,Félkövér,Grassetto,Vet,Halvfet,Pogrubiony,Negrito,gros,nnnnnnnnnn,Fet,Kalın,huruf tebal,nnnnnn,Krepko,treknraksts,pusjuodis,nậm,Lodia,nnn

Interessanterweise tauchen einige "Sonderzeichen" in meinem Terminal auf, aber die meisten werden von ersetzt n. Sie können in der vorherigen Ausgabe sehen, dass keines von получеренangezeigt werden kann, aber das endgültige Zeichen von tučnékann angezeigt werden (während die Mitte čnicht kann - es wird ersetzt durch n)


Laut den Kommentaren von @ apaul scheint xterm nicht die richtige Schriftart zu laden. Versuchen Sie, eine Dummy-Klasse festzulegen, damit die xterm-Ressourcen nicht geladen werden:

$ xterm -class Foo -name foo -u8 -fa "DejaVu Sans Mono:style=Book"
$ # the following commands are all executed in the resulting terminal:
$ echo -e "\xE2\x98\xA0"
☠
$ # the above skull actually shows up now. and so does the unicode
$ # output from sympy and also vi can display greek symbols now :)

Alles, was bleibt, ist herauszufinden, warum xterm die Schriftart nicht mit einstellen kann ~/.Xresoureces, und dies zum Laufen zu bringen. Es scheint, als müsste etwas die Schriftarteinstellungen überschreiben.

Eigentlich habe ich nur daran gedacht, den obigen Befehl mit der Terminus-Schriftart zu versuchen, und es scheint, dass dies das Problem ist:

$ xterm -class Foo -name foo -u8 -fa "Terminus"
$ # the following commands are all executed in the resulting terminal:
$ echo -e "\xE2\x98\xA0"
n

Vielleicht ist der Terminus nicht richtig installiert? oder wird auf etwas anderes abgebildet. Wie könnte ich das herausfinden?


2
xterm unterstützt nicht voll UTF-8 (AFAIK), versuchen Sie, uxterm auszuführen, aber ich würde empfehlen, ein anderes Terminal wie urxvt, termite oder st
zer0rest

rxvt-
unicode

1
@ Mulllhausen Ich bestätige, dass es funktionieren sollte. Ich benutze xterm seit Jahren und kann je nach Schriftart so ziemlich alles anzeigen. Terminus kann Ihr Beispiel anzeigen. Ich benutze -fa "DejaVu Sans Mono:size=11:antialias=true"Allerdings verstehe ich Ihre -jsund -fullscreenOptionen nicht. Meine Version von xterm versteht sie nicht. Meine xterm -versionAusgaben X.Org 6.8.99.903(253).
Apaul

3
@mulllhausen Ok, da copy'n'paste funktioniert, bedeutet das, dass xterm Unicode verarbeiten kann. Es könnte ein Schriftproblem sein. Sind Sie sicher, dass xterm "DejaVu Sans Mono" verwendet? Sie können dies überprüfen, wenn Sie in Ihrem xterm ausgeführt werden, lsof -p $PPID | grep fontsund die Liste der Schriftarten überprüfen, die von xterm mit angezeigt werden können fc-list.
Apaul

1
@ Mulllhausen Thx. Wie Sie sehen, lädt xterm aus irgendeinem Grund nicht die richtige Schriftart. Es lädt eine ISO-8859-1 (die "é" enthält, deshalb können Sie sie sehen). Ehrlich gesagt weiß ich nicht warum. Kannst du rennen xterm -class Foo -name foo -u8 -fa "DejaVu Sans Mono:style=Book"? (Hier setzen wir eine Dummy-Klasse und einen Namen, damit die XTerm*Ressourcen nicht geladen werden.)
Apaul

Antworten:


7

Schreiben im Jahr 2016 über den xterm-Patch Nr. 278 (veröffentlicht im Jahr 2012):

xterm verwendet eine einzelne Schriftart anstelle von Schriftarten , die von mehreren anderen Terminals unterstützt werden. Die pseudo-grafischen Zeichen in diesem (von xterm eingefügt):

⎛     ⎽⎽⎽⎽⎽⎽⎽   ⎞
⎜    ╱    3     ⎟
⎜   ╱    x      ⎟
⎜  ╱   ───── , 1⎟
⎝╲╱    x + 1    ⎠

werden nicht durch die hier angegebene TypeType-Schriftart bereitgestellt:

xterm.vt100.faceName: Terminus
xterm.vt100.faceSize: 14

Andere Terminals, vorausgesetzt, diese Schriftart würde diese Zeichen von einer anderen Schriftart liefern .

Der Weg, um xterm zum Laufen zu bringen, ist

  • Geben Sie eine Schriftart an, die alle benötigten Zeichen abdeckt
  • Sagen Sie ihm, er soll die UTF-8-Codierung verwenden.

Letzteres wird für die meisten Benutzer durch die Standardeinstellung der localeRessource behoben: xterm verwendet (normalerweise) die UTF-8-Codierung. Das Standardverhalten ist jedoch VT100-kompatibel, daher werden ISO-8859-1-kompatible Schriftarten verwendet.

  • Terminus verwendet mehr Glyphen als diese, deckt jedoch bei weitem nicht alle Pseudografiken in Unicode ab.
  • Diejenigen, die als angezeigt werden, nsind U + 239B, U + 239C, U + 239D, U + 239E, U + 23A0.
  • Die Version von Terminus in Debian 7 (und Debian-Tests) hat weniger als 256 Glyphen und wird zufällig nwie in der Frage beschrieben angezeigt.

Dies geschieht, weil (obwohl xterm weiß, dass die Glyphen fehlen), die Zeichenfolge mit der Schriftart gedruckt wurde, vorausgesetzt, dass (wie bei den meisten anderen Schriftarten) fehlende Einträge als Leerzeichen angezeigt werden . In diesem Fall scheint die Freetype - Bibliothek zu Abbilden dass Terminus unterstützt die niederwertige Byte der Unicode - Werte in den Bereich. Das fällt zufällig in einen Bereich, in dem die Schriftart angezeigt wird n(für "kein solches Zeichen"):

Geben Sie hier die Bildbeschreibung ein

Bei der schnellen Problemumgehung wird das uxtermSkript verwendet, das eine andere Schriftart auswählt und sicherstellt, dass die UTF-8-Codierung verwendet wird.

Weiterführende Literatur:

Terminus Font ist eine saubere Bitmap-Schriftart mit fester Breite, die für lange Arbeiten (8 und mehr Stunden pro Tag) mit Computern entwickelt wurde. Version 4.40 enthält 1241 Zeichen, deckt etwa 120 Sprachsätze ab und unterstützt ISO8859-1 / 2/5/7/9/13/15/16, Paratyp-PT154 / PT254, KOI8-R / U / E / F, Esperanto, viele IBM-, Windows- und Macintosh-Codepages sowie die pseudografischen Zeichen IBM VGA, vt100 und xterm.

In dem obigen Bericht ging es um den xterm- Patch Nr. 278, der 2016 vier Jahre alt war. Die Entwicklung von xterm ist noch nicht abgeschlossen. Ab Patch Nr. 338 (Ende 2018) werden TrueType-Schriftarten unterstützt. Hier ist ein Screenshot mit den Ressourceneinstellungen des OP aus dem xterm- Patch Nr. 342 (Nr. 343 wird wahrscheinlich "bald" veröffentlicht):

Screenshot von xterm # 342

Wenn -report-fontsich die Option verwende, sehe ich, dass diese Schriftdateien geladen wurden (wobei Fett / Kursiv als "gleich" wie normal behandelt wird und eine zweite Schriftart für die Sonderzeichen verwendet wird):

    file=/usr/share/fonts/X11/misc/ter-u18n\_iso-8859-1.pcf.gz              
    file=/usr/share/fonts/X11/misc/ter-u18b\_iso-8859-1.pcf.gz              
    file=/usr/share/fonts/X11/misc/ter-u18n\_iso-8859-1.pcf.gz              
    file=/usr/share/fonts/truetype/dejavu/DejaVuSansMono.ttf

Die tatsächliche Anzahl der Schriftarten hängt davon ab, was Sie tun möchten. Beim Testen des vorhandenen Bereichs von Unicode-Werten werden möglicherweise einige Dutzend Schriftarten verwendet.


Haben Sie einen Plan, andere Schriftarten bei fehlenden Zeichen in xterm durch Fallback zu unterstützen?
Stéphane Chazelas

Ich habe wenig Round-Tuits :-( Schriftsätze wären schön, aber es dauert ein paar Monate ...
Thomas Dickey

Ein paar Monate scheinen immer noch eine gute Schätzung zu sein (ich bin ungefähr 2/3 durch).
Thomas Dickey

5

Lösungen aus den Kommentaren:

  • uxterm
  • CtrlRechtsklick (Kontextmenü) und UTF-8-Codierung.
  • xterm -u8
  • X-Ressourcen: Verwenden Sie eine Schriftartspezifikation mit Zeichensatz und zweiten Feldern auf-iso10646-1

Beispielsweise können Sie für xterm(X-Klasse Xterm) und die Terminus-Schriftart ~ / .Xresources hinzufügen

XTerm*font: -*-terminus-medium-r-normal--18-*-*-*-*-*-iso10646-1

Informationen zu den auf Ihrem System installierten Schriftarten und deren Schriftarten finden Sie unter /usr/share/fonts/*/*.dirDateien. ~/.XresourcesLaden Sie sie nach der Bearbeitung mit xrdb -merge ~/.Xresources.


2

Leider konnte auch ich die Unicode-Unterstützung nicht richtig konfigurieren xterm. Als Problemumgehung habe ich schließlich die Installation installiert rxvt, die von rpmforge in EL-Distributionen verfügbar ist. Es gibt auch eine Unicode-256-Farben- Version des Programms, die für mich hervorragend funktioniert. Hier ist die Beschreibung:

Name        : rxvt
Arch        : x86_64
Epoch       : 18
Version     : 2.7.10
Release     : 2.el7.rf
Size        : 326 k
Repo        : rpmforge
Summary     : Color VT102 terminal emulator for the X Window System
URL         : http://www.rxvt.org/
License     : GPL
Description : Rxvt is a color VT102 terminal emulator for the X Window System. Rxvt
            : is intended to be an xterm replacement for users who don't need the
            : more esoteric features of xterm, like Tektronix 4014 emulation,
            : session logging and toolkit style configurability. Since it does not
            : support those features, rxvt uses much less swap space than xterm
            : uses. This is a significant advantage on a machine which is serving a
            : large number of X sessions.

ArchWiki bietet wie immer nützliche Informationen zu Konfiguration und Anwendungsfällen.


1
Ich benutze jetzt rxvt-unicodeauch
Mulllhausen

ähm ... also war meine Antwort eine praktikable Lösung / Problemumgehung?
ILMostro_7

1
Ich denke schon. Ich würde immer noch gerne wissen, ob es eine Möglichkeit gibt, xterm zu reparieren
mulllhausen

0

Was ist mit der Verwendung von TrueType-Schriftarten wie unten? Ich kann -fn *-*-...mit xterm keine Standardoption erhalten , aber das funktioniert perfekt.

xterm -fa 'Inconsolata' -fs 12

Inconsolata-Schriftarten können hier heruntergeladen werden

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.