PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Linux (SUSE) und UTF-8



smartysmart34
22.10.05, 22:02
Hallo zusammen,

ich habe ein Problem mit Umlauten und manchmal auch Sonderzeichen:
Ich habe in Yast -> System -> Sprache -> Details das "UTF8"-Flag gesetzt. Wenn ich mich via ssh auf mein Debian-System verbinde und dort Aptitude starte, sehe ich keine Umnlaute und das einem Umlaut folgende Zeichen fehlt auch.
Ebenso im Web mit Firefox: Manche Webseiten (wie Linuxforen) haben Umlaute, manche nicht. Da sehe ich dann eine schwarze Raute.
Kopete beschwert sich hin und wieder, daß es beim Verarbeiten einer NAchricht einen Fehler hatte und das ich prüfen soll, ob ich beim Kontakt die Kodierung korrekt eingestellt habe -> Ich finde ums Verderben nicht, wie ich bei einem Kontakt die Kodierung ändern könnte... ?!?
da mich das ein wenig nervt habe ich das o.g. Flag deaktiviert und gespeichert (den Tip habe ich in verschiedenen Foren gefunden). Ergebnis: Alles wie vorher. Konsole auf Debian ohne Umlaute, Websites analog.
Hätte ich meinen Suse-Rechner erstmal durchbooten müssen?
wenn ich "locale -a" ausführe bekomme ich eine ganze LItanei von allen möglichen Codes. An einer fehlenden locale kann es also fast nicht liegen.
Was ich am liebsten möchte:
utf8 bei mir, aber die Möglichkeit, bei Bedarf latin1 bzw. ISO-nnnn fehlerfrei anzeigen zu können. Alternativ würde ich gerne utf8 abschalten, da mir die fehlenden Umlaute auf den Zeiger gehen. Aber wie mache ich das?

Danke und Gruß,
Martin

obzidian
22.10.05, 23:57
Das klingt so als ob deine Debian Maschine nicht mit utf läuft. Daraus ergeben sich zwei Lösungen

1- Wenn du dich per ssh verbindest änder bei deinem Terminal (Kde Terminal Einstellungen--> Kodierung, Gnome Zeichensatz, tty export) den Zeichensatz

2- Wechsel bei Debian auf utf (geheime Seite mit Informationen. Nicht klicken !) (http://www.google.com/linux)

smartysmart34
23.10.05, 00:16
Danke für den Tip, für die Debian-Maschine habe ich mir das bereits überlegt. Das löst allerdings nicht die Probleme mit Kopete und Firefox, wo ich je nach Seite mal Umlaute habe und mal nicht bzw. wo ich je nach Chatpartner immer wieder "Fehler bei der Übersetzung..."Meldungen bekomme...

Hat dazu noch jemand eine Idee?

Da<nke und Gruß,
Martin

traffic
23.10.05, 05:58
Das löst allerdings nicht die Probleme mit Kopete und Firefox, wo ich je nach Seite mal Umlaute habe und mal nicht bzw. wo ich je nach Chatpartner immer wieder "Fehler bei der Übersetzung..."Meldungen bekomme...
Firefox interessiert sich nicht im Geringsten für die Systemeinstellung, sondern zeigt die Webseiten so an, wie der Autor sie abgeliefert hat. Wenn ein Autor seine Webseiten z.B. in CP1252 kodiert und es nicht im HTML- oder HTTP-Header angibt, dann kommt halt Müll raus, den er aber nicht bemerkt, wenn er nur mit dem Internet Explorer testet.

Dagegen kannst Du nicht viel machen, außer es für jede einzelne Webseite, die Du besuchst, unter "Ansicht -> Zeichenkodierung" zu berichtigen oder Dich beim Webmaster zu beschweren. Das hat alles nichts mit der Systemeinstellung zu tun - bei Firefox kommt es nur darauf an, dass die Angabe im HTTP- oder HTML-Header und die tatsächliche Kodierung übereinstimmen, worauf Du keinen Einfluss hast.

Bei Kopete kann es möglicherweise anders sein, das weiß ich nicht so genau. Falls es so sein sollte, starte Kopete einfach über ein Alias oder über ein Skript, welches Kopete statt mit dem Befehl

/opt/kde3/bin/kopete
mit dem Befehl

LC_ALL=de_DE.ISO-8859-1 /opt/kde3/bin/kopete
startet. Ist eigentlich ganz einfach.

smartysmart34
23.10.05, 10:58
Hallo Traffic,

danke für Deine gute Antwort. Kopete ist zwar jetzt noch offen, aber na gut, vielleicht weiß noch wer was...

Eins ist mir unklar: Wie macht es denn der IExplorer? Der kann doch, wenn Header-Info und tatsächliche Kodierung nicht übereinstimmen, auch nur raten, oder? Wieso gibt es dann da keine Probleme?

Edit: Ach so: Wenn sich z.B. die Konsole und Firefox nicht um das Systemencoding kümmern: Wo im System ist das Flag unter Yast2 - System - Sprache - Details - Use utf8-encoding denn dann ausschlaggebend? Was ändert sich im System, wenn ich das setze oder eben nicht?

Danke, Gruß und schönes Wochenende?
Martin

traffic
23.10.05, 13:26
Kopete ist zwar jetzt noch offen, aber na gut, vielleicht weiß noch wer was...
Inwiefern? Was hast Du denn bisher probiert? Starte Kopete doch einfach mal aus der Konsole mit dem Befehl

LC_ALL=de_DE.ISO-8859-1 /opt/kde3/bin/kopete
Wenn das besser geht, dann richte es permanent als Alias ein.

Wie macht es denn der IExplorer? Der kann doch, wenn Header-Info und tatsächliche Kodierung nicht übereinstimmen, auch nur raten, oder? Wieso gibt es dann da keine Probleme?
Der Internet Explorer rät anders. Mozilla rät nur, wenn kein Zeichensatz angegeben ist. Wenn einer angegeben ist, dann verwendet Mozilla diesen, auch wenn das Dokument tatsächlich anders kodiert ist. Der Internet Explorer rät immer.

Der Internet Explorer rät übrigens nicht nur bei Zeichensätzen immer, sondern auch bei MIME-Types. Test:

http://piology.org/ie/mime.txt
http://piology.org/ie/vbscript.txt

Dass das falsch ist, kann man sich leicht ausrechnen, denn wenn es richtig wäre, immer zu raten, dann gäbe es ja auch kein Feld, indem man den Zeichensatz überhaupt angeben kann.

Wo im System ist das Flag unter Yast2 - System - Sprache - Details - Use utf8-encoding denn dann ausschlaggebend? Was ändert sich im System, wenn ich das setze oder eben nicht?
Missverständnis? Natürlich richtet sich die Konsole nach der Systemeinstellung, kein Mensch hat etwas anderes behauptet, und Kopete auch, nur Firefox nicht. Die Systemeinstellung legt halt einen Zeichensatz fest, den jede Anwendung, die sich an die Systemeinstellung halten will, benutzen kann oder auch nicht.

Kopete und diverse Terminals tun das, aber Firefox tut es sinnvollerweise nicht, weil nach offiziellen W3C-Standards jedes HTML-Dokument eine eigene Angabe, zutreffende Angabe über den Zeichensatz enthalten muss.

smartysmart34
24.10.05, 05:04
Hallo Traffic,

vielen Dank, Du hast mir sehr geholfen.

Gruß,
Martin