Ich möchte die Ausrichtung der Anhänge ändern. Ich verwende
\documentclass[12pt]{report}
...
\usepackage{titletoc}
\usepackage[toc,titletoc]{appendix}
\usepackage{tocloft}
\renewcommand{\cftchapleader}{\cftdotfill{\cftdotsep}} % for chapters
\renewcommand{\cftchapfont}{\uppercase}
\renewcommand{\cftchappagefont}{}
\renewcommand{\cfttoctitlefont}{\hfill\uppercase}
\renewcommand{\cftaftertoctitle}{\hfill}
\setlength{\cftbeforetoctitleskip}{-3em}
\renewcommand{\cftloftitlefont}{\hfill\uppercase}
\renewcommand{\cftafterloftitle}{\hfill}
\setlength{\cftbeforeloftitleskip}{-3em}
\renewcommand{\cftlottitlefont}{\hfill\uppercase}
\renewcommand{\cftafterlottitle}{\hfill}
\setlength{\cftbeforelottitleskip}{-3em}
Ich muss noch ein paar andere Dinge ändern. Das ist, was ich habe.
APPENDICES................. 10
APPENDIX A ................ 13
APPENDIX B ................ 15
Das ist das, was ich benötige.
APPENDICES................. 10
APPENDIX A ............. 13
APPENDIX B ............. 15
Antwort1
Eine Möglichkeit besteht darin, \titlecontents
aus demtitletoc
Paket.
Bemerkungen:
Beachten Sie, dass die
titletoc
Option für dasappendix
Paket nicht mehr benötigt wird.\uppercase
ist ein TeX-Befehl, der nicht in LaTeX-Dokumenten verwendet werden sollte.\MakeUppercase
Stattdessen kann verwendet werden. Beide Befehle erhalten jedoch ein Argument, sodass die Verwendung von\uppercase
(oder\MakeUppercase
), wie im Beispiel in der Frage, zu Fehlern führt.Beachten Sie auch, dass einige der ursprünglichen Einstellungen durch einige Neudefinitionen und Patches in meiner Antwort ersetzt wurden. Insbesondere habe ich eine Neudefinition von verwendet,
\l@chapter
um die gepunkteten Füllzeichen zu verwenden und die Kapiteleinträge in Großbuchstaben zu formatieren. Die internen Befehle\@cftmaketoctitle
,\@cftmakeloftitle
, und\@cftmakelottitle
fromtocloft
wurden (mithilfe desetoolbox
Pakets) gepatcht, um Großbuchstaben für die Titel von ToC, LoF und LoT zu verwenden.
Der Code:
\documentclass{report}
\usepackage[toc]{appendix}
\usepackage{titletoc}
\usepackage{tocloft}
\usepackage{etoolbox}
\usepackage{textcase}
\makeatletter
\renewcommand*\l@chapter[2]{%
\ifnum \c@tocdepth >\m@ne
\addpenalty{-\@highpenalty}%
\vskip 1.0em \@plus\p@
\setlength\@tempdima{1.5em}%
\begingroup
\parindent \z@ \rightskip \@pnumwidth
\parfillskip -\@pnumwidth
\leavevmode
\advance\leftskip\@tempdima
\hskip -\leftskip
\MakeTextUppercase{#1}\nobreak\leaders\hbox{$\m@th
\mkern \@dotsep mu\hbox{.}\mkern \@dotsep
mu$}\hfill
\nobreak\hb@xt@\@pnumwidth{\hss #2}\par
\penalty\@highpenalty
\endgroup
\fi}
\patchcmd{\@cftmaketoctitle}{\cfttoctitlefont\contentsname}{\cfttoctitlefont\MakeUppercase{\contentsname}}{}{}
\patchcmd{\@cftmakeloftitle}{\cftloftitlefont\listfigurename}{\cftloftitlefont\MakeUppercase{\listfigurename}}{}{}
\patchcmd{\@cftmakelottitle}{\cftlottitlefont\listtablename}{\cftlottitlefont\MakeUppercase{\listtablename}}{}{}
\makeatother
\renewcommand{\cfttoctitlefont}{\hfill}
\renewcommand{\cftaftertoctitle}{\hfill}
\setlength{\cftbeforetoctitleskip}{-3em}
%
\renewcommand{\cftloftitlefont}{\hfill}
\renewcommand{\cftafterloftitle}{\hfill}
\setlength{\cftbeforeloftitleskip}{-3em}
%
\renewcommand{\cftlottitlefont}{\hfill}
\renewcommand{\cftafterlottitle}{\hfill}
\setlength{\cftbeforelottitleskip}{-3em}
\begin{document}
\tableofcontents
\chapter{Test Regular Chapter}
\begin{appendices}
\titlecontents{chapter}[10em]
{\addvspace{10pt}}
{\contentslabel[\MakeUppercase{\appendixname~\thecontentslabel}]{8em}\MakeUppercase}
{\hspace*{-8em}}{\titlerule*[.754em]{.}\contentspage}
\chapter{First Test Appendix}
\chapter{Second Test Appendix}
\end{appendices}
\end{document}
Als letzte Anmerkung (und nur als Vorschlag) halte ich es für besser, für die Einträge im Inhaltsverzeichnis Kapitälchen statt Großbuchstaben zu verwenden; das hätte noch einen weiteren Vorteil: Die Implementierung wäre erheblich einfacher.