Defaulteinstellungen ändern?

Layout von Seiten, Rändern, Fusszeilen, usw, modifizieren


MSJones
Forum-Newbie
Forum-Newbie
Beiträge: 2
Registriert: Mi 21. Dez 2011, 00:47

Defaulteinstellungen ändern?

Beitrag von MSJones »

Hallo.
Ich benutz Latex noch nicht so lange und bitte daher von Anfängefehlern abzusehen.

Ich hab folgendes Problem:
Ich benutze Eclipse mit Texclipse um ein Buch zu erstellen.
Gut, ich denk mal, das Programm ist relativ egal, ist eher eine Sache der Einstellungen.

Hab erst mal folgenden Code:
%%This is a very basic article template.
%%There is just one section and two subsections.
\documentclass[pdf,final,12pt,a5paper,twoside,openany]{book}

%% Packages einbinden
\usepackage[ngerman]{babel} %% benutze Deutsche Sprache
\usepackage{blindtext,hyperref} %% Fuer A5 Papiererstellung
\usepackage{fancyhdr}

% Styledefinitionen
\pagestyle{fancy}

%% Header und Footer setzen
\fancyhf{} % clear all header and footer fields
\fancyfoot[LE,RO]{\thepage}
\renewcommand{\headrulewidth}{0.0pt}
\renewcommand{\footrulewidth}{0.0pt}

\title{Test}
\author{ich}

\begin{document}
\maketitle
\tableofcontents
\chapter {Testkapitel 1}
Text
\newpage
Text2
\newpage
Text3
\end{document}
Hab nach langem suchen und probieren die Seitenzahlen auf normalen Seiten nach unten rechts bzw. links legen können.
Nun hab ich aber noch das Problem, daß beim neuen Kapiten bzw. auch beim Inhaltsverzeichnis die Seitenzahlen trotzdem noch in der Mitte stehen.
Soweit ich das verstehe, liegt das an der Definition von "book":
\newcommand\chapter{\if@openright\cleardoublepage\else\clearpage\fi
                    \thispagestyle{plain}%
                    \global\@topnum\z@
                    \@afterindentfalse
                    \secdef\@chapter\@schapter}
Dies kann ich zwar im Moment umgehen, indem ich pro Kapitel "\thispagestyle{fancy}" dazuschreibe, aber ich möchte dies gerne generell ändern, aber ohne die Standarddefinition von book zu ändern.

Hab schon versucht die Standarddefinition zu überschreiben mit
\renewcommand\chapter{\if@openright\cleardoublepage\else\clearpage\fi
                    \thispagestyle{fancy}%
                    \global\@topnum\z@
                    \@afterindentfalse
                    \secdef\@chapter\@schapter}
aber da generier ich mir folgende Fehler:
Description Resource
Extra \endgroup. \tableofcontents (followed by: )
Missing \endgroup inserted. ...\numberline {1}Testkapitel 1}{3}{chapter.1} (followed by: )
Missing $ inserted. ...\numberline {1}Testkapitel 1}{3}{chapter.1} (followed by: )
Missing $ inserted. \chapter (followed by: {Testkapitel 1})
Missing $ inserted. \chapter (followed by: {Testkapitel 2})
Missing $ inserted. \end{document} (followed by: )
Missing $ inserted. \newpage (followed by: )
Missing $ inserted. \tableofcontents (followed by: )
Something's wrong--perhaps a missing \item. ...\numberline {1}Testkapitel 1}{3}{chapter.1} (followed by: )
Undefined control sequence: \chapter (followed by: {Testkapitel 1})
Undefined control sequence: \chapter (followed by: {Testkapitel 2})
Undefined control sequence: \tableofcontents (followed by: )
You can't use `\spacefactor' in math mode. \chapter (followed by: {Testkapitel 1})
You can't use `\spacefactor' in math mode. \chapter (followed by: {Testkapitel 2})
You can't use `\spacefactor' in math mode. \tableofcontents (followed by: )
You can't use `\spacefactor' in vertical mode. \chapter (followed by: {Testkapitel 1})
You can't use `\spacefactor' in vertical mode. \chapter (followed by: {Testkapitel 2})
You can't use `\spacefactor' in vertical mode. \tableofcontents (followed by: )

