Anhangverzeichnis ähnlich zu Tabellenverzeichnis

Inhalt, Abbildungen, Tabellen, Quellcodes und andere Verzeichnisse


DerArbeitenschreiberling
Forum-Anfänger
Forum-Anfänger
Beiträge: 33
Registriert: Fr 31. Mär 2017, 18:28

Anhangverzeichnis ähnlich zu Tabellenverzeichnis

Beitrag von DerArbeitenschreiberling »

Hallo, ich schreibe mal wieder ein wissenschaftliche Arbeit mit entsprechend strengen Vorgaben. Soweit habe ich mir alles Nötige aus dem Internet zusammensuchen können. Es bleibt nur noch das Anhangsverzeichnis.

Die Vorgabe verlangt, dass der Anhang (sofern er aufgrund seiner Größe nicht extra gebundet wird -- das kann ich noch nicht sicher sagen, weshalb ich den Eintrag ggf. entfernen können möchte) im Inhaltsverzeichnis anzukündigen ist. Die konkreten Inhalte des Anhangs folgen nach einem ankündigenden Deckblatt im Anhangsverzeichnis. Diese Vorgaben konnte ich soweit mit dem appendixtoc Paket von Markus Kohm realisieren.

Leider gibt es auch spezielle Vorgaben für das Anhangsverzeichnis. So soll es grundsätzlich wie ein Tabellen- oder Abbildungsverzeichnis (siehe Standards in LaTeX) aussehen. Jeder Eintrag soll als "Anhang X <Anhangtitel> . . . . A-X" formatiert sein, wobei X die entsprechende Anhangsnummer darstellt. Die Seitennummerierung ist ebenfalls durch die jeweilige "A-X" Anhangsnummer zu ersetzen.

Könnt ihr mir ein paar Hinweise geben, wie ich das hier realisieren kann? Die Standardvariante von Markus Kohm sieht eher wie ein Inhaltsverzeichnis aus. Ich verwende übrigens die Dokumentenklasse scrbook zum Schreiben meiner Arbeit.
Zuletzt geändert von DerArbeitenschreiberling am Mi 15. Mai 2019, 19:21, insgesamt 1-mal geändert.

Bartman
Forum-Meister
Forum-Meister
Beiträge: 2456
Registriert: Do 16. Jul 2009, 21:41
Wohnort: Hessische Provinz

Re: Anhangverzeichnis ähnlich zu Tabellenverzeichnis mit

Beitrag von Bartman »

DerArbeitenschreiberling hat geschrieben:Diese Vorgaben konnte ich soweit mit dem appendixtoc Paket von Markus Kohm realisieren.
Es gibt bereits eine neuere Variante.

DerArbeitenschreiberling
Forum-Anfänger
Forum-Anfänger
Beiträge: 33
Registriert: Fr 31. Mär 2017, 18:28

Schon nah dran, aber noch nicht perfekt

Beitrag von DerArbeitenschreiberling »

Danke für deinen Hinweis mit der neueren Variante des Pakets/Macros von Markus Kohm. Das ist auf jeden Fall nochmal etwas vielseitiger als das, was ich vorher benutzt habe.

Ausgehend davon sah ich jetzt zwei Möglichkeiten: Entweder ich nehme das Tabellenverzeichnis für den Anhang her und missbrauche es, indem ich manuell Einträge dort mittels \addcontentsline registriere, oder ich nehme das Inhaltsverzeichnis für den Anhang her und versuche es nach meinen Formatierungswünschen umzugestalten. Letztere Variante erschien mir sauberer.

Dabei ist mir aufgefallen, dass tocloft ebenfalls die Möglichkeit bietet, eigene Verzeichnisse zu definieren. Die Variante kam mir letztendlich am besten vor, weshalb ich es auch so gemacht habe:
\documentclass[oneside, ngerman, 12pt]{scrbook}

\usepackage{tocloft}

\usepackage{babel}
\usepackage{blindtext}
\usepackage{hyperref}

