Discussion:
Seitenumbruch bei neuem \chapter verhindern (bei \scrreprt)
Arne Röhrs
2009-11-17 09:07:09 UTC
Permalink
Hallo,

ich habe da eher eine theoretische Frage.
Einige meiner Schüler schreiben ihre Facharbeit mit LaTeX nach einer Vorlage von mir.
Bei den Übungen zu LaTeX ist jetzt die Frage aufgetaucht, ob man in der Klasse \scrreprt den Seitenumbruch bei einem neuen Kapitel verhindern kann.

Natürlich kann man einfach eine andere Klasse nehmen, es geht hier mehr um das Prinzip.

Eine Suche der Schüler im Netz ergab hierzu keine Antwort. Und mein spontaner Vorschlag mit \nopagebreak[4] funktionierte auch nicht.

Im scrguide steht etwas zur Veränderung des Abstandes zwischen zwei Überschriften, diesen Wert kann man mit \chapterheadstartvskip usw. verändern.
Aber von einem Seitenumbruch ist dort nicht die Rede. Oder habe ich da falsch verstanden?

Gibt es dafür eine Lösung?

Es geht hier auch mehr ums Prinzip, als um eine reale praktische Umsetzung.


Herzliche Grüße

Arne

--
FAQ: http://www.dante.de/faq/de-tex-faq/
Durchsuchbares Archiv: http://tinyurl.com/cdcb6
Unsubscribe/Verwaltung: http://tinyurl.com/b9tod
Rüdiger Steffan
2009-11-17 10:29:47 UTC
Permalink
Hallo Arne,

hier gibt es einen interessanten Artikel dazu:

http://www.komascript.de/chapterissection

Demnach wäre es sinnvoller eine andere Klasse zu verwenden.

Viele Grüße

Rüdiger
Post by Arne Röhrs
Hallo,
ich habe da eher eine theoretische Frage.
Einige meiner Schüler schreiben ihre Facharbeit mit LaTeX nach einer Vorlage von mir.
Bei den Übungen zu LaTeX ist jetzt die Frage aufgetaucht, ob man in der Klasse \scrreprt den Seitenumbruch bei einem neuen Kapitel verhindern kann.
Natürlich kann man einfach eine andere Klasse nehmen, es geht hier mehr um das Prinzip.
Eine Suche der Schüler im Netz ergab hierzu keine Antwort. Und mein spontaner Vorschlag mit \nopagebreak[4] funktionierte auch nicht.
Im scrguide steht etwas zur Veränderung des Abstandes zwischen zwei Überschriften, diesen Wert kann man mit \chapterheadstartvskip usw. verändern.
Aber von einem Seitenumbruch ist dort nicht die Rede. Oder habe ich da falsch verstanden?
Gibt es dafür eine Lösung?
Es geht hier auch mehr ums Prinzip, als um eine reale praktische Umsetzung.
Herzliche Grüße
Arne
--
FAQ: http://www.dante.de/faq/de-tex-faq/
Durchsuchbares Archiv: http://tinyurl.com/cdcb6
Unsubscribe/Verwaltung: http://tinyurl.com/b9tod
--
FAQ: http://www.dante.de/faq/de-tex-faq/
Durchsuchbares Archiv: http://tinyurl.com/cdcb6
Unsubscribe/Verwaltung: http://tinyurl.com/b9tod
Arne Röhrs
2009-11-17 10:46:35 UTC
Permalink
Hallo,

vielen Dank für den Link.
Post by Rüdiger Steffan
http://www.komascript.de/chapterissection
Danach geht es einfach nicht, das Verhalten zu ändern. Schade eigentlich,
ich hatte etwas vorschnell gesagt, dass so ziemlich alles mit LaTeX möglich ist.
Dann muss ich wohl zurückrudern ... ;-)))

Lieben Gruß

Arne

--
FAQ: http://www.dante.de/faq/de-tex-faq/
Durchsuchbares Archiv: http://tinyurl.com/cdcb6
Unsubscribe/Verwaltung: http://tinyurl.com/b9tod
Arno Trautmann
2009-11-17 10:13:49 UTC
Permalink
Post by Arne Röhrs
Hallo,
vielen Dank für den Link.
Post by Rüdiger Steffan
http://www.komascript.de/chapterissection
Danach geht es einfach nicht, das Verhalten zu ändern. Schade eigentlich,
ich hatte etwas vorschnell gesagt, dass so ziemlich alles mit LaTeX möglich ist.
Dann muss ich wohl zurückrudern ... ;-)))
Naja, es ist ja schon möglich. Du kannst dir ja ein \nonewpagechapter
definieren. \chapter ist ja nur ein freundliches Angebot der
Paketautoren, gewisse Voreinstellungen zu vereinfachen. Wenn einem das
nicht gefällt, muss man was anderes nehmen.
Zum Glück ist es meist ja sehr gut durchdacht, was einem die Autoren
anbieten ;)