Kann mir bei dem Problem jemand helfen?
Vielen Dank schonmal im vorraus.

Xenara
Forum-Meister
Forum-Meister
Beiträge: 682
Registriert: Mi 25. Nov 2009, 09:41

Beitrag von Xenara »

Das "Problem" hast du schon richtig eingekreist, deine Umdefinition funktioniert eigentlich auch. Hast du \makeatletter ... \makeatother vergessen?
\documentclass[final,12pt,a5paper,twoside,openany]{book} % Option "pdf" existiert nicht! Treiberangaben sind sowieso überflüssig.

\usepackage[ngerman]{babel}
\usepackage{blindtext}
\usepackage{fancyhdr} 
\usepackage{hyperref}% Als letztes Paket laden!!!

\pagestyle{fancy} 

%% Header und Footer setzen 
\fancyhf{} % clear all header and footer fields 
\fancyfoot[LE,RO]{\thepage} 
\renewcommand{\headrulewidth}{0.0pt} 
\renewcommand{\footrulewidth}{0.0pt} 


\makeatletter
\renewcommand\chapter{\if@openright\cleardoublepage\else\clearpage\fi
                    \thispagestyle{fancy}%
                    \global\@topnum\z@
                    \@afterindentfalse
                    \secdef\@chapter\@schapter}
\makeatother


\title{Test} 
\author{ich} 

\begin{document} 
\maketitle 
\tableofcontents 
\chapter {Testkapitel 1} 
Text 
\newpage 
Text2 
\newpage 
Text3 
\end{document}  
Hat es eigentlich einen Grund, dass du book und nicht scrbook verwendest? Bei scrbook wäre das ganz einfach über \chapterpagestyle{fancy} zu ändern.

Noch ein paar Hinweise:
- Die Option "pdf" existiert nicht. Treiberangaben sind in den allermeisten Fällen sowieso überflüssig, da die Pakete von selbst merken, wie kompiliert wird.
- Das Paket "hyperref" wird in 90% der Fälle als letztes Paket geladen, da es viele Umdefinitionen vornimmt, was dann zu Fehlern führen kann. (Und imho ist es sowieso eine Unsitte, mehrere Pakete über einen \usepackage-Befehl zu laden. So kann man keine Optionen übergeben und bei der Fehlersuche nicht einfach auskommentieren.)

MSJones
Forum-Newbie
Forum-Newbie
Beiträge: 2
Registriert: Mi 21. Dez 2011, 00:47

Beitrag von MSJones »

Hast du \makeatletter ... \makeatother vergessen?
Das kannt ich nicht. Damit scheints aber zu funktionieren. Muß ich mir doch gleich mal anschauen, was genau die machen.
Die Option "pdf" existiert nicht.
Hab das irgendwo im Netz so gefunden und einfach übernommen. Aber dann jetzt auch wieder entfernt :-)
Das Paket "hyperref" wird in 90% der Fälle als letztes Paket geladen
Ist nach hinten verschoben.

Hat es eigentlich einen Grund, dass du book und nicht scrbook verwendest?
Naja, mit srcbook hätt ich wahrscheinlich genau das selbe versucht wie hier mit book und wäre genauso gescheitert.
Außerdem hat mir bei book gefallen, daß ich da stehen hab:
Kapitel 1
Kapitelname

OK, könnte man wohl bei srcbook auch generieren, da steht ja standardmäßig drin "1 Kapitelname", aber damit wärens noch mehr Umdefinitionen geworden, bei denen ich wohl gescheitert wäre :-)

Wie gesagt, hab noch nicht so viel Erfahrung mit Latex.

Und nochmals vielen Dank für die Hilfe.

Antworten