PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Inhaltsverzeichnis anpassen



mschraff
10-11-2007, 17:32
Möchte gerne mein Ihnaltsverzeichnis der Diplomarbeit so gestalten, wie im Buch von Niedermayair auf S.462 beschrieben. Finde leider die Datei nicht auf der CD, also habe ich sie abgetippt. Jedoch muss mir entweder ein Tippfehler unterlaufen sein, oder es fehlt mir vielleicht ein Paket, was ich einbinden muss. Benutze die Pakete "shorttoc, tocloft, titlesec, titletoc" für das Inhaltsverzeichnis.



\makeatletter

% Gliederungsnummer
\renewcommand{\numberline}[1]{%
\makebox[0.9cm][l]{#1}\hspace{1mm}}

% Chapter
\renewcommand{\l@chapter}[2]{%
\addvspace{2ex}% vert. Abstand
\pagebreak[3]% Seitenumbruch hier erlauben
\noindent% nicht einrücken
\makebox[0pt][l]{% Box für Linie
\rule[-3pt]{textwidth}0.5pt}}% Linie über Textbreite
{\large\textbf{#1}}\hfill#2% Text und Nummer
\par% Zeilenumbruch
\nopagebreak% Seitenumbruch nicht erlauben
\addvspace{1ex}% vert. Abstand

% Section
\renewcommand{\l@section}[2]{%
\addvspace{5ex}% vert. Abstand
\noindent\hspace{1cm}% hor. einrücken (1cm)
#1\hfill#2% Text und Nummer
\par% Zeilenumbruch
\nopagebreak[2]% möglichst keinen Zeilenumbruch
}
% Subsection
\renewcommand{\l@subsection}[2]{%
\addvspace{0.2ex}% vert. Abstand
\noindent\hspace{2cm}% hor. Einrücken (2cm)
#1\hfill#2% Text und Nummer
\par% Zeilenumbruch
}
\makeatother

Die Fehlermeldung:


[PDFLaTeX] mit Status 1 beendet
./verzeichnisse/inhaltsverzeichnis.tex:20:Illegal parameter number in definition of \reserved@a. {\large\textbf{#1}
./verzeichnisse/inhaltsverzeichnis.tex:20:Illegal parameter number in definition of \reserved@b. {\large\textbf{#1}
./verzeichnisse/inhaltsverzeichnis.tex:20:You can't use `macro parameter character #' in horizontal mode. {\large\textbf{#1}
./verzeichnisse/inhaltsverzeichnis.tex:20:You can't use `macro parameter character #' in horizontal mode. {\large\textbf{#1}}\hfill#

und natürlich bleibt der Curser in der Zeile
{\large\textbf{#1}}\hfill#2% Text und Nummer
stehen.
Habe wie gesagt das im Buch angegebene Beispiel 8.9 abgetippt und nichts abgeändert.

rais
10-11-2007, 21:05
Moin moin,


Die Fehlermeldung:


[PDFLaTeX] mit Status 1 beendet
./verzeichnisse/inhaltsverzeichnis.tex:20:Illegal parameter number in definition of \reserved@a. {\large\textbf{#1}
./verzeichnisse/inhaltsverzeichnis.tex:20:Illegal parameter number in definition of \reserved@b. {\large\textbf{#1}
./verzeichnisse/inhaltsverzeichnis.tex:20:You can't use `macro parameter character #' in horizontal mode. {\large\textbf{#1}
./verzeichnisse/inhaltsverzeichnis.tex:20:You can't use `macro parameter character #' in horizontal mode. {\large\textbf{#1}}\hfill#

und natürlich bleibt der Curser in der Zeile
{\large\textbf{#1}}\hfill#2% Text und Nummer
stehen.
Habe wie gesagt das im Buch angegebene Beispiel 8.9 abgetippt und nichts abgeändert.
wenn ich das richtig sehe, dann ist Dein \renewcommand{\l@chapter} beendet, bevor Du auf #1, #2 darin zugreifst.;)
MfG,

mschraff
11-11-2007, 11:14
Danke für die Info, doch leider weiss ich nicht, wie ich den Fehler beheben könnte. Mir scheint es, als ob in der Vorlage ganz einfach ein Zeichen vergessen wurde und ich weiss leider nicht wo.

Habe nochmals alles mit der Vorlage im Buch verglichen und 2 Tippfehler gefunden:
1. \rule[-3pt]{textwidth}0.5pt}}% in \rule[-3pt]{\textwidth}0.5pt}}% geändert. Dies ist genau die Zeile über derjenigen, in welcher Kile immer stehen bleibt.

2. am Ende des Bereichs "Chapter" soll noch eine Klammer "}" stehen. Füge ich diese jedoch hinzu, so meckert Kile:
"./verzeichnisse/inhaltsverzeichnis.tex:24:Too many }'s. }"

rais
11-11-2007, 20:09
so stellt es sich mir dar:


% Chapter
\renewcommand{\l@chapter}[2]{%
\addvspace{2ex}% vert. Abstand
\pagebreak[3]% Seitenumbruch hier erlauben
\noindent% nicht einrücken
\makebox[0pt][l]{% Box für Linie
\rule[-3pt]{textwidth}0.5pt}}% Linie über Textbreite
{\large\textbf{#1}}\hfill#2% Text und Nummer
\par% Zeilenumbruch
\nopagebreak% Seitenumbruch nicht erlauben
\addvspace{1ex}% vert. Abstand

also vielleicht


% Chapter
\renewcommand{\l@chapter}[2]{%
\addvspace{2ex}% vert. Abstand
\pagebreak[3]% Seitenumbruch hier erlauben
\noindent% nicht einrücken
\makebox[0pt][l]{% Box für Linie
\rule[-3pt]{\textwidth}{0.5pt}}% Linie über Textbreite
{\large\textbf{#1}}\hfill#2% Text und Nummer
\par% Zeilenumbruch
\nopagebreak% Seitenumbruch nicht erlauben
\addvspace{1ex}% vert. Abstand
}
?
MfG,

mschraff
17-11-2007, 14:57
Danke, hat funktioniert!!!
Nur leider sieht das Inhaltsverzeichnis nicht so aus, wie in dem Buch - mir fehlt der Trennstrich unter den Kapitelnamen. Wie kann ich den einfügen? Mittels \hline jedenfalls leider nicht.

rais
17-11-2007, 15:41
Moin moin,
ich vermute mal, daß Dir eines der *toc*-Pakete, die Du zusätzlich lädst, damit zu tun haben könnten, sollen diese doch Einfluß auf das Inhaltsverzeichnis nehmen ...
Und ja, \hline ist nur innerhalb einer tabular-Umgebung zu gebrauchen. Wenn man vernünftig gesetzte Tabellen bevorzugt, noch nicht einmal dann.:D (vgl. booktabs-Doku)
Wenn Dich das nicht weiterbringt, dann erstelle bitte ein nachvollziehbares Minimalbeispiel (http://www.minimalbeispiel.de).
MfG,