Mailinglisten-Archive |
Hallo Lutz, Lutz Zetzsche wrote, On 31.10.2005 13:10: > Du hast natürlich im Prinzip recht. Vermutlich verwendet man - ich nehme > mich da nicht aus - unreflektiert die HTML-Entitäten weiter, weil man es > immer so gemacht hat. Vor den Unicode-Zeiten hat man das so gelernt, und > da war das ja auch noch sinnvoll. :-) Mit Unicode hat das direkt gar nicht so viel zu tun und wie lange (oder ob jemals) es sinnvoll war, mag ich nicht entscheiden. Die entsprechenden Passagen in der HTML4.01 Deklaration sind eindeutig und die Browserunterstützung ist spätestens mit der 4er-Generation gegeben, ich bin jetzt zu faul mich durch alte HTML-Specs und SGML zu wühlen. > Heute kann ich mir eigentlich auch nur noch zwei Szenarien vorstellen, wo > die Verwendung der Entitäten Sinn macht: > > 1. Die Mischung verschiedener Zeichensätze in einer Seite. Das hattest Du > indirekt auch schon angesprochen. Selbst dann ist es IMHO sinnvoll die bevorzugte Encoding zu identifizieren und als Basis zu verwenden, valide (X)HTML-Dokumente müssen ohnehin einen Charset-Angabe mitbringen. Bei Dokumenten oder Anwendungen, die tatsächlich zu (fast) gleichen Teilen verschiedenen Sprachgruppen entstammen wirst du mit den entities eh nicht glücklich. Der Regelfall sind IMHO ein paar Ausreißer auf einzelnen Seiten. > 2. Wenn man ganz auf Nummer Sicher gehen will. ;-) Egal, welcher > Zeichensatz für die Seite mitgegeben wird oder welcher Zeichensatz im > Browser eingestellt ist, der durch die Entität repräsentierte Buchstabe > wird korrekt angezeigt. Auch in Asien oder so. :-) Das ist auch der Grund, > warum ich noch mit Entitäten arbeite. Ich bin halt etwas paranoid. ;-) Das ist nicht unbedingt paranoid, es ist einfach + eine Verschwendung von Bandbreite (5 Zeichen statt einem), + wartungsaufwändig und zu Fehlern verführend - eigentlich kümmert sich das Sytem ja drum, deswegen wird keine korrekte Charset-Angabe eingestellt, aber dann wird doch an einer Stelle manuell ein deutscher Text verwendet und man vergisst die Umlautkodierung. + In Asien oder so :-) wird der codierte Umlaut nur angezeigt, wenn ein entsprechender Font installiert ist und das Betriebssystem in der Lage ist exotische Zeichen richtig wiederzugeben ;-) Dafür hast du keine Garantie, egal was du deklarierst. Ich vermute allerdings, dass die Wahrscheinlichkeit etwas höher ist, als dass ich umgekehrt korrekt deklarierte japanische Zeichen zu sehen bekomme, da zumindestens die neueren Truetype-Fonts i.d.R die europäischen Sprachen abdecken. > Auf dem Umstieg auf UTF-8 muß ich noch etwas verzichten, weil ich dafür > entweder eine passende, also höhere MySQL-Version auf dem Online-Server > benötige oder auf Postgres umsteigen müßte, weil die auf dem Server UTF-8 > schon beherrscht. Richtig, das ist das wichtigste Argument dem UTF-8 Hype nicht blind nachzulaufen: Unterstützung durch Datenbank und sämtliche in der Produktionskette eingesetzten Editoren, hat aber mit der Verarbeitung westeuropäischer Texte nicht das geringste zu tun. Ich habe übrigens meinem Brotbrowser schon vor einigen Jahren beigebracht UTF-8 als default-Codierung zu verwenden, wenn Dokument und Server sich zum Thema ausschweigen, um eigenen Fehlern und Nachlässigkeiten schneller auf die Spur zu kommen. (Spracheinstellungen - Default Charset) Es ist erschreckend, wie viele - auch große Anbieter - hier komplett versagen und sich auf die fortgeschrittene Ratetechnik westeuropäischer Browser verlassen. IIRC gibt es übrigens irgendeine XHTML-Variante, bei der dir die benannten entities um die Ohren fliegen. (Auslieferung als application xhtml/xml ohne besondere Vorkehrungen?) Gruß Susanne -- http://sujag.de - Webentwicklung und -beratung susjaeger at sujag.de Lottumstr. 22, 10119 Berlin, Tel: 030 - 440 483 47
php::bar PHP Wiki - Listenarchive