Definition einer Umgebung für Anhang nach jedem Kapitel

Redefinition von Makros, Definition eigener Befehle sowie neuer Umgebungen


lightlapreset
Forum-Anfänger
Forum-Anfänger
Beiträge: 11
Registriert: So 9. Aug 2015, 09:07

Definition einer Umgebung für Anhang nach jedem Kapitel

Beitrag von lightlapreset »

Hi!
Da sich das Layout und auch die Aufteilung der Kapitel in meinem Dokument geändert hat und das auch wahrscheinlich nicht das letzte mal gewesen sein wird wollte ich mir eine neue Umgebung für den Anhang definieren. Es soll nach jedem Kapitel einen eigenen Anhang geben, der eben nach Kapitel 1 die Überschrift A1, nach Kap. 2 die Überschrift A2 hat usw.
Dafür habe ich die Überschriften für den Anhang geändert und will diese Änderungen nach dem Anhang wieder rückgängig machen damit das nächste Kapitel wieder normal nummeriert wird, weil der Anhang ja normalerweise am Ende des gesamten Dokuments kommt und nicht nach jedem Kapitel.
Testweise hat das auch einwandfrei funktioniert, wenn ich alle Befehle vor den Inhalt meines Anhangs und schreibe und zum Schluss eben alle Änderungen wieder rückgängig mache. Jetzt wollte ich dazu aber eine Umgebung definieren, bei der ich den Anhang zwischen \begin{Anhang} und \end{Anhang} setze. Da zerschießt es mir die Nummerierung und ich bin ratlos. Der Befehl \renewcommand{\thechapter}{\arabic{chapter}} steht eigentlich doch schon in der Definition meiner Umgebung von \end{Anhang} - das funktioniert aber nur wie es soll, wenn ich nach den Befehl im Text \end{Anhang} \renewcommand{\thechapter}{\arabic{chapter}} nochmal schreibe.

Woran liegt das? Das ist doch eigentlich schon geändert!

Dazu habe ich ein MWE angehängt, das die Porblematik verdeutlicht. Beim Auskommentieren besagter Zeile wird die Nummerierung in eine alphabetische Kapitelnummerierung geändert. Für den Anhang vom zweiten Kapitel habe ich nur die entsprechenden Befehle vor und nach dem Anhang eingefügt, wie sie auch in der Definition der Umgebung stehen. Hier klappt es normal! Warum dann nicht mit der Umgebung?


\documentclass{scrbook}

\usepackage[ngerman]{babel}					% Sprachanpassungen
\usepackage[latin1]{inputenc}       		% Umlaute in .tex Datei erkennen  %%% in Linux statt latin1 utf8 verwenden
\usepackage{lipsum}
\usepackage{amsmath}


\newenvironment{Anhang}{
\newcounter{appendixchapterbegin}
\setcounter{appendixchapterbegin}{\value{chapter}}
\addtocounter{appendixchapterbegin}{-1}
\appendix
\renewcommand{\thechapter}{A\arabic{chapter}}
\renewcommand{\thesection}{A\arabic{chapter}.\arabic{section}}
\renewcommand{\thesubsection}{A\arabic{chapter}.\arabic{section}.\arabic{subsection}}
\renewcommand{\theparagraph}{A\arabic{chapter}.\arabic{section}.\arabic{subsection}.\arabic{paragraph}}
\renewcommand{\thefigure}{A\arabic{chapter}.\arabic{section}-\arabic{figure}}
\renewcommand{\thetable}{A\arabic{chapter}.\arabic{section}-\arabic{table}}
\numberwithin{equation}{section}
\renewcommand{\theequation}{A\arabic{chapter}.\arabic{section}-\arabic{equation}}
\setcounter{chapter}{\value{appendixchapterbegin}}
\chapter{Anhang}
}{
\newcounter{appendixchapterend}
%\\ \text{Das ist der erste Zähler in der end-Umgebung: }\theappendixchapterend \\% Zähler = 0
\setcounter{appendixchapterend}{\value{appendixchapterbegin}} 
\addtocounter{appendixchapterend}{1}
%\\ \text{Jetzt wird der Zähler der um eins reduzierten Kapitelnummerierung wieder um eins erhöht,}\\
%\text{damit das nächste Kapitel eine höhere Nummer bekommt: }\theappendixchapterend % Zähler = 1
\setcounter{chapter}{\value{appendixchapterend}}
\renewcommand{\thechapter}{\arabic{chapter}}
\renewcommand{\thesection}{\arabic{chapter}.\arabic{section}}
\renewcommand{\thesubsection}{\arabic{chapter}.\arabic{section}.\arabic{subsection}}
\renewcommand{\theparagraph}{\arabic{chapter}.\arabic{section}.\arabic{subsection}.\arabic{subsubsection}.\arabic{paragraph}}
\renewcommand{\thefigure}{\arabic{chapter}.\arabic{section}-\arabic{figure}}
\renewcommand{\thetable}{\arabic{chapter}.\arabic{section}-\arabic{table}}
\numberwithin{equation}{section}
\renewcommand{\theequation}{\arabic{chapter}.\arabic{section}-\arabic{equation}}
%\\\text{Die definierter Nummer vom Kapitel (letzte Zeile in der end-Umgeb.): } \thechapter % Zähler = 1 vom chapter!
}




\begin{document}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% KAPITEL 1
\chapter{Erstes Kapitel}
\lipsum

