Seite 1 von 1

LaTeX -- eigene Environments

Verfasst: Dienstag 31. Oktober 2006, 17:32
von Rebecca
OK, ist ziemlich Offtopic, aber vielleicht kann mir ja trotzdem jemand helfen. :)

Ich habe in LaTeX eigene Umgebungen gebastelt:

Code: Alles auswählen

\newenvironment{foo}
  {
    \begin{sloppypar}
    % irgendwas ...
  }
  {
    \end{sloppypar}
  }
Was mich an meiner Umgebung stoert, ist die Tatsache, dass sie manchmal so zwischen zwei Seiten umgebrochen wird, dass auf einer Seite nur eine einzige Zeile des Inhalts dieser Umgebung steht.

Ich faende es besser, wenn das Verhalten so aehnlich wie bei Sections und nachfolgendem Text gehandhabt wird: Wenn unten auf der Seite eine neue Section angefangen wird, aber nur noch eine Zeile Text dahinter passt, so wird die Section erst auf der naechsten Seite angefangen.

Nur wie bekomme ich das hin? Gibt es vielleicht eine Umgebung, die das macht und die ich anstelle des sloppypar in meiner eigenen Umgebung benutzen kann? Das einzige in die Richtung, das ich gefunden habe, ist samepage, aber das ist nicht ganz, was ich will. :cry:

Verfasst: Dienstag 31. Oktober 2006, 19:05
von Crush
Hi Rebecca

eine fertige Antwort weiss ich leider nicht, aber (falls dir das nicht ohnehin schon bekannt ist) vielleicht hilft dir das Stichwort "Penalties" (bzw. "Strafpunkte") im Zusammenhang mit Latex etwas? Ist mir jetzt spontan dazu eingefallen, möglich das ich auch total daneben lieg (falls dem so ist: tut mir leid...).

Gruss Crush

Re: LaTeX -- eigene Environments

Verfasst: Dienstag 31. Oktober 2006, 23:06
von BlackJack
Rebecca hat geschrieben:Was mich an meiner Umgebung stoert, ist die Tatsache, dass sie manchmal so zwischen zwei Seiten umgebrochen wird, dass auf einer Seite nur eine einzige Zeile des Inhalts dieser Umgebung steht.

Ich faende es besser, wenn das Verhalten so aehnlich wie bei Sections und nachfolgendem Text gehandhabt wird: Wenn unten auf der Seite eine neue Section angefangen wird, aber nur noch eine Zeile Text dahinter passt, so wird die Section erst auf der naechsten Seite angefangen.
Hm, das sollten normalerweise Absätze von selbst tun. Es gibt ordentlich Strafpunkte für Trennungen nach der ersten Zeile und vor einer der beiden letzten Zeilen eines Absatzes. Vielleicht werden die durch `sloppypar` aufgehoben oder zumindest runtergesetzt wie ja auch die für grosse Wortabstände.

Vielleicht hilft es ja `clubpenalty` und `widowpenalty` höher zu setzen. Ich glaube die Voreinstellung ist bei 150.

Brauchst Du das `sloppypar` den unbedingt?

Verfasst: Mittwoch 1. November 2006, 08:56
von mawe
Hi!

Gegen das Umbrechen nach der ersten Zeile hilft ja so etwas wie

Code: Alles auswählen

\setlength\parskip{1.5ex plus 1ex minus 1ex}
Vielleicht funktioniert das auch bei eigenen Umgebungen?

Gruß, mawe

Verfasst: Mittwoch 1. November 2006, 15:12
von Rebecca
Ich habe jetzt dummerweise meinen ganzen LaTeX kram nicht hier. Ich werde eure Vorschlaege ausprobieren, wenn ich wieder im Buero bin, vielen Dank schonmal!