Proudly made on earth

WordPress: Zurück zu englischen Anführungszeichen

Dr Evil Air Quotes Laser

Als die Computer sprechen lernten, waren ihre ersten Worte englisch. Erst nach und nach gelangten Schriftzeichen jenseits des lateinischen Alphabets und Sprachen abseits des indoeuropäischen Stammbaums in ihr Repertoire. So groß ist noch immer die linguistische Homogenität der digitalen Welt, dass auch Mitglieder der verwöhnten deutschen Sprachgemeinschaft regelmäßig mit englischen Menüs, Schaltflächen und Fehlermeldungen konfrontiert werden—obwohl die beliebtesten Programme und Webdienste theoretisch längst übersetzt sind.

WordPress ist seit vielen Jahren multilingual. Die DE-Edition funktioniert so gut, dass man fast nirgendwo mehr über englische Inhalte stolpert. Und doch gab es lange Zeit eine unscheinbare Ausnahme: Im Texteditor werden falsche Anführungszeichen automatisch durch richtige ersetzt. Bisher geschah das allerdings nach dem 6699-Schema, also der englischen Schreibweise, im Gegensatz zum deutschen 9966-System. Seit Version 4.2.2 vom Mai dieses Jahres ist diese Unstimmigkeit durch einen Eintrag in der Sprachdatei de_DE.po behoben.

Hat sich damit der Fall erledigt? Leider nicht. Wie so oft ist durch das Lösen eines Problems ein neues entstanden. Dabei geht es um falsche Apostrophe, die am Wortende stehen: Im Satz »Chris’ Katze kann komplizierte Kunststücke« wird das Sonderzeichen von wptexturize() als einfaches schließendes Anführungszeichen interpretiert. In der englischen Orthografie ist dieses Zeichen mit dem Apostroph identisch, beide entsprechen dem 9er-Format. Im Deutschen dagegen wird aus dem 9er-Apostroph ein 6er-Anführungszeichen, was insbesondere bei Überschriften sehr irritierend aussieht.

Aus Chris’ Katze wird Chris‘ Katze

Für den Bug gibt es drei Lösungen. Man kann ein paar Monate warten, bis eine Korrektur im Core angekommen ist. Man kann per Hand oder per Regex alle Vorkommnisse falscher Apostrophe an Wortenden mit echten Apostrophen ersetzen. Oder man kann mit einem einfachen Skript zu den englischen Anführungszeichen zurückkehren.

Der Hook gettext_with_context ermöglicht es, gezielt Übersetzungen anzupassen (wird aber auch angewandt, wenn keine Sprachdatei vorhanden ist). Um herauszufinden, welche Fälle man ansprechen muss, reicht ein Blick in die /wp-includes/formatting.php. Anschließend muss man nur die Übersetzung mit dem englischen Original überschreiben. Für die Behebung des Apostrophen-Problems wäre es schon ausreichend, nur die einfachen Anführungszeichen auszutauschen. Der Konsistenz halber, und weil die englische Schreibweise in meinen Augen viel angenehmer für den Lesefluss ist, habe ich mich für die komplette Umstellung entschieden.

Der Vorteil dieser Vorgehensweise ist, dass kein Plugin installiert oder, nicht auszudenken, der Core editiert werden muss: Einfach den Code in die functions.php des Themes kopieren und fertig.

Damit lässt sich auch schnell auf weitere Änderungen reagieren—neue Probleme kommen bestimmt. Die Lösung ist stets nur einen Schritt davon entfernt.

Florian Lehmuth
22. November 2015
Kategorien: ,
Schlagworte:

Keine Kommentare

Was sagst du?