Hallo,
Kannst du beweisen, dass Opera die Auswahl ignoriert? Also nicht nur anhand dieser Anzeige vermuten, dass Opera die eingehenden Bytes direkt als Windows-1252 interpretiert, sondern dafür auch Belege bringen?
Speichere mal ein Euro-Zeichen Windows-1252-kodiert, stelle Opera auf Latin-1 und öffne das Dokument. Das Euro-Zeichen wird angezeigt.
Die Seiten mit ISO-8859-1 werden intern konvertiert zu Windows-1252 und dann dargestellt. Also vollkommen korrekt im Sinne von ISO-8859-1.
Äh - häh? ;)
Nix korrekt im Sinne von ISO-8859-1. In ISO-8859-1 liegt an der Stelle ein Steuerzeichen, kein Euro-Zeichen. Wenn man Opera absichtlich auf ISO-8859-1 stellt, sollte er diese Zeichen ignorieren.
Denn ich habe es noch nicht erlebt, dass Opera irgendeinen Blödsinn mit ISO-8859-1 gemacht hat.
Aber ja doch. Opera interpretiert die Zeichen 0x80 bis 0x9F immer als Zeichen aus Windows-1252, auch wenn man ausdrücklich irgendeine ISO-Kodierung einstellt. Das geht schon als Blödsinn durch.
Dumm ist das schon: In den Steuerzeichen ist z.B. 0x85, NEL, Next Line. Wird von manchen Systemen als Zeilentrenner benutzt, ähnlich 0x0A Line Feed und 0x0D Carriage Return. Das stellt Opera immer gemäß Windows-1252 als … dar.
(...) während beispielsweise bei ISO-8859-1 alle Zeichen auch mit Windows-1252 behandelbar sind, ebenso bei ISO-8859-15, es sich also lohnt, diese Codierungen intern alle umzuwandeln zum umfassenderen Windows-1252, und erst dann die Zeichendarstellungsroutine anzuwerfen.
Naja, nee. ISO-8859-1 und ISO-8859-15 lassen sich meines Wissens schon verlustlos in Windows-1252 transkodieren. Die anderen ISO-Kodierungen haben aber mit Windows-1252 nicht viel gemeinsam, also erklärt das nicht Operas generellen Umgang mit den Oktetts 0x80 bis 0x9F. Ich nehme mal an, bei allen 8-Bit-Kodierungen, bei denen diese Oktetts als Steuerzeichen definiert sind, werden sie als Windows-1252 dekodiert.
Intern verwendet Opera wahrscheinlich sowieso eher UTF-32 oder ähnliches, ich denke nicht, dass Opera 8-Bit-Kodierungen zu anderen 8-Bit-Kodierungen transkodiert.
Mathias