Etch: Anführungszeichen werden auf Konsole nicht dargestellt

Du kommst mit der Installation nicht voran oder willst noch was nachfragen? Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
ferrugo
Beiträge: 17
Registriert: 23.11.2008 21:53:26
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Berlin

Etch: Anführungszeichen werden auf Konsole nicht dargestellt

Beitrag von ferrugo » 23.11.2008 23:33:38

Hallo allerseits,

ich stehe vor folgendem Problem: Wenn ich auf der Konsole ein Kommando aufrufe, z.B.

Code: Alles auswählen

# chmod
, und die Ausgabe des Kommandos Anführungszeichen bzw. Hochkommata enthält, werden diese nur als viereckiges Kästchen dargestellt.
Bei xterm wird zwar das schließende Anführungszeichen dargestellt, aber das öffnende fehlt.

Ich vermute, dass es eine Frage der eingestellten locales ist. Die Vorgabe nach der Installation von Etch ist de_DE.UTF-8. Wenn ich $LANGUAGE=POSIX setze, erscheinen die Ausgaben der Programme auf englisch mit Hochkommata. Setze ich $LANGUAGE=de_DE, wird die Umgebungsvariable zwar gesetzt, aber an der Ausgabe der Programme ändert sich nichts. Setze ich LC_ALL=de_DE, erscheinen die Ausgaben der Programme auf deutsch und ganz ohne Anführungszeichen oder Kästchen.
Ich habe das auch mal mit der LFS-LiveCD probiert. Mit de_DE.UTF-8 wurden zwar keine Kästchen, aber dafür andere mehr oder weniger unleserliche Zeichen angezeigt. de_DE zeigt dort sogenannte französische Anführungszeichen (>>, <<).
Die LiveCD hat die Version 2.5.1 der Glibc, während Etch 2.3.6 verwendet.

Ich habe im Forum, im Wiki und mit Google gesucht, ohne etwas Brauchbares zu finden - nur die Information dass UTF-8 auf der Konsole oft zickig ist.
Gibt es einen Weg, sich die Ausgaben auf der Konsole unter Etch in deutsch mit Anführungszeichen anzusehen?

Gruß, Martin.

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Etch: Anführungszeichen werden auf Konsole nicht dargestellt

Beitrag von rendegast » 24.11.2008 22:55:16

$LANGUAGE=de_DE
/etc/default/locale

Code: Alles auswählen

LANG=de_DE.UTF-8
('dpkg-reconfigure locales')

/etc/profile

Code: Alles auswählen

...

. /etc/default/locale
export LANG


Bei xterm die Variante lxterm (->uxterm) oder direkt uxterm

Für die "richtige" virtuelle Konsole:
/etc/console-tools/config: SCREEN_FONT=utf8-fähiger_Font

Code: Alles auswählen

