PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Kein entryhook bei scrarctl + tocstyle + KOMAlike?



mplus
16-04-2011, 23:16
Hallo!

Bei folgendem Beispiel funktioniert leider der entryhook im Tabellenverzeichnis nicht. Wenn ich die Dokumentenklasse z.B. auf scrreprt wechsle geht's, aber das möchte ich vermeiden. Hab ich irgendwas übersehen?



documentclass{scrartcl}
\usepackage[ngerman]{babel}
\usepackage{tocstyle}
\usetocstyle{KOMAlike}
\settocfeature[lot]{entryhook}{Tabelle\nobreakspace}
\usepackage{tabularx}
\usepackage{booktabs}
\usepackage{caption}

\begin{document}

\tableofcontents
\listoftables

\section{Kapitel Eins}

\begin{table}[!h]
\centering
\begin{tabularx}{\textwidth}{XXXX}
\toprule
\textbf{Apfel} & \textbf{Birne} & \textbf{Kiwi} & \textbf{Banane} \\
\midrule
13 & 15 & 9 & 12 \\
\bottomrule
\end{tabularx}
\caption[Mein Obstkorb]{Mein Obstkorb (Stand: 16.04.2011)}
\end{table}

\end{document}

Für schnelle Hilfe bin ich sehr dankbar!

Viele Grüße
Michael

mechanicus
17-04-2011, 09:27
Hi,

bei scrartcl musst du folgendes verwenden:

\settocfeature[lot][1]{entryhook}{Tabelle\nobreakspace}

Gruß
Marco

PS: Sehr schönes Minimalbeispiel und das im ersten Beitrag -- weiter so

mplus
17-04-2011, 09:56
Super, danke!
Das führt mich zu weiteren Dingen:

1) Ich hätte gerne, dass mit dem entryhook linksbündig begonnen wird ohne Einzug. Ich hatte folgendes an anderer Stelle gelesen, aber das geht nicht:

\settocfeature[lot][1]{entryhook}{\noindent Tabelle\nobreakspace}

2) Ich hätte gerne Füllpunkte zwischen Tabellenname und Seitenzahl, ohne dass sich dadurch die Verwendung derselben für das Inhaltsverzeichnis ändert.

3) Bei sehr langen Tabellennamen finde ich es übersichtlicher, wenn der Einzug der zweiten Zeile größer ist. Es sollten also beide Zeilen des Titels bündig beginnen und nicht so wie hier. Geht das?

\documentclass{scrartcl}
\usepackage[ngerman]{babel}
\usepackage{tocstyle}
\usetocstyle{KOMAlike}
\settocfeature[lot][1]{entryhook}{Tabelle\nobreakspace}
\usepackage{tabularx}
\usepackage{booktabs}
\usepackage{caption}

\begin{document}

\tableofcontents
\listoftables

\section{Kapitel Eins}
\subsection{Erstes Unterkapitel}
\begin{table}[!h]
\centering
\begin{tabularx}{\textwidth}{XXXX}
\toprule
\textbf{Apfel} & \textbf{Birne} & \textbf{Kiwi} & \textbf{Banane} \\
\midrule
\addlinespace
13 & 15 & 9 & 12 \\
\addlinespace
\bottomrule
\end{tabularx}
\caption[Dies ist der extrem lange und ausführliche Titel meiner Obstkorb-Tabelle weil an dieser Stelle viel gesagt werden muss]{Mein Obstkorb (Stand: 16.04.2011)}
\end{table}

\end{document}

Herzlichen Dank!

Michael

rais
17-04-2011, 12:05
Moin moin,
etwa so vllt


