Was ist besserer Stil bei Absatzeinzug und -abstand?

Schriftbild, Absätze und Auflistungen einstellen
Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2650
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

Könnte ich Dir die Frage beantworten, wäre ich das Genie, das die gleichzeitige Verwendung von Absatzeinzug und Absatzabstand einem sinnvollen Zweck zuführen kann. Bin ich aber nicht.

Da Du die mehr oder weniger dezenten Hinweise offenbar nicht verstehst, will ich es jetzt noch einmal ganz deutlich sagen:

:!: Vergiss die gleichzeitige Verwendung von Absatzeinzug und Absatzabstand. Sie ist weder notwendig, noch empfehlenswert, noch sinnvoll. In der Regel ist der Absatzeinzug die beste Lösung. Ausnahmsweise kann auch Absatzabstand verwendet werden. In dem Fall bitte am besten mit einer Klasse, die das beherrscht, und dann natürlich mit der für die Klasse dokumentieren Methode. Ausnahmsweise kann man sich auch des Pakets parskip bedienen. :!:

Deutlicher kann ich es nicht mehr sagen ...

Bernd_B
Forum-Anfänger
Forum-Anfänger
Beiträge: 10
Registriert: Do 19. Feb 2009, 13:49

Beitrag von Bernd_B »

KOMA hat geschrieben:Da Du die mehr oder weniger dezenten Hinweise offenbar nicht verstehst [...] Deutlicher kann ich es nicht mehr sagen ...
Joa, Textkommunikation ist schon ne Sache für sich. Im persönlichen Gespräch hätt' ich es sicher verstanden :(

Jedenfalls Danke für die Info! :wink:

Bernd_B
Forum-Anfänger
Forum-Anfänger
Beiträge: 10
Registriert: Do 19. Feb 2009, 13:49

Beitrag von Bernd_B »

aber eine Frage hätte ich dann doch noch.....

Wozu existieren \smallskip, \medskip und \bigskip denn überhaupt? Ich miene, überall hab ich gelesen:
"... fügt einen kleinen/ mittelgroßen/ großen Abstand zwischen zwei Absätzen ein". :?:

... was mich ja offenbar auf ne ziemlich falsche Fährte gelockt hat...

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2650
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

\bigskip, \medskip und \smallskip sind IMHO streng genommen keine Anweisungen für Anwender, denn eigentlich sollen Anwender semantische Auszeichnungen verwenden. Ich kann mich jetzt auch an keinen einzigen Fall erinnern, in dem ich eine der drei Anweisungen als Anwender genutzt hätte (habe ich aber trotzdem bestimmt schon irgendwann). Als Paket- oder Klassenautor habe ich sie genutzt, um beispielsweise Umgebungen zu definieren, bei denen zuvor oder danach ein Abstand eingefügt wurde. Auch für etwas wie

Code: Alles auswählen

\newcommand*{\storrysection}{\par\bigskip\noindent}
(in Wirklichkeit sieht die Anweisung bei mir noch ein wenig anders aus) habe ich das schon genutzt. In Ausnahmefällen kann man die entsprechenden Längen mal gebrauchen, etwa in einer Tabelle ein

Code: Alles auswählen

Tabellenzeile\\[\medskipamount]
Wenn die Dinger für Absatzabstand gedacht wären, gäbe es übrigens ein "par" im Namen. Im allgemeinen haben semantische Markup-Anweisungen bei LaTeX auch Namen mit einem semantischen Bezug. Dass hier kein semantischer Bezug enthalten ist zeigt mir, dass sie nicht zur direkten Benutzung gedacht sind. Das gilt übrigens auch für \textbf, \textit etc. Anwender sollten semantisches Markup wie \emph verwenden. Wann immer ein Anwender stattdessen physische Auszeichnung verwendet, sollten bei ihm die Typografie-Alarmglocke läuten und ihm sagen, dass er den sicheren Boden soeben verlassen hat.

Grundlegende Anweisungen wie \par sollte ein Anwender nie generell umdefinieren und schon gar nicht generell durch komplexe Anweisungen ersetzen. Absätze werden ja auch implizit an vielen Stellen gemacht. Die Wahrscheinlichkeit, dass dabei etwas nicht funktioniert, ist groß (und übrigens der Hauptgrund, warum man nicht einfach \setlength{\parskip}{...} machen sollte).

Du warst also tatsächlich sehr gut beraten nachzufragen. Experimentieren ist gut. Das kann ich jedem nur raten. Die Ergebnisse einer kritischen Überprüfung zu unterziehen ist empfehlenswert. Neben Literatur- und Internet-Recherche ist Fragen stellen dabei das Mittel der Wahl.