file -z /us/share/consolefonts/*  |  grep -i unicode
Test: (google Markus Kuhn)
http://www.cl.cam.ac.uk/~mgk25/ucs/examples/
http://www.w3.org/2001/06/utf-8-test/




-----------------------------------------
Ein "€" (Euro) habe ich aber immer noch nicht auf der Textkonsole,
zwar angezeigt aus der Testdatei, aber nicht als Character für AltGr-E,
liegt wohl noch am keymap :(

Korrektur:
Ich sollte mich an meine eigenen Tips halten,
das falsche Euro lag am Font LatCyrGr-16 aus dem Paket fonty-rg,
mit dem Standardfont lat9w-16 aus console-data klappt es, wie einfach.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

ferrugo
Beiträge: 17
Registriert: 23.11.2008 21:53:26
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Berlin

Re: Etch: Anführungszeichen werden auf Konsole nicht dargestellt

Beitrag von ferrugo » 26.11.2008 18:01:13

Ich gebe mal einen Zwischenbericht:

Danke erstmal für deine Antwort, rendegast. Leider komme ich nicht richtig mit deiner Syntax klar und musste ein wenig raten.
/etc/default/locale

Code: Alles auswählen

LANG=de_DE.UTF-8
('dpkg-reconfigure locales')
LANG=de_DE.UTF-8 ist die Grundeinstellung nach der Installation von Etch und stand bereits in /etc/default/locale.

('dpkg-reconfigure locales') heißt, die locales sollen neu konfiguriert werden. Die Klammer bedeutet vermutlich "bei Bedarf". de_DE.UTF-8 ist die Grundeinstellung und war schon immer vorhanden, sodass eigentlich kein Bedarf besteht. Ich habe es trotzdem probiert. Zu Testzwecken habe ich weitere locales installiert, u.a.

de_DE ISO-8859-1
de_DE@euro ISO-8859-15

Das reconfigure hat funktioniert. Und mit LANG=de_DE in /etc/default/locale bekomme ich auch meine Anführungszeichen auf der Textkonsole und bei xterm. Das ist natürlich kein Unicode und die UTF-Testdatei, deren Link du mir geschickt hast, ist auf der Textkonsole recht unansehnlich. Wenn in /etc/default/locale LANG=de_DE.UTF-8 steht, sieht die Testdatei zwar schon etwas besser aus, aber nicht viel(, naja und die Anführungszeichen fehlen). Im HTML-Browser wird die Testdatei allerdings richtig dargestellt.
/etc/profile

Code: Alles auswählen

...

. /etc/default/locale
export LANG

Das ändert leider überhaupt nichts. In Kombination mit LANG=de_DE.UTF-8 aus /etc/default/locale werden keine Anführungszeichen angezeigt.

/etc/console-tools/config: SCREEN_FONT=utf8-fähiger_Font

Ich habe außer SCREEN_FONT auch SCREEN_FONT_vc2 bis SCREEN_FONT_vc6 auf lat9w-16 gesetzt.

Auch hier ergibt sich keine Verbesserung. Ich habe verschiedene Unicode-Fonts probiert. Die Ausgabe ändert sich zwar, aber statt der Kästchen kommen nun weiß hinterlegte schwarze Fragezeichen. Mit der Testdatei passiert das Gleiche.

Was mich am meisten wundert ist, dass dieser Fehler bei mir nach einer Standardinstallation auftritt und ich noch nirgendwo von vergleichbaren Problemen gelesen habe. Für mich wäre auch interessant, ob das Problem auch bei anderen auftritt, d.h. wenn ihr auf der Konsole z.B. einfach nur chmod aufruft und dann der Hinweis kommt, dass ein Operand fehlt und dass man für weitere Informationen chmod --help aufrufen soll, erscheint dieses chmod --help bei euch in Anführungszeichen, in Kästchen oder ohne alles? Welche locales und consolefonts benutzt ihr dabei?

Ich werde mich ein bisschen in console-tools einlesen. Vielleicht finde ich da eine Lösung.

Gruß, Martin.

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Etch: Anführungszeichen werden auf Konsole nicht dargestellt

Beitrag von rendegast » 26.11.2008 18:46:35

Hallo,
/etc/profile

Code: Alles auswählen

...
. /etc/default/locale
export LANG
das war nur, damit das setting auch direkt nach dem Login gilt.
Diese Login-bash hat bei mir nämlich default/locale nicht verarbeitet.
(kann aber auch an meinem fgetty gelegen haben?)


Hast Du auch console-screen.sh nochmal aufgerufen?
Gegebenenfalls muß sogar neu gestartet werden, bei meinen Versuchen mit mehrmaligem Ausführen der Datei bzw. 'consolechars' zum (Neu)Setzen der SCREEN_FONT habe ich zwar Umschaltungen erhalten, aber nicht unbedingt in gewünschter Weise.




-------------
Eigene Testdatei

Code: Alles auswählen

echo ßäöü$€¢ > lalala
file lalala
cat lalala

-------------

Code: Alles auswählen

$ cat /etc/console-tools/config | grep -v ^#

BLANK_TIME=30

BLANK_DPMS=off

POWERDOWN_TIME=30


echo HALLO--testing-lenny
SCREEN_FONT=""

SCREEN_FONT="lat9w-16"

LEDS="+num"
BLANK_TIME=3
BLANK_DPMS=off
POWERDOWN_TIME=1
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

ferrugo
Beiträge: 17
Registriert: 23.11.2008 21:53:26
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Berlin

Re: Etch: Anführungszeichen werden auf Konsole nicht dargestellt

Beitrag von ferrugo » 06.12.2008 23:18:11

Hallo rendegast,

ich hatte endlich wieder ein bisschen Zeit, mich mit dem Problem zu befassen. Mit der Verarbeitung der /etc/default/locale gab's keine Probleme. Ich habe sicherheitshalber bei jedem Versuch wohl oder übel einen Neustart gemacht.

Meine /etc/console-tools/config sah nach der Installation nicht viel anders aus als deine. Als SCREEN_FONT war allerdings lat0-sun16 eingestellt. das ist zwar auch ein Unicode-Font, aber ich habe auch lat9w-16 ausprobiert, den du verwendest. Das Ergebnis war (wie schon gesagt), dass die Anführungszeichen nicht mehr durch Quadrate ersetzt wurden, sondern durch schwarze Fragezeichen auf weißem Grund.

Dann hatte ich noch Gelegenheit, meine Einstellungen mit einem anderen Etch zu vergleichen. Dort war LANG=de_DE@euro. Das ist dort auch die Grundeinstellung gewesen. (Installiert wurde dort von der CD. Meine Installation lief von einer aktuelleren DVD.) Die Anführungszeichen wurden damit beim anderen Computer zwar richtig dargestellt, aber die Unicode-Testdatei von Markus Kuhn ist auf der Konsole natürlich nicht richtig dargestellt worden. Das wird sie aber auch nicht mit einem Unicode-Font als SCREEN_FONT.

In deiner /etc/console-tools/config habe ich noch entdeckt, dass du Lenny benutzt. Macht das für das Problem einen Unterschied?

Gruß, Martin.

Antworten