Gruſs
Arno


--
FAQ: http://www.dante.de/faq/de-tex-faq/
Durchsuchbares Archiv: http://tinyurl.com/cdcb6
Unsubscribe/Verwaltung: http://tinyurl.com/b9tod
Jan Handwerker
2009-11-17 11:12:12 UTC
Permalink
Hallo Arne,
Post by Arne Röhrs
Danach geht es einfach nicht, das Verhalten zu ändern. Schade eigentlich,
ich hatte etwas vorschnell gesagt, dass so ziemlich alles mit LaTeX möglich ist.
Dann muss ich wohl zurückrudern ... ;-)))
das erinnert mich an ein Zitat, das ich vor Jahren vielleicht sogar
hier in der Liste las: "Mit TeX ist es möglich all das zu machen,
was Word auch geht. Es ist nur schwieriger, mit TeX Unsinn anzustellen."

Gruß
Jan

--
FAQ: http://www.dante.de/faq/de-tex-faq/
Durchsuchbares Archiv: http://tinyurl.com/cdcb6
Unsubscribe/Verwaltung: http://tinyurl.com/b9tod
Arno Trautmann
2009-11-17 10:54:44 UTC
Permalink
Post by Rüdiger Steffan
Hallo Arne,
Post by Arne Röhrs
Danach geht es einfach nicht, das Verhalten zu ändern. Schade eigentlich,
ich hatte etwas vorschnell gesagt, dass so ziemlich alles mit LaTeX möglich ist.
Dann muss ich wohl zurückrudern ... ;-)))
das erinnert mich an ein Zitat, das ich vor Jahren vielleicht sogar
hier in der Liste las: "Mit TeX ist es möglich all das zu machen,
was Word auch geht. Es ist nur schwieriger, mit TeX Unsinn anzustellen."
Ohne jetzt eine Grundsatzdiskussion vom Zaun brechen zu wollen: Der
Arbeitsablauf mit TeX ist so prinzipiell anders als der von Word, dass
man die nur schlecht vergleichen kann. Vorteil von TeX ist, dass das
Resultat besser aussehen kann als bei Word, aber es meist auch mehr
Aufwand ist. Das kommt aber in beiden Fällen auf die Bedienung und das
zu erstellende Dokument an. Daher sollte man Leute weder zu dem einen
noch zu dem anderen zwingen – wohl aber beide Alternativen kennen.

Gruſs
Arno


--
FAQ: http://www.dante.de/faq/de-tex-faq/
Durchsuchbares Archiv: http://tinyurl.com/cdcb6
Unsubscribe/Verwaltung: http://tinyurl.com/b9tod
Herbert Voss
2009-11-17 10:54:19 UTC
Permalink
Post by Arne Röhrs
ich habe da eher eine theoretische Frage.
Einige meiner Schüler schreiben ihre Facharbeit mit LaTeX nach einer Vorlage von mir.
Bei den Übungen zu LaTeX ist jetzt die Frage aufgetaucht, ob man in der Klasse \scrreprt den Seitenumbruch bei einem neuen Kapitel verhindern kann.
Natürlich kann man einfach eine andere Klasse nehmen, es geht hier mehr um das Prinzip.
Eine Suche der Schüler im Netz ergab hierzu keine Antwort. Und mein spontaner Vorschlag mit \nopagebreak[4] funktionierte auch nicht.
Im scrguide steht etwas zur Veränderung des Abstandes zwischen zwei Überschriften, diesen Wert kann man mit \chapterheadstartvskip usw. verändern.
Aber von einem Seitenumbruch ist dort nicht die Rede. Oder habe ich da falsch verstanden?
Gibt es dafür eine Lösung?
Es geht hier auch mehr ums Prinzip, als um eine reale praktische Umsetzung.
Es ist immer der gleiche Ablauf:
- in die Dokumentation sehen; gibt es keine Lösung, dann
- "googeln"; gibt es keine Lösung, dann
- in die Quellen sehen (scrreprt.cls); gibt es keine Lösung, dann
- News-/Mailgroups nutzen

In den Quellen siehst du, wie chapter definiert ist und kannst
den Befehl überschreiben und dann gegen jegliche typografische
Konvention verstoßen, wenn chapter nicht auf einer neuen Seite
beginnt ... :-)
.

Herbert