Bernd_B
Forum-Anfänger
Forum-Anfänger
Beiträge: 10
Registriert: Do 19. Feb 2009, 13:49

Beitrag von Bernd_B »

OK dann ist bei mir jetzt alles: :idea:

Vielen Dank! :)

Bernd_B
Forum-Anfänger
Forum-Anfänger
Beiträge: 10
Registriert: Do 19. Feb 2009, 13:49

Beitrag von Bernd_B »

:oops: :oops: :oops:

Mir ist doch noch eine Frage gekommen... :oops:
KOMA hat geschrieben:Wenn die Dinger für Absatzabstand gedacht wären, gäbe es übrigens ein "par" im Namen.
aber wie ist das denn mit

Code: Alles auswählen

\addvspace
:?:

Dieser Befehl hat kein "par" im Namen, aber funktioniert tatsächlich nur nach Absätzen (d.h.: einem \par-Befehl oder einer Leerzeile)

:?: :?: :?:

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2650
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

99% der Anwender wissen gar nicht wirklich, was \addvspace und \addpenalty genau machen, glauben aber trotzdem es zu wissen. Beide Anweisungen sind teilweise für Paketautoren sehr nützlich. Ein Anwender dürfte sie eher überhaupt nicht benötigen. Und bevor jetzt die Frage nach \vspace kommt: In 99% der Fälle wird \vspace von Anwendern verwendet, um irgendwie rumzumurksen. \vspace, \linebreak, \pagebreak, \newpage, \clearpage, \looseness etc. gehören alle in den Bereich des Finetunigs, das man ganz zum Schluss eventuell benötigt, um den Satz zu optimieren. Anwender, die diese Anweisungen bereits während des Schreibens, regelmäßig oder häufiger als ausnahmsweise benötigen, machen in 99,9% der Fälle etwas grundlegendes falsch.

Wenn Du auf Anhieb korrekt erklären kannst, was \addvspace und \addpenalty machen, dann darfst Du die meinetwegen auch verwenden.

Ich muss doch irgendwann noch mal die Bücher: »Die 25 wichtigsten LaTeX-Anweisungen und Umgebungen für LaTeX-Anwender« und »Die 250 wichtigsten LaTeX-Anweisungen für LaTeX-Paket-Autoren« schreiben ...

PS: Das ist mein 444ter Beitrag: Helau!

Bernd_B
Forum-Anfänger
Forum-Anfänger
Beiträge: 10
Registriert: Do 19. Feb 2009, 13:49

Beitrag von Bernd_B »

KOMA hat geschrieben:99% der Anwender wissen gar nicht wirklich, was \addvspace und \addpenalty genau machen
das dachte ich mir schon, deshalb hab ich mich lieber gleich an Dich gewandt.....
Und bevor jetzt die Frage nach \vspace kommt
Haha, neeeeeee..... \vspace fällt doch genau unter die Kategorie von Befehlen, die kein "par" im Namen haben. Und darüber hattest Du mich ja im vorangegangenen Posting aufgeklärt.

Deshalb WAR ich ja gerade so verwundert!!

Eben noch hattest Du mein Weltbild wieder in Ordnung gebracht ("par" im Namen ==> Befehl oder Variable bezieht sich auf Absätze), und nun stieß ich auf diesen kuriosen \addvspace-Befehl, der einerseits kein "par" im Namen trägt, andererseits aber offenbar nur zwischen Absätzen wirkt. Deshalb hab ich sicherheitshalber nochmal nachgefragt. Man kann ja nie wissen....
Wenn Du auf Anhieb korrekt erklären kannst, was \addvspace und \addpenalty machen, dann darfst Du die meinetwegen auch verwenden.
ich tipp mal, dass \addpenalty irgendwas mit diesen "Strafpunkten" zu tun hat, mit denen intern gerechnet wird..... und bei \addvspace steh ich total auf dem Schlauch. Also alles in allem wird die Nachwelt wohl ohne geniale Wiki-Einträge von mir auskommen müssen..... :(
Ich muss doch irgendwann noch mal die Bücher: »Die 25 wichtigsten LaTeX-Anweisungen und Umgebungen für LaTeX-Anwender« und »Die 250 wichtigsten LaTeX-Anweisungen für LaTeX-Paket-Autoren« schreiben ...
Also in mir hättest Du schonmal einen sicheren Abnehmer :mrgreen:
PS: Das ist mein 444ter Beitrag: Helau!
NA GUT. Wenn Du denn so drauf stehst: HELAU!!! - ach nein, warte:

Code: Alles auswählen

{\Huge\bfseries Helau!!!}

Antworten