Sie sind hier

Absatzende wie bei parskip=half* ohne halbe Leerzeile

Hallo,

ich bin über die Option parskip gestolpert, mit der man Absätze im Text leichter erkennbar machen kann. Während ich mit der Dokumentation zu Koma-Script übereinstimme, dass eine zusätzliche Leerzeile (halb oder ganz) zwischen den Absätzen überflüssig ist, wenn der Anfang des nachfolgenden Absatzes eingezogen wird, so finde ich einen Absatzeinzug von 1 em manchmal zu wenig. Hier ein Beispiel:

\documentclass[parskip=no]{scrbook}
 
\begin{document}
 
\chapter{First}
 
 
 
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut tempor. Donec commodo sodales lorem. Sed condimentum viverra magna. Suspendisse potenti. Integer purus mauris, egestas et, interdum sit amet, porttitor sed, nulla. Suspendisse potenti. Sed et ligula in felis porttitor euismod. Ut ipsum mauris, pretium vitae, imperdiet ullamcorper, tincidunt ullamcorper, ipsum. Donec tincidunt magna sed tellus. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. In ac leo. Cras pulvinarumit nibho. Integer et velit.
 
 
 
Suspendisse potenti. Nullam pellentesque felis condimentum metus. Morbi ultrices. Aliquam massa. Nunc eget purus. Donec condimentum sodales elit. Quisque massa odio, euismod a, sagittis ut, imperdiet eu, tellus. Ut vel justo vitae metus commodo cursus. Aliquam vel orci sed ligula interdum tempus. Curabitur ac massa ac magna pulvinar convallis. Ut pharetra consequat tortor. Curabitur diam nulla, rutrum quis, vestibulum laoreet, facilisis at, tellus.
 
 
 
\end{document} 

Optisch ist für meinen Geschmack die Trennung zwischen den beiden Absätzen nur mühsam zu erkennen. Den Absatzeinzug will ich aber nicht größer machen, da das schnell zu viel wird. Deshalb finde ich die Methode half* für die Option parskip sehr interessant: der Absatz wird so formatiert, dass die jeweils letzte Zeile max. zu zwei Dritteln gefüllt ist. Damit sind Absätze gut als solche zu erkennen. Aber den zusätzliche Leerraum zwischen den Absätzen will ich nicht.

Kann man da was machen?

Aha, ich merke gerade, dass parskip=half* auch den Einzug am Absatzanfang abschaltet. Was ich aber gerne hätte, ist Absatzeinzug und garantiert nichtvolle letzte Zeile im Absatz davor. Am besten ohne, dass ich händisch alle problematischen Absätze modifizieren muss...

Bild von Markus Kohm

Probier mal

\setparsizes{1em}{0pt}{.333\linewidth}

in der Präambel oder

\setparsizes{1em}{0pt}{.333\linewidth}\selectfont

in dem Bereich Deines Dokuments, in dem Du so etwas haben willst – ggf. auch direkt nach \begin{document}. Für den letzten Parameter sind auch andere Werte (beispielsweise 10em) denkbar. Die Anweisung ist im scrguide oder im KOMA-Script-Buch in Abschnitt 14.3 dokumentiert.

Ähnliche Gedanken wie neutronenspalter hatte ich mir auch schon einmal gemacht:
Nicht so sehr weil ich die Abschnittmarkierung für zu undeutlich halte (kürzere Zeilen als im Beispiel helfen), sondern weil minimale Weißräume am Zeilenende in klassischer Typographie als unschön gelten, was auch meinem Empfinden entspricht.
Wenn ich Zeit dazu habe, kann ich manuell die fraglichen Absätze ausbringen, aber ich frage mich, ob das nicht automatisiert werden kann...

Anstatt also mit

\setparsizes{1em}{0pt}{1em plus 1fil}

alle nur fast gefüllten letzten Zeilen im Absatz umzubrechen, würde ich gerne erreichen, daß alle Zeilen mit weniger als 1em Restplatz behandelt werden, als ob ich \parfillskip=0pt für diesem Absatz verwendet hätte. Also in der gleichen Zeile bleiben, den überschüssigen Platz aber gleichmäßig verteilen.

Ist das möglich?

Grüße,
Florian

Florian Grammel
Kopenhagen, Dänemark

Bild von Markus Kohm

Ob so etwas mit luaTeX machbar ist, weiß ich nicht.

Nun könnte man natürlich mit pdfTeX am Ende jedes Absatzes via \pdfsavepos die letzte x-Position ausmessen und dann ggf. \parfillskip ggf. anders setzen. Allerdings kann man die Position erst ausmessen, wenn der Absatz ausgegeben wird. Man muss also die Position zwischenspeichern, um im nächsten Durchgang darauf zurück zu greifen. Inzwischen kann sich aber die Position geändert haben, weil etwas am Absatz geändert wurde und dann wäre die Entscheidung nicht nur falsch, man würde die Fehlentscheidung nicht einmal bemerken und sie beim nächsten Mal wieder falsch treffen.

Deshalb mein Fazit: Nein, das geht nicht. Du kannst nur einen Mindestleerraum und (via Leim) einen Maximalleerraum festlegen.

Vielen Dank für die Erklärung!
Das ist natürlich schade, aber dann brauche ich da nicht weiter dran rumzudenken.
F

Florian Grammel
Kopenhagen, Dänemark

so will ich es haben!

Danke schön.

P.S.: Kann man den Thread auch als "gelöst" markieren?

Comments for "Absatzende wie bei parskip=half* ohne halbe Leerzeile" abonnieren