--
FAQ: http://www.dante.de/faq/de-tex-faq/
Durchsuchbares Archiv: http://tinyurl.com/cdcb6
Unsubscribe/Verwaltung: http://tinyurl.com/b9tod
Arne Röhrs
2009-11-17 13:03:30 UTC
Permalink
Hallo,

vielen Dank für eure Antworten.
Auch an die Helfer außerhalb der Liste.
Post by Herbert Voss
Post by Arne Röhrs
Im scrguide steht etwas zur Veränderung des Abstandes zwischen zwei Überschriften, diesen Wert kann man mit \chapterheadstartvskip usw. verändern.
Aber von einem Seitenumbruch ist dort nicht die Rede. Oder habe ich da falsch verstanden?
Gibt es dafür eine Lösung?
Es geht hier auch mehr ums Prinzip, als um eine reale praktische Umsetzung.
- in die Dokumentation sehen; gibt es keine Lösung, dann
done
Post by Herbert Voss
- "googeln"; gibt es keine Lösung, dann
done
Post by Herbert Voss
- in die Quellen sehen (scrreprt.cls); gibt es keine Lösung, dann
Habe ich jetzt auch gemacht ... ;-))
Post by Herbert Voss
- News-/Mailgroups nutzen
Das will ich jetzt noch einmal machen.

Ich habe jetzt direkt scrreprt verändert und das \clearpage hinter "\else" entfernt, das ganze in scrrept2
umbenannt und dann so eingebunden. Das hat soweit dann auch funktioniert.

Jetzt wollte ich das auch einmal mit \makeatletter probieren (Beispiel siehe unten).

Da kommt jetzt aber die Fehlermeldung:

-------Fehler---------

! LaTeX Error: Command \chapter already defined.
Or name \end... illegal, see p.192 of the manual.

See the LaTeX manual or LaTeX Companion for explanation.
Type H <return> for immediate help.
...

l.11 \secdef\@chapter\@schapter}
-----

Das Ergebnis war dann genauso wie ohne diese Änderung.

Hier das Beispiel:

---------Beispiel-------

\documentclass[]{scrreprt}
\usepackage[T1]{fontenc}
\usepackage[applemac]{inputenc}

\makeatletter
\newcommand\chapter{\***@openright\cleardoublepage\else\fi
\thispagestyle{\chapterpagestyle}%
\global\@topnum\z@
\@afterindentfalse
\secdef\@chapter\@schapter}
\makeatother

\begin{document}

\chapter{Allgemeines}

\chapter{Spezielles}

\end{document}

-----Ende-------


Was mache ich falsch?

Lieben Gruß

Arne

--
FAQ: http://www.dante.de/faq/de-tex-faq/
Durchsuchbares Archiv: http://tinyurl.com/cdcb6
Unsubscribe/Verwaltung: http://tinyurl.com/b9tod
Herbert Voss
2009-11-17 21:13:34 UTC
Permalink
Post by Arne Röhrs
! LaTeX Error: Command \chapter already defined.
Or name \end... illegal, see p.192 of the manual.
hier steht doch das Problem ...
Post by Arne Röhrs
\documentclass[]{scrreprt}
\usepackage[T1]{fontenc}
\usepackage[applemac]{inputenc}
\makeatletter
\renewcommand
Post by Arne Röhrs
\thispagestyle{\chapterpagestyle}%
\makeatother
\begin{document}
\chapter{Allgemeines}
\chapter{Spezielles}
\end{document}
und das Ganze sollte man als Spielerei auffassen, um zu
verstehen, wie "der Hase läuft" ... Sinnvoll ist
es selten, wenn das eine dauerhafte Regelung sein
soll :-)

Herbert

--
FAQ: http://www.dante.de/faq/de-tex-faq/
Durchsuchbares Archiv: http://tinyurl.com/cdcb6
Unsubscribe/Verwaltung: http://tinyurl.com/b9tod
Susan Dittmar
2009-11-18 15:53:13 UTC
Permalink
Hallo Arne,
Post by Arne Röhrs
\makeatletter
\thispagestyle{\chapterpagestyle}%
\makeatother
ich würde empfehlen, nicht \chapter umzudefinieren, sondern ein neues
Kommando einzuführen. Sonst weißt Du nach ein paar Monaten nicht mehr,
warum jetzt dieses mal \chapter keinen Seitenumbruch macht -- speziell,
wenn Du irgendwann solche Definitionen in einer Style-Datei "versteckst".
Bei der Zahl von Paketen, die man je nach Projekt lädt, ist es dann recht
schwer, den "Übeltäter" zu finden.

