( jc – 30.10.2010 3:34)

(X)HTML Code in Textile

Es gibt mehrer Wege (HTML) Code Stücke innerhalb von Textile markup zu notieren..:

  • notextile.. als extended block, als auch das
  • pseudo tag <notextile></notextile>
  • Durchgehendes (X)HTML (geschlossener Block)

Letztere Variante dürfte evtl. sogar die weitverbreitetste sein. Einfach weil vermutlich die meisten die mit Textile konkfrontiert wurden es irgendwann mal ausprobiert haben was passiert wenn man HTML ins markup schreibt: Geht.. Die Sache hat aber einen Haken, der nicht zwingend sofort auffällt.

ein “geschlossener” Block (HTML)Code..

..ist kurz gesagt ein Block aus beliebigen Zeichen, umklammert von öffnenden & schließenden Blocklevel Element tag, und ohne eine Leerzeile dazwischen. Sind beide Bedingungen erfüllt, dann ist alles gut:

// textile
<div>
<
span>Internet Professionell</span>
lobt Redaxo
</div
// html
<div>
<
span>Internet Professionell</span>
lobt Redaxo
</div

..oder kaputtes HTML

Wenn Textile nicht beide Bedingungen antrift, hält es die Codefragmente für normalen Text, und umgibt jeden Teil mit einem Paar <p></p>

// textile
<div
<span>Internet Professionell</span>
lobt Redaxo
</div
// html
<p><div></p
<p><span>Internet Professionell</span>
lobt Redaxo
</div></p

D.h. will man sein hangeschriebenes HTML und Textile markup mischen – z.b. mal eben einen Textile Block in divs packen – ohne dabei von Textile (gutgemeinten) Schrott zu erhalten, gibt es einen afaik nicht so geläufigen Trick:

Das Leerzeichen

Notiert man $irgendwas in Textile mit einem Leerzeichen am Zeilenanfang, dann wird diese Zeile/Abschnitt nicht als (vermeintlicher) Text behandelt, sondern einfach durchgewunken:
(Die Leerzeichen sind mit Punkten verdeutlicht..)

// textile
.<div
.<span>Internet Professionell</span>
.
lobt Redaxo
.</div
// html
<div
<span>Internet Professionell</span>
lobt Redaxo
</div