\begin{Anhang}
\section{Erste Section des Anhangs}
Hier soll der Anhang vom ersten Kapitel stehen.
\end{Anhang}
% Wenn die folgende Zeile nicht auskommentiert ist, funktioniert das ganze einwandfrei. Diese Zeile steht aber doch auch für das Beenden der definierten Umgebung da. Wieso brauche ich diese Zeile dann nochmal außerhalb meiner Definition?
%\renewcommand{\thechapter}{\arabic{chapter}}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% KAPITEL 2

\chapter{Zweites Kapitel}
\section{Erstes Unterkapitel vom Zweiten Kapitel}
Wenn voriger Befehl \verb|\renewcommand{\thechapter}{\arabic{chapter}}| nicht auskommentiert ist, steht anstatt der 2 ein B. Nur wenn man den Befehl nach dem \verb|\end{Anhang}| nochmals schreibt, funktioniert alles. Dabei steht dieser Befehl eigentlich schon in der Definition der Umgebung.


\newcounter{appendixchapterbegin}
\setcounter{appendixchapterbegin}{\value{chapter}}
\addtocounter{appendixchapterbegin}{-1}
\appendix
\renewcommand{\thechapter}{A\arabic{chapter}}
\renewcommand{\thesection}{A\arabic{chapter}.\arabic{section}}
\renewcommand{\thesubsection}{A\arabic{chapter}.\arabic{section}.\arabic{subsection}}
\renewcommand{\theparagraph}{A\arabic{chapter}.\arabic{section}.\arabic{subsection}.\arabic{paragraph}}
\renewcommand{\thefigure}{A\arabic{chapter}.\arabic{section}-\arabic{figure}}
\renewcommand{\thetable}{A\arabic{chapter}.\arabic{section}-\arabic{table}}
\numberwithin{equation}{section}
\renewcommand{\theequation}{A\arabic{chapter}.\arabic{section}-\arabic{equation}}
\setcounter{chapter}{\value{appendixchapterbegin}}
\chapter{Anhang}

\section{Erste Section des Anhangs}
Hier soll der Anhang vom zweiten Kapitel stehen.

\newcounter{appendixchapterend}
\setcounter{appendixchapterend}{\value{appendixchapterbegin}} 
\addtocounter{appendixchapterend}{1}
\setcounter{chapter}{\value{appendixchapterend}}
\renewcommand{\thechapter}{\arabic{chapter}}
\renewcommand{\thesection}{\arabic{chapter}.\arabic{section}}
\renewcommand{\thesubsection}{\arabic{chapter}.\arabic{section}.\arabic{subsection}}
\renewcommand{\theparagraph}{\arabic{chapter}.\arabic{section}.\arabic{subsection}.\arabic{subsubsection}.\arabic{paragraph}}
\renewcommand{\thefigure}{\arabic{chapter}.\arabic{section}-\arabic{figure}}
\renewcommand{\thetable}{\arabic{chapter}.\arabic{section}-\arabic{table}}
\numberwithin{equation}{section}
\renewcommand{\theequation}{\arabic{chapter}.\arabic{section}-\arabic{equation}}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% KAPITEL 3
\chapter{Drittes Kapitel}
\section{Erstes Unterkapitel vom Dritten Kapitel}
Wie man sieht funktioniert die Kapitelnummerierung ganz normal, wenn man alle Befehle um den Anhang schreibt.

\end{document}

Bin um jeden Ratschlag dankbar!

EDIT: Im Online-Editor ist die auskommentierte Zeile 67, die Zeile um die es in der Beschreibung geht ;)

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

Wenn Du die Umdefinition der Zählerausgabe in einer Umgebung statt finden lässt, dann ist sie nur lokal wirksam. Dagegen wirkt \appendix offensichtlich global und definiert die Zählerausgabe für die Kapitel mit großen Buchstaben.
\documentclass{scrbook} 
\usepackage[ngerman]{babel}
\usepackage[latin1]{inputenc}             
\usepackage{lipsum}
\usepackage{amsmath}

\renewcommand{\thefigure}{\thesection-\arabic{figure}} 
\renewcommand{\thetable}{\thesection-\arabic{table}} 
\numberwithin{equation}{section}
\renewcommand{\theequation}{\thesection-\arabic{equation}} 

\newenvironment{Anhang}{%
  \renewcommand{\thechapter}{A\arabic{chapter}}%
  \addtocounter{chapter}{-1}%
  \chapter{Anhang}%
}{} 

\begin{document} 
\chapter{Erstes Kapitel} 
\lipsum 
\begin{Anhang} 
\section{Erste Section des Anhangs} 
 Hier soll der Anhang vom ersten Kapitel stehen. 
\end{Anhang} 

\chapter{Zweites Kapitel} 
\section{Erstes Unterkapitel vom Zweiten Kapitel} 
 \lipsum[1]
\begin{Anhang}
\section{Erste Section des Anhangs} 
 Hier soll der Anhang vom zweiten Kapitel stehen.
\end{Anhang}
\chapter{Drittes Kapitel} 
\section{Erstes Unterkapitel vom Dritten Kapitel} 
 \lipsum
\end{document} 

lightlapreset
Forum-Anfänger
Forum-Anfänger
Beiträge: 11
Registriert: So 9. Aug 2015, 09:07

Beitrag von lightlapreset »

Und wieder was dazu gelernt!

Danke für die Lösung - funktioniert wirklich einwandfrei! :D

Antworten