Ich würde also an Deiner Stelle zum Beispiel

\newcommand\chapterWithoutNewpage{ ... }

schreiben. Und dann sollte man natürlich die Hinweise bezüglich Abstand vor
der neuen Überschrift bedenken, wie bereits in früheren Antworten erwähnt
wurde. Einschließlich so Überlegungen wie sicherzustellen, daß die
Überschrift nicht der letzte Block vor einem Seitenumbruch sein sollte.
Diese Dinge sollten bei \section zu finden sein.

Es gibt übrigens mindestens ein Paket, das die Schaffung weiterer
Gliederungsstufen und die Anpassung von deren Aussehen vereinfacht. Leider
weiß ich nicht auf die schnelle, wie dieses heißt. Sollte aber im
CTAN-Index (by toppic) zu finden sein.

Gruß,

Susan


--
FAQ: http://www.dante.de/faq/de-tex-faq/
Durchsuchbares Archiv: http://tinyurl.com/cdcb6
Unsubscribe/Verwaltung: http://tinyurl.com/b9tod
Arne Röhrs
2009-11-18 17:17:28 UTC
Permalink
Hallo,

Dank eurer Hilfe habe ich es jetzt hinbekommen. :-))
Vielen Dank dafür.

Es ging mir im Prinzip nur um die Möglichkeit, um zu zeigen, dass so was auch mit LaTeX geht.
Bei der Umdefinition bzw. dessen Einsatz ist den Schüler übrigens von selber aufgefallen, dass
es mit einem Seitenumbruch wesentlich besser aussieht und in sich stimmiger ist.
Post by Rüdiger Steffan
Hallo Arne,
Post by Arne Röhrs
\makeatletter
\thispagestyle{\chapterpagestyle}%
\makeatother
ich würde empfehlen, nicht \chapter umzudefinieren, sondern ein neues
Kommando einzuführen. Sonst weißt Du nach ein paar Monaten nicht mehr,
warum jetzt dieses mal \chapter keinen Seitenumbruch macht -- speziell,
wenn Du irgendwann solche Definitionen in einer Style-Datei "versteckst".
Bei der Zahl von Paketen, die man je nach Projekt lädt, ist es dann recht
schwer, den "Übeltäter" zu finden.
Das ist ein guter Tipp für kommende Projekte.
Vielen Dank.
Post by Rüdiger Steffan
Es gibt übrigens mindestens ein Paket, das die Schaffung weiterer
Gliederungsstufen und die Anpassung von deren Aussehen vereinfacht. Leider
weiß ich nicht auf die schnelle, wie dieses heißt. Sollte aber im
CTAN-Index (by toppic) zu finden sein.
Da werde ich nachher mal nach schauen.

Herzliche Grüße

Arne

--
FAQ: http://www.dante.de/faq/de-tex-faq/
Durchsuchbares Archiv: http://tinyurl.com/cdcb6
Unsubscribe/Verwaltung: http://tinyurl.com/b9tod
H.F. Steffani
2009-11-18 20:54:56 UTC
Permalink
Post by Susan Dittmar
ich würde empfehlen, nicht \chapter umzudefinieren, sondern ein neues
Kommando einzuführen. Sonst weißt Du nach ein paar Monaten nicht mehr,
warum jetzt dieses mal \chapter keinen Seitenumbruch macht -- speziell,
wenn Du irgendwann solche Definitionen in einer Style-Datei
"versteckst". Bei der Zahl von Paketen, die man je nach Projekt lädt,
ist es dann recht schwer, den "Übeltäter" zu finden.
Ich bin gerade entgegengesetzter Meinung. Ein Ziel von LaTeX ist ja
"logisches markup". D.h. wenn da ein Kaptel neu los geht schreibe ich
\chapter; und mache mir keinene Kopf darueber, wie es im Detail aussehen
wird, denn das haengt z.B. von der verwendeten Klasse ab. Wenn ich ein
Dokument habe, in dem nun \chapter ohne Seitenumbruch sein soll, dann
definiere ich \chapter um. Das ich dies dann ein einer sty-Datei mache und
nicht in einer mitgelieferten Klasse rummurkse versteht sich von selbst.

Zur urspruenglichen Frage moechte ich nur bemerken: Zu meiner Schulzeit
wurden Facharbeiten etwa 20 Seiten lang. Und selbst bei meiner Studien-
und Diplomarbeit, die dann doch etwas laenger war, bin ich ohne \chapter
ausgekommen. Vielleicht ist das Unbehagen beim Seitenumbruch vor dem
\chapter ein Warnzeichen, dass die falsche Klasse verwendet wurde.