\documentclass{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[tocflat]{tocstyle}% (1)
\usetocstyle[lot]{allwithdot}% (2)
\newlength\myindent% (3)
\settowidth\myindent{Tabelle~}% (3)
\settocfeature[lot][1]{entryhook}{Tabelle~\hangindent=\myindent}% (3)
\deactivatetocstyle[toc]% (2)
\usepackage{tabularx}
\usepackage{booktabs}
\usepackage{caption}

\begin{document}

\tableofcontents
\listoftables

\section{Kapitel Eins}
\subsection{Erstes Unterkapitel}
\begin{table}[!h]
\centering
\begin{tabularx}{\textwidth}{XXXX}
\toprule
\textbf{Apfel} & \textbf{Birne} & \textbf{Kiwi} & \textbf{Banane} \\
\midrule
\addlinespace
13 & 15 & 9 & 12 \\
\addlinespace
\bottomrule
\end{tabularx}
\caption[Dies ist der extrem lange und ausführliche Titel meiner Obstkorbtabelle weil an dieser Stelle viel gesagt werden muss]{Mein Obstkorb (Stand: 16.04.2011)}
\end{table}

\end{document}

MfG

mechanicus
17-04-2011, 12:06
Hi,


\documentclass{scrartcl}
\usepackage{showframe}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[]{tocstyle}
\usetocstyle{KOMAlike}
\makeatletter
\settocfeature[lot][1]{leaders}{%
\leaders\hbox{$\m@th
\mkern \@dotsep mu\hbox{\tocstyle@feature@dothook .}%
\mkern \@dotsep mu$}\hfill%
}%
\settocfeature[lot][1]{entryhook}{%
\renewcommand*{\tocstyle@@numberline}[1]{%
Tabelle\nobreakspace ##1\csname autodot\endcsname%
}%
}%
\renewcommand{\l@table}{\tocstyle@dottedtocline{1} {0pt}{0cm}}
\makeatother

\settocfeature[lot][1]{spaceafternumber}{1cm}%Abstand einstellen

\usepackage{tabularx}
\usepackage{booktabs}
\usepackage{caption}

\begin{document}

\tableofcontents
\listoftables
\setcounter{table}{50}
\section{Kapitel Eins}
\subsection{Erstes Unterkapitel}
\begin{table}[!h]
\centering
\begin{tabularx}{\textwidth}{XXXX}
\toprule
\textbf{Apfel} & \textbf{Birne} & \textbf{Kiwi} & \textbf{Banane} \\
\midrule
\addlinespace
13 & 15 & 9 & 12 \\
\addlinespace
\bottomrule
\end{tabularx}
\caption[Dies ist der extrem lange und ausführliche Titel meiner Obstkorb-Tabelle weil an dieser Stelle viel gesagt werden muss]{Mein Obstkorb (Stand: 16.04.2011)}
\end{table}

\end{document}

eine andere Möglichkeit .. habe jetzt dran gearbeitet, so dass ich diese nicht verwerfen wollte :p

Gruß
Marco

mplus
17-04-2011, 13:35
Besten Dank Jungs, das klappt hervorragend!

@Rainer: Noch eine Frage zum Verständnis des Ganzen. Wie kommt es, dass die Option tocflat in

\usepackage[tocflat]{tocstyle}
sich nicht auf das Inhaltsverzeichnis auswirkt? Oder wird das hier gar nicht mehr berücksichtigt?

Das tocstyle-Paket sollte nämlich weiterhin auch das Inhaltsverzeichnis betreffen, weil ich dort mehrere Verzeichnisse erzeugen (=aufteilen) muss.

Gruß
Michael

mechanicus
17-04-2011, 13:42
Das tocstyle-Paket sollte nämlich weiterhin auch das Inhaltsverzeichnis betreffen, weil ich dort mehrere Verzeichnisse erzeugen (=aufteilen) muss.
Das tut es leider nicht, da \deactivatetocstyle aufgerufen wurde.

Gruß
Marco

rais
17-04-2011, 14:08
Das tut es leider nicht, da \deactivatetocstyle aufgerufen wurde.

in der Tat :o
Ok, nächster Versuch :)


\documentclass{scrartcl}
\usepackage[ngerman]{babel}
\usepackage{tocstyle}
\usetocstyle[toc]{KOMAlike}
\usetocstyle[lot]{allwithdot}% (2)
\newlength\myindent% (3)
\settowidth\myindent{Tabelle~}% (3)
\settocfeature[lot][1]{entryhook}{Tabelle~\hangindent=\myindent}% (3)
\usepackage{tabularx}
\usepackage{booktabs}
\usepackage{caption}

\begin{document}

\tableofcontents
\selecttocstyleoption{tocflat}%
\listoftables

\section{Kapitel Eins}
\subsection{Erstes Unterkapitel}
\begin{table}[!h]
\centering
\begin{tabularx}{\textwidth}{XXXX}
\toprule
\textbf{Apfel} & \textbf{Birne} & \textbf{Kiwi} & \textbf{Banane} \\
\midrule
\addlinespace
13 & 15 & 9 & 12 \\
\addlinespace
\bottomrule
\end{tabularx}
\caption[Dies ist der extrem lange und ausführliche Titel meiner Obstkorbtabelle weil an dieser Stelle viel gesagt werden muss]{Mein Obstkorb (Stand: 16.04.2011)}
\end{table}

\end{document}

MfG

mplus
17-04-2011, 14:10
Good Guy :cool:
Danke!

Schweinebacke
18-04-2011, 08:11
Crosspost! (http://www.komascript.de/node/1453)