Für die Darstellung von Code-Schnipseln, speziell das Syntax-Highlighting setzen wir das Plugin WP-Syntax ein. Probleme gab es bisher immer mit Code, der die speziellen HTML-Entities enthielt, also hauptsächlich die öffnenden und schließenden spitzen Klammern, die in der einen oder anderen Sprache irgendwie als Vergleichsoperatoren eingesetzt werden: < und >.
Bisher bin ich Problemen damit so aus dem Weg gegangen, dass ich entsprechende Zeichen im Beitragseditor durch < und > ersetzt hatte. Damit das Plugin damit umgehen konnte, war bei jedem Update eine kleine Änderung notwendig, für Version 0.9.1 sah der Patch beispielsweise so aus:
--- wp-syntax.php 2008-08-24 19:22:12.000000000 +0200 +++ wp-syntax.php 2008-08-25 15:26:48.000000000 +0200 @@ -97,7 +97,8 @@ $line = trim($match[2]); $code = wp_syntax_code_trim($match[3]); - $geshi = new GeSHi($code, $language); + $geshi = new GeSHi(htmlspecialchars_decode($code), $language); $geshi->enable_keyword_links(false); do_action_ref_array('wp_syntax_init_geshi', array(&$geshi));
Ab WP-Syntax 0.9.2 ist das nicht mehr notwendig. Die Release Notes sagen ganz lapidar:
**0.9.2** : Updated to use GeSHi v1.0.8.2; Added optional `escaped=”true”` support in case code snippets are already escaped with html entities.
In der Praxis sieht das dann so aus:
<pre lang="xml" escaped="true"> <xml>Hello</xml> </pre>
Das vereinfacht zukünftige Upgrades von dem Plugin, ist also eine feine Sache. Für vergangene Beiträge musste ich jetzt allerdings nochmal von Hand diesen Parameter setzen. Wenn mir da irgendwo was durch die Lappen gegangen sein sollte, einfach mal kurz anpiepsen, dann behebe ich das.
Allgemein AntiVir Apache CLI DataMining Debian eBay Eclipse Eisfair GnuPG GTD Hardware HCI HowTo ICQ Ideen IMPULS Internet IRC Jabber KDE Kommunikation LaTeX Linux Literatur Lustiges Magdeburg MATLAB Mobiltelefon MSRS OpenSource Perl PIM Politik Programmierung RFID Shirt Sicherheit Software Umwelt Versionsverwaltung Video Virtualisierung WebUni Wikipedia Windows WordPress Zaurus
Hinterlasse einen Kommentar: