Discussion:
Umbruch innerhalb von Wortgruppen verbieten
(zu alt für eine Antwort)
Ingmar Seifert
2004-01-19 18:36:53 UTC
Permalink
Hallo,

ich habe folgende Frage, zu der ich in der FAQ nichts finden konnte.
Ist es möglich, dass man, zwei vom Sinn her, zusammengehörende Worte
irgendwie klammern kann, um einen Zeilenumbruch zwischen den Worten zu
verbieten. Ich nutze Miktex 2.4 und KOMA-Script.


Danke,
Ingmar
Herbert Voss
2004-01-19 18:43:07 UTC
Permalink
Post by Ingmar Seifert
ich habe folgende Frage, zu der ich in der FAQ nichts finden konnte.
Ist es möglich, dass man, zwei vom Sinn her, zusammengehörende Worte
irgendwie klammern kann, um einen Zeilenumbruch zwischen den Worten zu
verbieten. Ich nutze Miktex 2.4 und KOMA-Script.
\mbox{hier nicht} oder auch hier~nicht

Herbert
Heiko Oberdiek
2004-01-19 19:08:03 UTC
Permalink
Post by Herbert Voss
Post by Ingmar Seifert
ich habe folgende Frage, zu der ich in der FAQ nichts finden konnte.
Ist es möglich, dass man, zwei vom Sinn her, zusammengehörende Worte
irgendwie klammern kann, um einen Zeilenumbruch zwischen den Worten zu
verbieten. Ich nutze Miktex 2.4 und KOMA-Script.
\mbox{hier nicht} oder auch hier~nicht
Die erste Variante bekommt gedehnte oder gestauchte Leerzeichen
infolge des Umbruchs nicht mit, das Leerzeichen in \mbox wird immer
gleich gesetzt. Daher gefaellt mir die zweite Variante besser.

Viele Gruesse
Heiko <***@uni-freiburg.de>
Ingmar Seifert
2004-01-19 22:56:02 UTC
Permalink
Post by Herbert Voss
Post by Ingmar Seifert
ich habe folgende Frage, zu der ich in der FAQ nichts finden konnte.
Ist es möglich, dass man, zwei vom Sinn her, zusammengehörende Worte
irgendwie klammern kann, um einen Zeilenumbruch zwischen den Worten zu
verbieten. Ich nutze Miktex 2.4 und KOMA-Script.
\mbox{hier nicht} oder auch hier~nicht
Herbert
Hallo,

\mbox{\emph{Wert\_1 + Wert\_2}} bricht nicht um, d.h. der Text steht im
Rand, und wenn ich ~ verwende, dann trennt Latex an einer anderen Stelle.
Ich hab jetzt manuell vor der Wortguppe \\ eingefügt.

Ich will einfach nur, dass Latex die Wortgruppe auf die nächste Zeile
setzt, wenn sie nicht mehr *komplett* auf die alte Zeile passt.
Gibt es da noch eine Möglichkeit, oder ist das manuelle Einfügen von \\
das Einzige was funktioniert?


Grüsse
Ingmar
Patrick Happel
2004-01-19 23:04:52 UTC
Permalink
Moin.
Post by Ingmar Seifert
\mbox{\emph{Wert\_1 + Wert\_2}} bricht nicht um, d.h. der Text steht
im Rand, und wenn ich ~ verwende, dann trennt Latex an einer anderen
Stelle.
Ich hab jetzt manuell vor der Wortguppe \\ eingefügt.
Ich will einfach nur, dass Latex die Wortgruppe auf die nächste Zeile
setzt, wenn sie nicht mehr *komplett* auf die alte Zeile passt.
Gibt es da noch eine Möglichkeit, oder ist das manuelle Einfügen von
\\ das Einzige was funktioniert?
Das liegt daran, dass TeX es als "schlimmer" ansieht, wenn die Lücken
zu groß zwischen den einzelnen Worten werden als wenn die Zeile über
den Rand hinausragt.

Je nachdem, in welcher Umgebung du das machst, könnte dir die
sloppypar-Umgebung helfen oder su setzt es im Flattersatz (wenn das in
einer Tabelle sein sollte).

Wenn du unbedingt die Zeile manuell umbrechen musst, dann nimm besser
\newline als \\, das füllt die Zeile noch auf.

Evtl. ist es am saubersten, den Satz leicht umzustellen.

Patrick
Harry Schmidt
2004-01-20 08:27:41 UTC
Permalink
Post by Ingmar Seifert
\mbox{\emph{Wert\_1 + Wert\_2}} bricht nicht um, d.h. der Text steht
im Rand,
TeX empfindet in diesem Fall den löchrigen Blocksatz, den das
Umbrechen vor der \mbox erzeugen würde, als schlimmer ("unendlich"
schlimm) an, als den in den Rand ragenden Text.

Außerdem werden die Leerzeichen in einer \mbox nicht
gedehnt/gestaucht, was dann i. d. R. auch zu suboptimalen Ergebnissen
führt.
Post by Ingmar Seifert
und wenn ich ~ verwende, dann trennt Latex an einer anderen
Stelle.
Klar. So ist das normalerweise gewünscht.
Post by Ingmar Seifert
Ich hab jetzt manuell vor der Wortguppe \\ eingefügt.
Und damit erzeugst Du eine nur teilweise gefüllte Zeile. Das ist im
Blocksatz praktisch immer schlechter als wenn eins Deiner Worte
getrennt würde. Der Leser könnte den Eindruck bekommen, dass hier ein
Absatz zu Ende ist. Auf jeden Fall wird der Lesefluss merklich
gestört.

Die Alternative wäre \linebreak[4]. Das erzeugt eine gefüllte Zeile,
aber vermutlich eine arg löchtrige. Auch das ist praktisch immer
schlechter, weil es das Lesen deutlich erschwert. Außerdem sieht's
blöd aus.
Post by Ingmar Seifert
Ich will einfach nur, dass Latex die Wortgruppe auf die nächste Zeile
setzt, wenn sie nicht mehr *komplett* auf die alte Zeile passt.
Ist Dir klar, was Du da forderst? Du willst, dass TeX Mist baut.
Den musst Du in diesem Fall aber schon selbst bauen.

Wenn die Worte so wichtig sind, dass sie nicht getrennt werden
dürfen, warum stehen sie dann überhaupt im Fließtext? Würden sie sich
dann nicht eher als eine Art Überschrift anbieten? Wenn Du sie
wirklich im Fließtext haben willst, dann wirst Du nicht drumrumkommen,
diesen etwas umzuschreiben.
Post by Ingmar Seifert
Gibt es da noch eine Möglichkeit, oder ist das manuelle Einfügen von
\\ das Einzige was funktioniert?
\\ ist im normalen Text eigentlich so gut wie immer falsch.

Gruß, Harry
--
When you are in it up to your ears, keep your mouth shut.
Loading...