Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision a2be45a1

Von Moritz Bunkus vor mehr als 9 Jahren hinzugefügt

  • ID a2be45a1fb3e4f1ad0a906699095985b42e05ed5
  • Vorgänger 31347b09
  • Nachfolger 38666007

OpenDocument-Template: Umwandlung von HTML-Feldern gefixt

OpenDocument hat gewisse Probleme mit Verschachtelung von gewissen
Konstrukten, z.B. kein <text:p> innerhalb von <text:p><text:span>. Die
HTML-Felder aber sind immer in ein <p>…</p> eingeschlossen.

Bisheriger Ansatz war, davon auszugehen, dass der aktuell offene Tag im
XML ein <text:p> ist. Dafür wurde im HTML schlicht das erste <p> und das
letzte </p> entfernt. Das funktioniert, wenn das HTML-Feld der einzige
Inhalt in z.B. einer Tabellenzelle ist, z.B. eine Zelle, in der nur
<%longdescription%> steht.

Es geht aber in die Hose, wenn der innerste offene Tag eben nicht
<text:p> ist, was sehr schnell passiert, z.B. wenn man Konstrukte wie
<%description%><%if longdescription%><%longdescription%><%end%>
nutzt.

Lösung ist, die aktuell offenen Tags in einem Stack zu verfolgen. Das
HTML-Formatieren kann dann alle offenen Tags bis zum letzten <text:p>
schließen und am Ende wieder öffnen.

Potenzieller Fix für Redmine #83.

  • hinzugefügt
  • geändert
  • kopiert
  • umbenannt
  • gelöscht