Russischen Absatz in europäisch kodierter Seite unterbringen?
marc_013
- html
Ups... jetzt steh ich auf dem Schlauch.
Ich habe auf meinen Seiten den europäischen Zeichensatz als Standard angegeben (<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">)
Nun habe ich auf einer russischen Seite einen Text gefunden, den ich gerne auf einer dieser Seiten unterbringen möchte, als Textabsatz.
Zwei Probleme ergeben sich:
1. Wie krieg ich den Text in meinen Editor? Sowohl Notepad als auch PS-Pad zeigen nach dem Reinkopieren nur Fragezeichen an...
2. Wie kann ich dem Browser klarmachen, dass (nur) dieser Textabschnitt in russischem Zeichensatz angezeigt werden soll?
Kennt sich jemand damit aus?
marc.
Hi marc_013,
Ich habe auf meinen Seiten den europäischen Zeichensatz als Standard angegeben
Nein, HTML verwendet immer den UCS-Zeichensatz/Unicode.
charset=iso-8859-1
Das ist die Zeichen_codierung_.
Und was heißt „europäisch“? Der Eiserne Vorhang ist vor 15 Jahren gefallen, da sollte es sich auch schon bis in den Westen rumgesprochen haben, dass Europa bis zum Ural reicht.
Und es gibt europäische Sprachen, die Zeichen verwenden (nicht mal notwendigerweise kyrillische), die sich nicht mit ISO 8859-1 codieren lassen.
Kyrillische Zeichen lassen sich in ISO 8859-5 codieren, aber keine deutschen Umlaute. Zum Beispiel wird ф als 228 codiert; auf dem Platz ist in ISO 8859-1 das ä.
Die Zeichencodierung gilt für das gesamte Dokument. Es ist also eine zu wählen, die alle benötigten Zeichen umfasst: UTF-8 ist beste Wahl.
- Wie krieg ich den Text in meinen Editor? Sowohl Notepad als auch PS-Pad zeigen nach dem Reinkopieren nur Fragezeichen an...
Benutze einen Unicode-fähigen Editor. Achte beim Abspeichern darauf, dass als Codierung UTF-8 (manchmal fälschlicherweise als „Unicode“ bezeichnet) eingestellt ist.
- Wie kann ich dem Browser klarmachen, dass (nur) dieser Textabschnitt in russischem Zeichensatz angezeigt werden soll?
Gar nicht. Wegen: Die Zeichencodierung gilt für das gesamte Dokument. Deshalb kannst ist ja ISO 8859-5 für gemischtsprachige Dokumente nicht zu empfehlen.
Bei Codierung in UTF-8 ist sowas auch gar nicht notwendig: kyrillische Zeichen haben andere Codes als lateinische.
(Alternativ lassen sich numerische Zeichenreferenzen verwenden: ф für ф. Das ist für längere Texte kaum praktikabel, es sei denn, du bekommst deinen russischen Text in diese Form (bspw. in MS Word als HTML speichern). Dann brauchst du keinen Unicode-fähigen Editor und kannst dein Dokument in ISO 8859-1 codieren.)
Kennt sich jemand damit aus?
Du vielleicht auch etwas, wenn du das Kapitel Internationalisierung in SELHTML durchliest. Wenn du dort auf das Wort „Zeichensatz“ stößt und in dessen Verwendung Widersprüche zu dem eben Gelesenen feststellst, glaubst du bitte ausnahmsweise mir, nicht SELFHTML.
Live long and prosper,
Gunnar
Hallo marc,
Nun habe ich auf einer russischen Seite einen Text gefunden, den ich gerne auf einer dieser Seiten unterbringen möchte, als Textabsatz.
Zwei Probleme ergeben sich:
Wie krieg ich den Text in meinen Editor? Sowohl Notepad als auch PS-Pad zeigen nach dem Reinkopieren nur Fragezeichen an...
Wie kann ich dem Browser klarmachen, dass (nur) dieser Textabschnitt in russischem Zeichensatz angezeigt werden soll?
Wenn es nur ein kleiner Absatz ist, kannst du ihn in entities umwandeln. http://pioneer.stereo.lu/converter.html hilft dabei Dann kannst Du Dir sogar den Umweg über den Editor sparen. (Der Link ist im Augenblick nicht erreichbar, das Tool funktioniert aber auch aus dem Google Cache.
Gruß aus Köln-Ehrenfeld,
Elya
Wenn es nur ein kleiner Absatz ist, kannst du ihn in entities umwandeln.
Elya,
Es gibt keine HTML-Entities für kyrillische Zeichen.
Live long and prosper,
Gunnar
Hallo Gunnar,
Es gibt keine HTML-Entities für kyrillische Zeichen.
Ja-ha, ich hätte doch nochmal in mein Vokabelheft schauen sollen... ;-)
Vermutlich hat mich das "named" in "named entities" zu dem Schluß geführt, daß man numerische Zeichenreferenzen eben auch als "numerische entities" bezeichnen kann. Und dann der Name des Tools: "Unicode Characters to HTML Entities Converter"...
Gruß aus Köln-Ehrenfeld,
Elya
Ok, danke Euch allen.
Ich hab den Text mit Word als "Website" abgespeichert. Dabei wurden dann alle kyrillischen Zeichen umgewandelt und diesen Part konnte ich dann in den Quelltext einfügen. Der Quelltext sieht jetzt zwar etwas... eigenartig aus, aber es funktioniert.
@Gunnar
Sieh es mir bitte nach, dass ich russisch und europäisch getrennt hab. Aber für die (kurze) Überschrift musste ich es ja irgendwie bündig zusammenfassen.
Mir fehlt auch ein bisschen das grundsätzliche Wissen um diese Codierung. Deutsche Umlaute zum Beispiel schreibe ich immer als ä usw. Bedeutet das dann, dass es eigentlich egal ist, welchen Zeichensatz ich im Head angebe?
Ich werd mir mal Deinen Link ansehen.
Danke, also.
marc.
Ich hab den Text mit Word als "Website" abgespeichert. Dabei wurden dann alle kyrillischen Zeichen umgewandelt und diesen Part konnte ich dann in den Quelltext einfügen.
marc_013,
Du hast hoffentlich nur den reinen Text übernommen, nicht den Unfug, den Word noch so als „HTML“ schreibt?
Deutsche Umlaute zum Beispiel schreibe ich immer als ä usw. Bedeutet das dann, dass es eigentlich egal ist, welchen Zeichensatz ich im Head angebe?
So ziemlich. Du verwendest dann ja bspw. kein "ä", sonden nur die Zeichen "&", "a", "u", "m", "l" und ";", und zu deren Codierung reicht 7-Bit-ASCII. Und sowohl in ISO 8859 als auch in UTF-8 sind die Zeichen 0 bis 127 identisch mit den ASCII-Zeichen.
Allerdings ist die Verwendung von HTML-Entities für deutsche Umlaute überhaupt nicht nötig, wenn du eine Codierung wählst, mit welcher sich diese Zeichen codieren lassen (wie in ISO 8859-1 oder UTF-8). Das macht nur den Quelltext schlechter lesbar.
Würdest du hingegen dein Dokument wegen der kyrillischen Zeichen in ISO 8859-5 codieren, könntest du im Text enthaltene deutsche Umlaute nicht verwenden; dann wären HTML-Entities sinnvoll.
Live long and prosper,
Gunnar
PS. Und natürlich darf der Webserver im HTTP-Header keine andere als die verwendete Zeichencodierung angeben.
Du hast hoffentlich nur den reinen Text übernommen, nicht den Unfug, den Word noch so als „HTML“ schreibt?
Natürlich. Ich lass mir doch meinen semantisch sinnvollen Code nicht versauen ;-)
Danke nochmal für Deine Hinweise.
marc.