Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 4af01ce4

Von Moritz Bunkus vor mehr als 6 Jahren hinzugefügt

  • ID 4af01ce416458581a85d5a836c147bd214eb03bd
  • Vorgänger 2dff0687
  • Nachfolger f319b065

LaTeX-Escaping: gewisse Formen von »no line to end here« vermeiden

Passiert, wenn im HTML so ein Konstrukt existert:

…Text</p><p> <br>

Das wird zu einem Paragraphen, einem Leerzeichen und einem forcierten
Zeilenumbruch:

----schipp----
Text

\newline
----schipp----

Durch die Leerzeile fängt für LaTeX dann dort ein neuer Absatz an. Der
ist soweit leer. Das Leerzeichen am Anfang der Zeile ist kein
Inhalt. Also gibt es aus Sicht von LaTeX dann keinen Zeileninhalt,
sobald es das `\newline` trifft.

Unterschiede anzeigen:

SL/Template/LaTeX.pm
98 98
  $content =~ s{ ^ ( \\newline \  )+ }{ _lb_to_space($1) }gxe;                              # convert line breaks at the start of the text to vertical space
99 99
  $content =~ s{ ( \n\n+ ) ( \\newline \  )+ }{ $1 . _lb_to_space($2) }gxe;                 # convert line breaks at the start of a paragraph to vertical space
100 100
  $content =~ s{ ( \\end\{ [^\}]+ \} \h* ) ( \\newline \  )+ }{ $1 . _lb_to_space($2) }gxe; # convert line breaks after LaTeX environments like lists to vertical space
101
  $content =~ s{ ^ \h+ \\newline }{\\newline}gmx;
102
  $content =~ s{ \n\n \h* \\newline \h* }{\n\n}gmx;
101 103

  
102 104
  return $content;
103 105
}

Auch abrufbar als: Unified diff