Hallo, eine Frage an die Experten: Ich habe den Vorschlag von esdd unter https://texwelt.de/fragen/26624/latex-seiten-auch-im-inhaltsverzeichnis-oben-nummerieren ausprobiert aber für ein Buch: \documentclass[twoside]{book} \usepackage{blindtext}% nur für Beispieltext \usepackage{tocloft} \tocloftpagestyle{headings} \pagestyle{headings} \begin{document} \tableofcontents \listoffigures \Blinddocument\Blinddocument\Blinddocument \Blinddocument\Blinddocument\Blinddocument \Blinddocument\Blinddocument\Blinddocument \end{document} Aber dann habe ich im Inhaltsverzeichnis auf der ersten Seite "CONTENTS" im Kopf stehen und auf der zweiten Seite sogar "LIST OF FIGURES". Da meine eigene Antwort auf die Frage dort offenbar nicht richtig ist und weil mit dem Beispiel auch \documentclass[twoside]{book} \usepackage{blindtext}% nur für Beispieltext \usepackage{tocloft} \tocloftpagestyle{headings} \makeatletter %\let\ps@plain\ps@headings% das hilft auch nicht \def\@mkboth#1#2{\markboth{#1}{}} \makeatother \pagestyle{headings} \begin{document} \tableofcontents \listoffigures \Blinddocument\Blinddocument\Blinddocument \Blinddocument\Blinddocument\Blinddocument \Blinddocument\Blinddocument\Blinddocument \end{document} auch gar nicht funktioniert, wüsste ich gerne, wie man das richtig macht. Zwar ist das nicht so dringend, weil ich bei meinem Buch mit meiner Lösung trotzdem zum Ziel gekommen bin. Aber vielleicht brauche ich das irgendwann einmal, falls ich doch wieder ein Buch mit Latex schreibe. Im Voraus schon einmal herzlichen Dank für die Mühe von Rainer. gefragt 17 Aug '20, 19:29 Rainer_Berli... cgnieder |
Nun, "wie es richtig macht" hängt von den Ansprüchen ab. Grundsätzlich gilt, dass du zwei Seitenstile für die rechten Seiten haben willst: einen nur mit Seitenzahl, und einen mit Text daneben. Während es zwar grundsätzlich möglich ist, das mit Tricks nur mit \pagestyle{headings} zu erreichen, halte ich Lösungen, die pagestyle plain auf pagestyle headings umbiegen nicht für sauber. Besser ist es book ist nicht gerade die ausgefeilteste Klasse (und die Kopfzeilen sind m.E. nicht unbedingt die schönsten), daher gibt es dafür keine Benutzerbefehle. Also hast du die Wahl
Letzteres ginge z.B. so \documentclass[twoside]{book} \usepackage{blindtext}% nur für Beispieltext \makeatletter \def\ps@plain{\let\@mkboth\@gobbletwo \let\@oddfoot\empty \def\@oddhead{~\hfil\thepage}% \let\@evenhead\@empty\let\@evenfoot\@oddfoot} \makeatother \pagestyle{headings} \begin{document} \tableofcontents \listoffigures \Blinddocument\Blinddocument\Blinddocument \Blinddocument\Blinddocument\Blinddocument \Blinddocument\Blinddocument\Blinddocument \end{document} beantwortet 17 Aug '20, 20:27 Ulrike Fischer Das sieht jetzt wieder so ähnlich aus wie meine Google-Lösung. Nur sind da noch mehr von diesen \@-Befehlen drin und für \@mkboth wird jetzt \let statt \def verwendet. Damit spart man sich wohl die Klammern. Jedenfalls habe ich gerade ausprobiert, ob es auch mit \def\@mkboth{\@gobbletwo} geht und das hat auch funktioniert. Dagegen funktioniert \def\@mkboth\@gobbletwo nicht. Langsam verstehe ich das. Außerdem scheint auch \renewcommand\@mkboth{\@gobbletwo} zu gehen. Was da jetzt aber der Unterschied ist? Mal sehen, was Googel sagt.
(18 Aug '20, 11:46)
Rainer_Berli...
Ah, ich habe es gefunden. \def geht für neue Befehle und zum Ändern von existierenden Befehlen. Dagegen geht \renewcommand nur für solche, die es schon gibt. Und dann gibt es noch \newcommand für neue Befehle.
(18 Aug '20, 11:49)
Rainer_Berli...
Übrigens gibt es unter weinelt.de tolle Erklärungen zu vielen Befehlen. \def und \let fehlen aber.
(18 Aug '20, 11:54)
Rainer_Berli...
1
@Rainer weinelt.de ist uralt und berücksichtigt LaTeX bis ca. 1994, vmtl. wegen des Alters/Links auch einer der ersten Google-Treffer.
(18 Aug '20, 11:58)
stefan ♦♦
@Rainer das golatex.de Wiki ist auch eine gute Quelle: \def und \newcommand und verwandte Befehle.
(18 Aug '20, 12:01)
stefan ♦♦
|
Statt dem Paket \usepackage[automark]{scrlayer-scrpage} \ohead*{\pagemark} Option Mit Damit ergibt also: \documentclass{book}% twoside ist Voreinstellung und kann daher entfallen \usepackage{blindtext}% nur für Beispieltext \usepackage[automark]{scrlayer-scrpage} \ohead*{\pagemark} \begin{document} \tableofcontents \listoffigures \Blinddocument\Blinddocument\Blinddocument \Blinddocument\Blinddocument\Blinddocument \Blinddocument\Blinddocument\Blinddocument \end{document} u. a. die (Doppel-)Seiten: Für das gleiche Ergebnis mit \documentclass[twoside]{book} \usepackage{blindtext}% nur für Beispieltext \usepackage{fancyhdr} \fancypagestyle{plain}{% \fancyhf{}% \fancyhead[RO,LE]{\thepage}% \renewcommand{\headrulewidth}{\plainheadrulewidth}% } \begin{document} \tableofcontents \listoffigures \Blinddocument\Blinddocument\Blinddocument \Blinddocument\Blinddocument\Blinddocument \Blinddocument\Blinddocument\Blinddocument \end{document} beantwortet 17 Aug '20, 20:16 gast3 Jetzt weiß ich natürlich wieder nicht, welche der Antworten die bessere ist. Ich habe dann einfach einmal für beide gestimmt. Ich hoffe, das war nicht wieder falsch. Die obere hier finde ich super einfach und habe sie auch gleich mit meinem Buch ausprobiert. Das hätte wirklich funktioniert und ist sogar kürzer als die Google-Lösung. Etwas abschreckend finde ich aber, dass die Anleitung zu dem Paket fast 600 Seiten hat. Dafür gibt es sie auf Deutsch. Na, mal sehen.
(18 Aug '20, 11:32)
Rainer_Berli...
@Rainer_Berli... Du kannst für alle Antworten stimmen, die Du gut findest. Das gilt sowohl für eigene Fragen als auch für die von anderen. Akzeptieren kannst Du dagegen immer nur eine Antwort auf eigene Fragen.
(18 Aug '20, 14:46)
esdd
|
Ich hoffe, das war jetzt so richtig. Das mit Strg-k hat bei mir nicht funktioniert. Da bin ich immer in der Adresszeile gelandet. Aber in meiner Markdown-Anleitung stand dann, dass man auch eine Zeile mit ``` am Anfang und Ende verwenden kann. Nur die Angabe von einer Sprache hat mit latex nicht funktioniert.
@Rainer Es sollte gehen mit zuerst Text markieren, dann Strg-K oder alternativ (auch wieder bei markiertem Text) den 101010-Button über dem Eingabefeld klicken. (oder es ist ein Javascript-Thema, wenn es gar nicht geht)
Im großen und ganzen war das so ziemlich perfekt. »Hallo« und den Dank im Voraus braucht es nicht. Aber sonst bin ich schwer beeindruckt.
Das Problem mit Ctrl-k hatte ich auch schon. Das passiert bei mir, wenn vor dem Drücken der Fokus aus dem Eingabefeld springt. Am Notebook passiert mir das schon einmal, wenn ich versehentlich über das Touchpad streife. Inzwischen verwende ich deshalb oft den von @stefan erwähnten Code-Button, der an den 1er und 0er zu erkennen ist.
Nur um Missverständnisse zu vermeiden: Das Paket
tocloft
diente in der verlinkten Antwort nicht zur Behebung des Problems, sondern dessen Verwendung war nur eine mögliche Ursache im Zusammenhang mit derarticle
Klasse. Wenn Du weder Verzeichniseinträge anpassen noch neue Verzeichnisse erstellen willst, brauchst Du das Paket gar nicht.Ich habe jetzt meine Antwort bei der verlinkten Frage gelöscht und dafür eine neue, passendere Frage mit dieser Antwort gestellt.