Seite 1 von 1

Anhangsverzeichnis mit documentclass {report}

Verfasst: Mo 7. Aug 2017, 14:44
von Capri
Hallo Zusammen

Ich würde gerne ein Ahangsverzeichnis erstellen und bin auf diese Seite gestossen:

https://komascript.de/comment/3447#comment-3447

Allerdings werden bei mir ganz viele Fehlermeldungen angezeigt, wenn ich den Text für die Präambel in die Präambel eingefüge.

Kann mir da jemand helfen, wie das auch bei
documentclass {report} funktioniert?

Re: Anhangsverzeichnis mit documentclass {report}

Verfasst: Mo 7. Aug 2017, 14:50
von markusv
Capri hat geschrieben:Allerdings werden bei mir ganz viele Fehlermeldungen angezeigt, wenn ich den Text für die Präambel in die Präambel eingefüge.
Hallo!

Wie fügst du den Code in deine Präambel ein? Mache am besten ein Minimalbeispiel, der die Fehler zeigt.
Normalerweise ist dieser Code für jede Standard- und KOMA-Script-Klasse geeignet.

Verfasst: Mo 7. Aug 2017, 15:15
von Capri
Hallo markusv

Ich habe den Code so eingefügt:
\documentclass[12pt,a4paper,ngerman]{report} % normale Schriftgrösse, Papierformat, Dokumentklasse

\renewcommand{\familydefault}{\sfdefault}
\usepackage{tgheros} % Schriftart
\usepackage{savefnmark} % gleiche Fussnote (mehrmals verwendet), wird gleich bezeichnet
\usepackage{setspace} % Zeilenabstand
\usepackage[backend=biber, natbib=true, style=science]{biblatex}
	\ExecuteBibliographyOptions{
sorting=nyt, %Sortierung Autor, Titel, Jahr
}
\addbibresource{MAJabRef.bib} 

\newcommand*{\maintoc}{% Hauptinhaltsverzeichnis
  \begingroup
    \@fileswfalse% kein neues Verzeichnis öffnen
    \renewcommand*{\appendixattoc}{% Trennanweisung im Inhaltsverzeichnis
      \value{tocdepth}=-10000 % lokal tocdepth auf sehr kleinen Wert setzen
    }%
    \tableofcontents% Verzeichnis ausgeben
  \endgroup
}
\newcommand*{\appendixtoc}{% Anhangsinhaltsverzeichnis
  \begingroup
    \edef\@alltocdepth{\the\value{tocdepth}}% tocdepth merken
    \setcounter{tocdepth}{-10000}% Keine Verzeichniseinträge
    \renewcommand*{\contentsname}{% Verzeichnisname ändern
      Verzeichnis der Anh\"ange}%
    \renewcommand*{\appendixattoc}{% Trennanweisung im Inhaltsverzeichnis
      \setcounter{tocdepth}{\@alltocdepth}% tocdepth wiederherstellen
    }%
    \tableofcontents% Verzeichnis ausgeben
    \setcounter{tocdepth}{\@alltocdepth}% tocdepth wiederherstellen
  \endgroup
}
\newcommand*{\appendixattoc}{% Trennanweisung im Inhaltsverzeichnis
}
\g@addto@macro\appendix{% \appendix erweitern
  \if@openright\cleardoublepage\else\clearpage\fi% Neue Seite
  \addcontentsline{toc}{chapter}{\appendixname}% Eintrag ins Hauptverzeichnis
  \addtocontents{toc}{\protect\appendixattoc}% Trennanweisung in die toc-Datei
}
\makeatother

\usepackage[textwidth=16cm,textheight=23cm]{geometry}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc} % Umlaute
\usepackage{float}
\usepackage{geometry} 
\usepackage{tabularx} 
\usepackage{tabu}
%\usepackage{tocbibind}
\usepackage{booktabs}% for better rules in the table
%\usepackage{biblatex}
\usepackage{amsmath}
\usepackage{multicol,lipsum,float}
\usepackage{pgfplotstable}
\usepackage{rotating}
\usepackage{caption}
\usepackage{hyperref} % für URLs
\pgfplotsset{compat=1.13}
 \usepackage[figure]{hypcap}

\usepackage{pdfpages} % für PDF

\usepackage[%
			labelfont=bf,
		        font={sl,small},
		        %parskip=5pt
			]
			{caption} 
\addto\captionsngerman{
\renewcommand{\figurename}{Abb.}
\renewcommand{\tablename}{Tab.}}
 



% Dokument
\begin{document}

% Inhaltsverzeichnis
\maintoc
\newpage
\raggedright
\chapter{Vorwort}
	blablabla
\appendix
\appendixtoc
\chapter{Hallo}
	blablabla
\end{document}
Fehlermeldungen:
! LaTeX Error: Missing \begin{document}
! Undefined control sequence. (bezieht sich auf:
\if@openright\cleardoublepage
)
! You can't use `\spacefactor' in vertical mode.
! Missing $ inserted.

Verfasst: Mo 7. Aug 2017, 15:31
von Gast
Wenn Du Code aus einem Paket in eine Dokumentpräambel kopierst, musst Du immer aufpassen. In Paketen ist @ in Befehlsnamen erlaubt, in Dokumenten nicht. Man muss den Code daher ggf. mit \makeatletter und \makeatother kapseln.

Aber warum verwendest Du nicht einfach das Paket, das aus dem Originalbeispielcode erzeugt wird? Und warum verwendest Du nicht einfach eine KOMA-Script-Klasse – in Deinem Fall scrreprt –, damit Du gleich die überlegene Lösung nutzen kannst?

Übrigens sei dringend empfohlen, auch bei Verwendung von fremdem Code in eigenen Dokumenten immer die Originalquelle als Kommentar anzugeben. Du findest das sonst ggf. nie mehr. Und bei (versehentlicher) Weitergabe bringst Du Dich und andere in Verlegenheit.

Verfasst: Mo 7. Aug 2017, 16:15
von Capri
Vielen Dank für die Hilfe!
Habe den Fehler nun gefunden.
Eine andere Frage wäre jedoch noch: Wie kann ich machen, dass auch vor dem Titel noch eine Zahl steht (wie bei jedem Kapitel)?

Verfasst: Mo 7. Aug 2017, 16:17
von Capri
Kann man auch den Titel ändern?