\usepackage{scrpage2} % Für Kontrolle über Kopf- und Fußzeile

%+------------------------------------------------------------------------------+
%| Anhangsverzeichnis vorbereiten                                               |
%+------------------------------------------------------------------------------+
\newlistof{appendix}{loa}{Anhangsverzeichnis}

%% Einträge Formatieren
\renewcommand{\cftappendixpresnum}{Anhang }
\settowidth{\cftappendixnumwidth}{Anhang 10\hspace{.5em}}
\setlength{\cftappendixindent}{\cfttabindent} % Gleiche Einrückung wie bei Tabellen
\renewcommand{\cftappendixaftersnumb}{}

%\cftpagenumbersoff{appendix}

%% Kommando zum Erstellen von Einträgen definieren
\newcommand{\newappendix}[1]{%
	\clearpage
	\refstepcounter{appendix}
	%	\par\noindent\textbf{Anhang \theappendix. #1}
	%	\chapter*{Anhang \theappendix: #1}
	\section*{Anhang \theappendix: #1}
	\addcontentsline{loa}{appendix}{\protect\numberline{\theappendix}\quad#1}\par
}

%+------------------------------------------------------------------------------+
%| Beispieldokument                                                             |
%+------------------------------------------------------------------------------+
\pagestyle{plain}
\begin{document}
	%% DOKUMENT
	\tableofcontents
	
	\blinddocument
	
	
	%% ANHANG-TITELSEITE
	\addcontentsline{toc}{chapter}{Anhang}
	\begin{titlepage}
		\Huge\bfseries
		Anhang
	\end{titlepage}
	
	%% Footer / Seitenzahl anpassen
	\pagestyle{scrheadings}
	\clearscrheadfoot
	\cfoot{\normalfont A-\arabic{appendix}}
	
	%% ANHANG-INHALTSVERZEICHNIS
	\listofappendix\clearpage
	
	%% ANHANG-INHALT
	\newappendix{Erster Anhang}
	
	\blindtext
	
	\newappendix{Zweiter Anhang}
	
	\Blindtext[3]
	
\end{document}
Das sieht doch schon ganz gut aus. Nun bleibt bloß noch ein Problem: Statt "Anhang 1 Erster Anhang ... 8" benötige ich "Anhang 1 Erster anhang ... A-1". Leider wird es hier etwas schwieriger:
  • Es ist nicht ohne weiteres möglich, die Seitennummern rechts auszuschalten. Tut man dies mittels \cftpagenumbersoff, so verschwinden auch die Punkte, die den Text nach rechts treiben.
  • Die Nutzung von \theappendix funktioniert nicht bei \cftappendixafterpnum und gibt lediglich die 0 zurück, sodass ich Schwierigkeiten habe, das A-X je nach Anhangsnummer X zu realisieren
Meine Idee bezüglich des ersten Problems wäre, bei \cftappendixpagefont ein Kommando einzusetzen, das jeden Text in der gleichen Gruppe "verschluckt", ähnlich wie \bfseries jeglichen nachfolgenden Text in einer Gruppe fett macht. Dann könnte ich ohne weiteres \cftappendixafterpnum umdefinieren, und es würde aussehen, als wäre es selbst die Seitennummer.
Gibt es so ein Kommando?

Für das zweite Problem fällt mit spontan keine Lösung ein. Wisst ihr vielleicht etwas, was man tun könnte, um die A-X zu setzen? Vielleicht tut es ja ein extra Counter, der bei jedem Auslesen erhöht wird..

Und falls ihr es wisst: Ich fände es schön, wenn man beim Klick auf "Anhang" im vollen Inhaltsverzeichnis am Anfang entweder auf das Deckblatt des Anhanges, oder aber gleich aufs Anhangsverzeichnis geleitet wird. Meine bisherige Realisierung scheint das nicht ganz zu bewerkstelligen. Vielleicht auch hier eine Idee?
Zuletzt geändert von DerArbeitenschreiberling am Mo 13. Mai 2019, 22:24, insgesamt 1-mal geändert.

Gast

Beitrag von Gast »

tocloft mit KOMA-Script wird ausdrücklich nicht empfohlen. Warum verwendest Du nicht die Möglichkeiten von KOMA-Script? Mit der tocbasic-Lösung funktioniert auch die Verlinkung.

DerArbeitenschreiberling
Forum-Anfänger
Forum-Anfänger
Beiträge: 33
Registriert: Fr 31. Mär 2017, 18:28

Na ja..

Beitrag von DerArbeitenschreiberling »

Ich habe mir jetzt Abschnitt 15.3 ab Seite 396 der KOMA-Script Anleitung durchgelesen. Hier geht es um die Konfiguration von Verzeichniseinträgen mit tocbasic, also genau das, was ich gerade vor habe. Am wichtigsten ist für mich wohl die Tabelle 15.1, welche diverse Optionen für die Eintragsstile auflistet.

Zu nutzen ist offensichtlich der Stil tocline, eben weil er mit diesen vielen Optionen so anpassbar ist. Leider sehe ich hier keine Optionen, die mir bei meinem Problem weiterhelfen. Ich könnte wieder versuchen pagenumberformat=befehl so anzupassen, dass die Seitennummer von einem "fontkommando" geschluckt wird, aber dann habe ich ja genau die selben Fragen wie jetzt bei tocloft. Möglichkeiten, eigenen Text vor oder nach bestimmte Positionen zu setzen, wie sie tocloft bietet, habe ich keine gesehen.

Damit könnte es auch schwierig werden, das Wörtchen "Anhang" vor jeden Eintrag zu setzen.. außer vielleicht indem ich es bei entryformat=befehl oder entrynumberformat=befehl einsetze? Wirklich schön kommt mir diese Lösung nicht vor, wenn sie denn überhaupt funktioniert.

Alles in allem bin ich von tocbasic noch nicht so überzeugt. Ich weiß ehrlich gesagt auch nicht, wieso die Verlinkung auf das Anhangstitelblatt gerade mit tocbasic funktionieren sollte. Immerhin wird das Problem doch eher darin liegen, dass ein Anker/Node inkorrekt gesetzt wird, oder? Alle anderen Verlinkungen funktionieren ja einwandfrei.

Vielleicht kannst du mir ja mal ein Minimalbeispiel vorführen, das zeigt, wie man meine Anforderungen mit tocbasic realisieren könnte?

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

Re: Anhangverzeichnis ähnlich zu Tabellenverzeichnis mit

Beitrag von esdd »

DerArbeitenschreiberling hat geschrieben: Jeder Eintrag soll als "Anhang X <Anhangtitel> . . . . A-X" formatiert sein, wobei X die entsprechende Anhangsnummer darstellt. Die Seitennummerierung ist ebenfalls durch die jeweilige "A-X" Anhangsnummer zu ersetzen.
Das hört sich für mich sehr, sehr seltsam an. Kann es nicht vielleicht sein, dass auf der Seite mit dem ersten Anhang die Seitennummerierung neu beginnt, also mit "A-1" etc. und in Deiner Vorlage nur zufällig die Nummern des Anhangs mit den jeweiligen Seitennummern übereinstimmen?

Welche Seitennummern bekommen das Deckblatt des Anhangs und das Inhaltsverzeichnis des Anhangs?

Im Normalfall sind die Anhänge bei scrbook übrigens Kapitel und nicht Abschnitte. Der Präfix "Anhang" soll auch in den Überschriften selbst vor der jeweiligen Nummer erscheinen?

Falls es Abbildungen und/oder Tabellen im Anhang gibt: werden die auch in ein Verzeichnis eingetragen? Welches?

Das Wort "Anhang" vor Einträge im Anhangsverzeichnis zu setzen, ist mit tocbasic kein Problem.

Wie Gast schon gesagt hat, ist es keine gute Idee tocloft mit einer KOMA-Script Klasse zu verwenden. Das Paket scrpage2 ist übrigens seit über 5 Jahren veraltet. Verwende besser dessen Nachfolger scrlayer-scrpage.

DerArbeitenschreiberling
Forum-Anfänger
Forum-Anfänger
Beiträge: 33
Registriert: Fr 31. Mär 2017, 18:28

Wie wär's hiermit?

Beitrag von DerArbeitenschreiberling »

Kann es nicht vielleicht sein, dass auf der Seite mit dem ersten Anhang die Seitennummerierung neu beginnt, also mit "A-1" etc. und in Deiner Vorlage nur zufällig die Nummern des Anhangs mit den jeweiligen Seitennummern übereinstimmen?
Das kann in der Tat sein! Im Leitfaden ist es leider nicht ersichtlich, aber nachdem ich jetzt einige echte Arbeiten betrachtet habe, scheint das wohl eher zuzutreffen.
Gut, das heißt die Seitennummerierung wird im Anhang zurückgesetzt und jeweils mit einem Präfix "A-" versehen. Ich habe das einfach durch Umdefinieren von \thepage gelöst.
Und siehe da: die A-X Seitennummierung wird so automatisch richtig im Tabellenverzeichnis eingetragen! Hätte ich das doch nur vorher schon gewusst..

Nun ja, zu den Vorgaben:
  • Die Nummerierung des Deckblatts geht ebenfalls nicht aus dem Leitfaden hervor. In den meisten mir vorliegenden Beispielarbeiten wurde das Deckblatt weiterhin römisch gezählt, genau wie Inhalts, Tabellen, Literaturverzeichnis, etc.
  • Das Anhangsverzeichnis hat die Seitennummerierung "A-I" (und vermutlich weitere römische Nummerierung falls es mehrere Seiten benötigt)
  • Abbildungen und Tabellen im Anhang wurden nicht weiter besprochen -- die Anhänge werden sowieso größtenteils selbst entweder pure Abbildungen bzw. Tabellen, oder aber puren Text darstellen.
Das Wort "Anhang" vor Einträge im Anhangsverzeichnis zu setzen, ist mit tocbasic kein Problem.
Da ich die Option ja beim ersten Mal schon nicht gefunden habe, musste ich jetzt nochmal genauer suchen. Ich habe jetzt ein Anhangsverzeichnis erstellt; ob meine Methodik so sauber und richtig ist, dürft ihr bitte bewerten:
\documentclass[oneside, ngerman, 12pt]{scrbook}

\usepackage{showframe}

\usepackage{babel}
\usepackage{blindtext}
\usepackage[hidelinks]{hyperref}

%+------------------------------------------------------------------------------+
%| Anhangsverzeichnis vorbereiten                                               |
%+------------------------------------------------------------------------------+

\newlength{\appendixnumwidth}
\settowidth{\appendixnumwidth}{Anhang 00}

\newlength{\appendixpnumwidth}
\settowidth{\appendixpnumwidth}{A-00}
\DeclareNewTOC[
	listname={Anhangsverzeichnis},
	name={Anhang},
	nonfloat,
	atbegin=\newappendix, % TODO: warum tut atbegin nichts?
%	tocentryraggedpagenumber=true,
	type=appendix, % used for macro declarations
	types=appendices,
	tocentrystyle=tocline,
	tocentryentrynumberformat={\appendixname\ },
	tocentrynumwidth=\appendixnumwidth,
	tocentrynumsep=1em,
	tocentrydynnumwidth=true,
	tocentrypagenumberbox={\parbox{.5\appendixnumwidth}}, % TODO: Warum .5 statt komplett?
	owner=\jobname
]
{loa}

\newcommand{\newappendix}[1]{%
	\clearpage
	\refstepcounter{appendix}
%	\setcounter{page}{\value{appendix}}
	%	\par\noindent\textbf{Anhang \theappendix. #1}
	%	\chapter*{Anhang \theappendix: #1}
	\section*{Anhang \theappendix: #1}
%	\label{apx:\theappendix}
	\addxcontentsline{loa}{appendix}[\theappendix]{#1}
}

%+------------------------------------------------------------------------------+
%| Beispieldokument                                                             |
%+------------------------------------------------------------------------------+
\pagestyle{plain}
\begin{document}
	%% DOKUMENT
	\tableofcontents
	
	\blinddocument
	
	
	%% ANHANG-TITELSEITE
	\addxcontentsline{toc}{chapter}{Anhang}
	\begin{titlepage}
		\Huge\bfseries
		Anhang
	\end{titlepage}
	
	%% ANHANGSVERZEICHNIS
	\listofappendices
	\setcounter{page}{1}
	\renewcommand{\thepage}{A-\Roman{page}}
	
	%% ANHÄNGE
	\clearpage
	\setcounter{page}{1}
	\renewcommand{\thepage}{A-\arabic{page}}
	
	\newappendix{Neuer Anhang}
	\newappendix{Neuer Anhang}
	\setcounter{appendix}{10}
	\newappendix{Neuer Anhang}
	\setcounter{page}{10}
	
	%% Nochmal mit automatisch definierter Umgebung zum Test
	\begin{appendix}
		Mein neuer Anhang
	\end{appendix}
\end{document}
Da ich schon die Möglichkeit habe, möchte ich auch die automatisch erstellte Umgebungsdefinition für Anhänge nutzen (macht den Code immerhin etwas übersichtlicher). Leider scheint atbegin=code nichts zu tun. Mache ich etwas falsch?

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

Re: Wie wär's hiermit?

Beitrag von esdd »

DerArbeitenschreiberling hat geschrieben:
Nun ja, zu den Vorgaben:
  • Die Nummerierung des Deckblatts geht ebenfalls nicht aus dem Leitfaden hervor. In den meisten mir vorliegenden Beispielarbeiten wurde das Deckblatt weiterhin römisch gezählt, genau wie Inhalts, Tabellen, Literaturverzeichnis, etc.
  • Das Anhangsverzeichnis hat die Seitennummerierung "A-I" (und vermutlich weitere römische Nummerierung falls es mehrere Seiten benötigt)
Das hört sich nach einem chaotischen bzw. verwirrenden System der Seitennummerierung an. Ich würde die Nummerierung so wenig als möglich wechseln und vorallem nicht erst römisch, dann arabisch und dann die bereits angefangene römische Nummererierung fortsetzen.


Nun zu den Fragen in Deinem Code:
DerArbeitenschreiberling hat geschrieben:
...
tocentrypagenumberbox={\parbox{.5\appendixnumwidth}}, % TODO: Warum .5 statt komplett?
...
]
{loa}
...
Da fehlt das "p" zwischen "appendix" und "numwidth" in der von Dir definierten Längenanweisung. Du wolltest eigentlich
tocentrypagenumberbox={\parbox{1\appendixpnumwidth}}


DerArbeitenschreiberling hat geschrieben:
\DeclareNewTOC[
   ...
   nonfloat,
   atbegin=\newappendix, % TODO: warum tut atbegin nichts?
%   tocentryraggedpagenumber=true,
   type=appendix, % used for macro declarations
  ...
]
{loa}
Da ich schon die Möglichkeit habe, möchte ich auch die automatisch erstellte Umgebungsdefinition für Anhänge nutzen (macht den Code immerhin etwas übersichtlicher). Leider scheint atbegin=code nichts zu tun. Mache ich etwas falsch?
Die Option nonfloat definiert eine nicht gleitende Umgebung appendix-. Beachte dabei das - am Ende des Umgebungsnamens. Der Versuch mittels Option float in obigem Beispiel Gleitumgebung mit Namen appendix zu definieren, würde übrigens zu einer Fehlermeldung führen, da \appendix bereits als Anweisung definiert ist.

Mit dem, was ich aus Deinen Informationen verstanden habe, würde ich das ganze aber eher in folgender Richtung angehen:
\documentclass[oneside, ngerman, 12pt,
  numbers=noenddot% kein Punkt nach beispielsweise Gliederungsnummern
]{scrbook}
\usepackage{babel}
\usepackage{xpatch}% zum Patchen von beispielsweise \appendix

\usepackage{showframe}% zum Anzeigen des Seitenlayouts
\usepackage{blindtext}% für Fülltext

\usepackage[hidelinks]{hyperref}% warum sollen die Links versteckt werden?
\usepackage{bookmark}% wenn hyperref, dann am besten auch bookmark

\DeclareNewTOC[%
  listname={Anhangsverzeichnis},%
  owner=\jobname
]{loa}

\newlength{\appendixpnumwidth}
\newcommand*\entrynumberwithprefix[2]{#1~#2}

\BeforeStartingTOC[loa]{%
  \renewcommand*\autodot{:}%
  \settowidth{\appendixpnumwidth}{{\usekomafont{chapterentry}A-00}}%
  \DeclareTOCStyleEntries[%
    dynnumwidth,%
    entrynumberformat=\entrynumberwithprefix{\appendixname},%
    pagenumberbox={\makebox[\appendixpnumwidth][l]}%
  ]{default}{chapter,section,subsection}%
}

\makeatletter
\newcommand*{\useappendixtocs}{%
  \renewcommand*{\ext@toc}{loa}%
  \scr@ifundefinedorrelax{hypersetup}{}{%
    \hypersetup{bookmarkstype=loa}%
  }%
}
\DeclareTOCStyleEntry[%
  beforeskip=1em plus 1pt,
  entryformat=\usekomafont{chapterentry},%
  pagenumberformat=\usekomafont{chapterentry}\usekomafont{chapterentrypagenumber},%
  %pagenumberformat=\@gobble% falls Seitenzahl nicht im TOC angezeigt werden soll
]{tocline}{part}% Eintrag von Teilen im TOC wie Kapitel
\makeatother
%\renewcommand*{\partpagestyle}{empty}% keine Seitenzahl auf Teile-Seiten

\xapptocmd\appendix{%
  \renewcommand*\thechapter{\arabic{chapter}}%
  \renewcommand*\chapterformat{\appendixname~\thechapter:\enskip}%
  \renewcommand*\chaptermarkformat{\appendixname~\thechapter:\enskip}%
  \renewcommand*\sectionformat{\appendixname~\thesection:\enskip}%
  \renewcommand*\subsectionformat{\appendixname~\thesubsection:\enskip}%
  \addpart{\appendixname}
  \cleardoubleoddpage
  \setcounter{page}{1}
  \renewcommand*{\thepage}{A-\roman{page}}%
  \useappendixtocs
  \listofloas
  \cleardoubleoddpage
  \setcounter{page}{1}%
  \renewcommand*{\thepage}{A-\arabic{page}}%
}{}{}

\begin{document}
\frontmatter
\tableofcontents
\mainmatter
\blinddocument
\appendix
\chapter{Ein Anhang}
\Blindtext[3]
\blinddocument
%
\cleardoubleoddpage\setcounter{page}{89}% nur für das Beispiel
%
\blinddocument
\end{document}
Zuletzt geändert von esdd am Mi 15. Mai 2019, 17:28, insgesamt 1-mal geändert.

DerArbeitenschreiberling
Forum-Anfänger
Forum-Anfänger
Beiträge: 33
Registriert: Fr 31. Mär 2017, 18:28

Beitrag von DerArbeitenschreiberling »

esdd hat geschrieben: Das hört sich nach einem chaotischen bzw. verwirrenden System der Seitennummerierung an.
Das mag wohl sein. Die Idee dahinter ist wahrscheinlich, Hauptteil (die eigentliche Arbeit mit arabischen Ziffern) und Nebenteil (Inhaltsverzeichnis, Literatur, Anhang, also alles was davor und danach kommt mit römischen Ziffern) visuell zu trennen. Das Prinzip wiederholt sich dann für den Anhang (auch hier wieder römische Ziffern für etwaige Verzeichnisse, und arabische Ziffern für den eigentlichen "Inhalt", jedoch jeweils mit Präfix "A-" ). Ob das so sinnvoll bzw. eine saubere Umsetzung ist sei mal dahingestellt -- einhalten muss ich die Formalien ja trotzdem.

Zu Deiner Lösungsidee:
  • hidelinks bei hyperref habe ich nur aus persönlicher Präferenz angewendet. Ich empfinde die Boxen eher als störend. Ich gehe auch nicht davon aus, dass der Lehrstuhl farblich hinterlegte Links sehen wollen würde.
  • Deine \appendix Definition wirft bei mir leider den Fehler "Undefined control sequence". Mit einem Blick auf den Output wird klar, dass das Problem irgendwie bei \DeclareTocStyleEntries für {chapter,section,subsection} liegt. Ich kann das genaue Problem nicht identifizieren. Daher habe ich es erst einmal auskommentiert.
  • Offenbar schlägst Du vor, den Anhang wie das Inhaltsverzeichnis aufzubauen, bloß eben mit Präfix "Anhang X{.X}:" vor jedem Eintrag? Bei einer größeren Arbeit mit vielen Anhängen ist das sicherlich sinnvoll, aber in die Richtung gingen wir ja schon bei der Kommandoversion von Markus Kohm, auf die Bartman hingewiesen hat. Es ist tatsächlich ein zentraler Punkt der Frage, dass das Anhangsverzeichnis in etwa wie ein Tabellenverzeichnis, also so wie in meinem letzten Codebeispiel, aussieht; hier bin ich mir in der Vorgabe sicher.
Ich sehe dennoch einige gute Ideen in deinem Vorschlag. Unter anderem die Herangehensweise zur Setzung eines Doppelpunkt (:) nach der Gliederungsnummer sowie das Nutzen von Part auf der Anhangstitelseite werde ich übernehmen. Auch ein Dankeschön für die Beantwortung der Fragen zu meinem Code.

Bezüglich der appendix- Umgebungen fällt mir auf, dass \clearpage und ebenso \pagebreak keine Wirkung mehr zeigt. Ist das ein allgemeines Problem von Umgebungen? Muss ich doch auf das einfache \newappendix-Kommando zurückgreifen, oder gibt es hier eine saubere Lösung?

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

Beitrag von esdd »

DerArbeitenschreiberling hat geschrieben: Die Idee dahinter ist wahrscheinlich, Hauptteil (die eigentliche Arbeit mit arabischen Ziffern) und Nebenteil (Inhaltsverzeichnis, Literatur, Anhang, also alles was davor und danach kommt mit römischen Ziffern) visuell zu trennen. Das Prinzip wiederholt sich dann für den Anhang (auch hier wieder römische Ziffern für etwaige Verzeichnisse, und arabische Ziffern für den eigentlichen "Inhalt", jedoch jeweils mit Präfix "A-" ). Ob das so sinnvoll bzw. eine saubere Umsetzung ist sei mal dahingestellt -- einhalten muss ich die Formalien ja trotzdem.
An diesen seltsamen Vorgaben wird sich wohl nie etwas ändern ... Schau mal zum Vergleich in ein paar Fachbücher.
DerArbeitenschreiberling hat geschrieben: Deine \appendix Definition wirft bei mir leider den Fehler "Undefined control sequence". Mit einem Blick auf den Output wird klar, dass das Problem irgendwie bei \DeclareTocStyleEntries für {chapter,section,subsection} liegt. Ich kann das genaue Problem nicht identifizieren. Daher habe ich es erst einmal auskommentiert.
Dann verwendest Du eine etwas ältere KOMA-Script Version. Ist aber auch egal, da Du offensichtlich sowieso nur eine Gliederungsebene im Anhang brauchst. Die soll dann einerseits wie die Abschnittsüberschriften im eigentlichen Dokument aussehen und andererseits immer eine neue Seite beginnen wie Kapitel? Hört sich auch unsystematisch an, geht aber beispielsweise auch über die Definition einenr passenden neuen Gliederungsebene:
\documentclass[oneside, ngerman, 12pt, 
  numbers=noenddot% kein Punkt nach beispielsweise Gliederungsnummern 
]{scrbook} 
\usepackage{babel} 
\usepackage{xpatch}% zum Patchen von beispielsweise \appendix 

\usepackage{showframe}% zum Anzeigen des Seitenlayouts 
\usepackage{blindtext}% für Fülltext 

\usepackage[hidelinks]{hyperref}% warum sollen die Links versteckt werden? 
\usepackage{bookmark}% wenn hyperref, dann am besten auch bookmark 

\DeclareNewTOC[% 
  listname={Anhangsverzeichnis},% 
  owner=\jobname 
]{loa}

\DeclareNewSectionCommand[%
  style=chapter,%
  level=\sectionnumdepth,%
  beforeskip=-1sp,%
  afterskip=2.3ex plus .2ex,% wie in der Voreinstellung section
  font=\usekomafont{section},%
  tocstyle=section,%
  tocindent=0pt,%
  tocnumwidth=0pt,%
  tocdynnumwidth,%
  tocentrynumberformat=\def\autodot{:}\entrynumberwithprefix{\appendixname},%
  tocpagenumberbox={\makebox[\appendixpnumwidth][l]}%
]{appsec}

\newlength{\appendixpnumwidth}
\settowidth{\appendixpnumwidth}{{\normalfont A-00}}
\newcommand*\entrynumberwithprefix[2]{#1~#2} 

\renewcommand*\addappsectocentry[2]{\addxcontentsline{loa}{appsec}[#1]{#2}}
\renewcommand*\appsecformat{\appendixname~\theappsec:\enskip}

\DeclareTOCStyleEntry[%
  level=\chaptertocdepth,%
  beforeskip=1em plus 1pt,%
  entryformat=\usekomafont{chapterentry},% 
  pagenumberformat=\usekomafont{chapterentry}\usekomafont{chapterentrypagenumber},% 
]{tocline}{part}% Eintrag von Teilen im TOC wie Kapitel 

\makeatletter 
\xapptocmd\appendix{% 
  \addpart{\appendixname}
  \cleardoubleoddpage
  \scr@ifundefinedorrelax{hypersetup}{}{% 
    \hypersetup{bookmarkstype=loa}% bei Verwendung von hyperref Anhänge auch in bookmarks
  }%
  \setcounter{page}{1} 
  \renewcommand*{\thepage}{A-\roman{page}}% 
  \pagestyle{plain}%
  \listofloas 
  \cleardoubleoddpage
  \setcounter{page}{1}% 
  \renewcommand*{\thepage}{A-\arabic{page}}% 
}{}{} 
\makeatother
\begin{document} 
\frontmatter 
\tableofcontents 
\mainmatter 
\blinddocument 
\appendix 
\appsec{Ein Anhang} 
\Blindtext[3] 
\appsec{Nächster Anhang}
\Blindtext[3]
% 
\cleardoubleoddpage\setcounter{appsec}{89}\setcounter{page}{90}% nur für das Beispiel 
% 
\appsec{Weiterer Anhang nur zur Demo der Nummernbreite}
\Blindtext[3]
\end{document}
Ach und noch zu
DerArbeitenschreiberling hat geschrieben: Bezüglich der appendix- Umgebungen fällt mir auf, dass \clearpage und ebenso \pagebreak keine Wirkung mehr zeigt. Ist das ein allgemeines Problem von Umgebungen? Muss ich doch auf das einfache \newappendix-Kommando zurückgreifen, oder gibt es hier eine saubere Lösung?
Das ist eine allgemeine Eigenschaft von Gleitumgebungen und eine mit Option nonfloat über \DeclareNewTOC definierte Umgebung verhält sich bis auf das Nichtgleiten so wie eine Gleitumgebung. Insbesondere erfolgt in dieser auch kein Seitenumbruch.

PS: Bitte schaue Dir an, was der Status »Rückfrage« bedeutet.

Antworten