Hans Friedrich
--
Dr.-Ing. Hans Friedrich Steffani
Nuernberg
***@e-technik.tu-chemnitz.de
http://www.steffani.de/hfst

--
FAQ: http://www.dante.de/faq/de-tex-faq/
Durchsuchbares Archiv: http://tinyurl.com/cdcb6
Unsubscribe/Verwaltung: http://tinyurl.com/b9tod
Harald Koenig
2009-11-17 17:33:16 UTC
Permalink
Post by Herbert Voss
- in die Dokumentation sehen; gibt es keine Lösung, dann
- "googeln"; gibt es keine Lösung, dann
- in die Quellen sehen (scrreprt.cls); gibt es keine Lösung, dann
hallo, gibts da wirklich keine loesung? die quellen sind alle plain ascii,
da kann man ja mal nach bekannten stichworten stochern, die richtige datei
hast du ja schon verraten;)

it's open source, so use the source, Luke!
und es ist wirlich nicht so schwer, z.b.:

mal nach "newpage" suchen, da findet man auch oft clearXYZpage -- \clearpage ist
die plainTeX variante von \newpage (fuer LaTeXer;). also kann man auch nach
clearpage suchen....

oder: einfach mal nach \chapter suchen -- das fuehrt ganz direkt zu

\newcommand\chapter{\***@openright\cleardoublepage\else\clearpage\fi
\thispagestyle{\chapterpagestyle}%
\global\@topnum\z@
\@afterindentfalse
\secdef\@chapter\@schapter
}

und wenn man da nun \cleardoublepage und \clearpage liest, dann kann man sich
ja mal fragen, was denn waere wenn die beiden befehle dort einfach fehlen wuerden...

also das ganze in "mychapter.sty" packen (wg. der klammeraffen)
und \usepackage{mychapter} et voila... vermutlich braucht man
noch einbissl extra vertical skip vor dem chapter statt ner neuen
seite, der LaTeXer nimmt dann mal einfach beherzt ein \vspace*{sonstwas;-}


das fand ich immer eine der grossen staerken von tex/latex/... dass man
allein mit grep/less/... code-schnippsel finden und dann recht einfach
kopieren/anpassen kann. das klappt natuerlich nicht ueberall so einfach,
und dank KOMA braucht man auch nicht mehr an allzu vielen stellen
derart mechanisch eingreifen, aber die moeglichkeit kann und sollte
man schon noch nutzen (sonst kann man ja gleich die schwarzen klecke
mit der maus in word rumschubsen;)
Post by Herbert Voss
In den Quellen siehst du, wie chapter definiert ist und kannst
den Befehl überschreiben und dann gegen jegliche typografische
Konvention verstoßen, wenn chapter nicht auf einer neuen Seite
beginnt ... :-)
oops, da seht ja doch noch die ganz-kurz-fassung dass und wie es geht;)
sorry, da haette ich mir die tipperei ja sparen koennen...



ich will auch immer emails zuerst ganz lesen bevor ich antworte [cross fingers;=],

Harald
--
"I hope to die ___ _____
before I *have* to use Microsoft Word.", 0--,| /OOOOOOO\
Donald E. Knuth, 02-Oct-2001 in Tuebingen. <_/ / /OOOOOOOOOOO\
\ \/OOOOOOOOOOOOOOO\
\ OOOOOOOOOOOOOOOOO|//
\/\/\/\/\/\/\/\/\/
Harald Koenig // / \\ \
***@tat.physik.uni-tuebingen.de ^^^^^ ^^^^^

--
FAQ: http://www.dante.de/faq/de-tex-faq/
Durchsuchbares Archiv: http://tinyurl.com/cdcb6
Unsubscribe/Verwaltung: http://tinyurl.com/b9tod
Wolfgang Schuster
2009-11-17 22:54:10 UTC
Permalink
Post by Arne Röhrs
Hallo,
ich habe da eher eine theoretische Frage.
Einige meiner Schüler schreiben ihre Facharbeit mit LaTeX nach einer Vorlage von mir.
Bei den Übungen zu LaTeX ist jetzt die Frage aufgetaucht, ob man in der Klasse \scrreprt den Seitenumbruch bei einem neuen Kapitel verhindern kann.
Natürlich kann man einfach eine andere Klasse nehmen,
... oder gleich auf ConTeXt umsteigen.

\setuphead[chapter][page=no]

Gruß,
Wolfgang

--
FAQ: http://www.dante.de/faq/de-tex-faq/
Durchsuchbares Archiv: http://tinyurl.com/cdcb6
Unsubscribe/Verwaltung: http://tinyurl.com/b9tod
Loading...