Inhaltsverzeichnis Einträge bis \paragraph fett darstellen

Inhalt, Abbildungen, Tabellen, Quellcodes und andere Verzeichnisse


Marcel
Forum-Anfänger
Forum-Anfänger
Beiträge: 33
Registriert: Mo 8. Jun 2015, 20:07

Inhaltsverzeichnis Einträge bis \paragraph fett darstellen

Beitrag von Marcel »

Hallo zusammen,

ich habe ein Problem mit meinem Inhaltsverzeichnis und finde einfach keine richtige Lösung. Ich nutze die Klasse scrreprt und verwende von Chapter bis paragraph alle Einträge im Inhaltsverzeichnis. Jetzt sollen alle Einträge bis subsubsection fett dargestellt werden und einen größeren Abstand haben. Im Internet habe ich folgendes Beispiel gefunden.

\documentclass[]{scrreprt}
\usepackage{amssymb,latexsym,amsmath,float}     % Standard packages
\newcommand{\abstand}{5pt}	%Zeilenabstand im Inhaltsverzeichnis
\usepackage[ngerman]{babel}

\setcounter{secnumdepth}{4} 
\setcounter{tocdepth}{4}

\usepackage{tocstyle}
\newtocstyle[KOMAlike]{partchaptersectionbf}{%
  \settocfeature[1]{entryvskip}{\abstand}%
  \settocfeature[1]{entryhook}{\usekomafont{disposition}}%
  \settocfeature[2]{entryvskip}{\abstand}%
  \settocfeature[2]{entryhook}{\usekomafont{disposition}}%
  \settocfeature[3]{entryvskip}{\abstand}%
  \settocfeature[3]{entryhook}{\itshape}%
  \settocfeature[4]{entryhook}{\itshape}%
}

\usetocstyle{partchaptersectionbf}

\RedeclareSectionCommand[tocindent=0em,tocnumwidth=3em]{section}%% kein Einzug zu sehen
\RedeclareSectionCommand[tocindent=0em,tocnumwidth=3em]{subsection}%%  ok
\RedeclareSectionCommand[tocindent=2em,tocnumwidth=4em]{subsubsection}% ok
\RedeclareSectionCommand[tocindent=2em,tocnumwidth=4em]{paragraph}% ok

\begin{document}

\tableofcontents

\chapter{Liste}
Dies ist ein Beispieltext in dem die Schrift dargestellt wird. \textsc{Busfahrer}

\section{Einleitung}

\section{Erklärung}

\subsection{\sc{Normung}}

\section{\sc{Entwicklung}}

\chapter{Kapitel 2}

\section{neues}

\subsection{Binomial Theorem}

\subsection{Taylor Series}

\subsubsection{\itshape{Sets}}

\paragraph{\sc{Testüberschrift in fett}}

\section{Tables}

\section{A Picture}


\end{document}

Ich habe diese Minimalbeispiel in einem onlinecompiler getestet. Das ergebnis war genau wie ich es wollte. Auf meinem Rechner bekomme ich es aber nicht zum Laufen.

Ich habe gelesen, dass das "tocstyle" package nicht unterstützt wird. Nun habe ich es mit dem KOMA script und "tocbasic" versucht. Leider alles ohne Erfolg. Hat jemand eine Idee wie ich die Form außer mit dem "tocstyle" Paket darstellen kann?

Danke schonmal für eure Hilfe.

P.S.: Ich habe schon mehrere Stunden gesucht, gegoogelt und leider bisher keine Lösung gefunden.


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

Re: Inhaltsverzeichnis Einträge bis \paragraph fett darstellen

Beitrag von Bartman »

Wenn Du statt dem Wert 4 die folgenden Befehle verwendest

\setcounter{secnumdepth}{\paragraphnumdepth} 
\setcounter{tocdepth}{\paragraphtocdepth}

musst Du Dir nicht merken, für welche Gliederungsebene der Wert steht.

Die Beschreibung zu tocstyle auf CTAN lädt nicht gerade dazu ein, das Paket zu benutzen.

Die Einstellung für die Gliederungsebenen kann man bei gleichen Werten in der Optionenliste mithilfe des Befehls \RedeclareSectionCommands zusammenfassen.

Der Fettdruck kann bei diesen Befehlen über die Option tocentryformat gesetzt werden, während das Präfix toc bei den Befehlen \DeclareTOCStyleEntry und \DeclareTOCStyleEntries entfällt.

Nun zu Deiner ausgefallenen Formatierung der Gliederungsebenen:

Macht es einen Unterschied, ob ich \it oder \itshape verwende?.

Wie Du sehen wirst, bekommst Du bei der Standardschrift Computer Modern Kapitälchen oder Fettdruck, aber nicht beides.


Marcel
Forum-Anfänger
Forum-Anfänger
Beiträge: 33
Registriert: Mo 8. Jun 2015, 20:07

Re: Inhaltsverzeichnis Einträge bis \paragraph fett darstellen

Beitrag von Marcel »

Hi Bartman,

danke erstmal für deine Antwort. Ich weiß, dass meine Anforderungen etwas schräg wirken aber ich muss es so machen.

In der Beschreibung zum KOMAscript habe ich die von dir beschriebenen Befehle gelesen. Leider bekomme ich es damit einfach nicht auf die Reihe. Es will einfach nich funktionieren. Hast du vielleicht ein minimalbeispiel in dem ich die Verwendung sehen kann?

Es ist ok wenn die Declaration in der /section (\textsc{}) die allgemeine überschreibt. Leider muss ich ein paar bestimmte Einträge kursiv oder in Kapitälchen machen. Daher ist das so oj für mich. Dass die Nummerierung und die Seitenzahl nicht das selbe Format haben ist ok.

Den von dir verlinkten Artikel habe ich zwar gelesen, verstehe ihn aber nicht wirklich. Wenn ich \it ... benutze bekomme ich eh eine Fehlermeldung weshalt ich auf \textit{} umgestellt habe.

Danke für den Hinweis mit der Gliederungsebene. Den kannte ich noch nicht.


Gute*r Gȧst*in

Re: Inhaltsverzeichnis Einträge bis \paragraph fett darstellen

Beitrag von Gute*r Gȧst*in »

Wenn bei dir \usepackage{tocstyle} keine Fehlermeldung ergibt, ist deine TeX-Installation veraltet. Das Paket wurde bereits in KOMA-Script 3.32 vor über einem Jahr entfernt und ist in keiner TeX-Distribution mehr enthalten. Schon seit längerem konfiguriert man bei KOMA-Script Verzeichnisse via tocbasic mit Hilfe von \setuptoc, \BeforeTOCHead, \AfterTOCHead, \BeforeStartingTOC, \AfterStartingTOC, \DeclareTOCStyleEntry (wahlweise auch via \RedeclareSectionCommand ansprechbar), \DeclareTOCStyleEntries bis hin zu \setkomafont, \addtokomafont. Die letzten beiden Anweisungen können übrigens auch verwendet werden, um die Grundschrift von Überschriften im Text zu konfigurieren.

Sollen hingegen einzelne Begriffe hervorgehoben werden, so sollte eine semantische Markup-Anweisung für die Begriffe definiert werden.

Und wie Bartman schon erwähnt hat: Es sind abhängig von der verwendeten Schrift nicht immer alle Schriftkombinationen verfügbar. So sind beispielsweise SmallCapitals für serifenlose Schriften höchst selten – umso mehr, wenn diese auch noch fett sein sollen. Deine Einstellungen mehr oder weniger sauber wären beispielsweise so zu erreichen:

\documentclass[ngerman]{scrreprt}

\usepackage{blindtext}% Spart Tipparbeit bei Demo-Dokumenten.
\newcommand{\abstand}{5pt}	%Zeilenabstand im Inhaltsverzeichnis
\usepackage{babel}
%\usepackage{fontspec}% Benötigt LuaLaTeX oder XeLaTeX und schaltet u. a. auf
                     % Latin Modern als Fontfamilie(n) um.
%\usepackage[T1]{fontenc}% Für PDFLaTeX (und Sprachen mit Sonderzeichen wie
                        % Deutsch) unbedingt zu empfehlen.
%\usepackage{lmodern}% Würde für PDFLaTeX ebenfalls auf Latin Modern
                    % umschalten, nur nicht ganz so schön wie mit LuaLaTeX
                    % oder XeLaTeX und fontspec.
%\usepackage{libertinus}

\setcounter{secnumdepth}{\paragraphnumdepth}% → scrguide.pdf, Abschnitt 3.16
\setcounter{tocdepth}{\paragraphtocdepth}% → scrguide.pdf, Abschnitt 3.9

\DeclareTOCStyleEntries[% → scrguide.pdf, Abschnitt 15.3
  beforeskip=\abstand,% → scrguide.pdf, Tabelle 15.1
  entryformat=\textbf,% Es wird ein Argument erwartet.
                      % → scrguide.pdf, Tabelle 15.1
  indent=0pt,% → scrguide.pdf, Tabelle 15.1
  numwidth=3em,% → scrguide.pdf, Tabelle 15.1
]{section}{section,subsection}
\DeclareTOCStyleEntry[% → scrguide.pdf, Abschnitt 15.3
  beforeskip=\abstand,% → scrguide.pdf, Tabelle 15.1
  entryformat=\itshape\textbf,% Nicht ganz sauber, aber es geht.
                              % → scrguide.pdf, Tabelle 15.1
  indent=2em,% → scrguide.pdf, Tabelle 15.1
  numwidth=4em,% → scrguide.pdf, Tabelle 15.1
]{section}{subsubsection}
\DeclareTOCStyleEntry[% → scrguide.pdf, Abschnitt 15.3
  indent=2em,% → scrguide.pdf, Tabelle 15.1
  numwidth=4em,% → scrguide.pdf, Tabelle 15.1
%  entryformat=\textsc,% Es wird ein Argument erwartet.
                      % → scrguide.pdf, Tabelle 15.1
]{section}{paragraph}

%\setkomafont{disposition}{\bfseries}% Keine Grotesk (aka Serifenlose) für Überschriften
\addtokomafont{paragraph}{\scshape}% Zu Demozwecken alle \paragraph in SmallCapitals

\begin{document}

\tableofcontents

\blinddocument

\end{document}

Wegen nicht vorhandener Fonts für die Kombinationen von serifenlos, fett und SmallCapitals, was an der Meldung

LaTeX Font Warning: Font shape `OT1/cmss/bx/sc' undefined
(Font)              using `OT1/cmss/bx/n' instead on input line 46.

in der log-Datei erkannt werden kann, werden allerdings die \paragraph-Überschriften nicht in SmallCapitals gesetzt. Durch Aktivieren der Zeile für das Laden von Paket libertinus sind aber sogar fette, serifenlose Kapitälchen zu erreichen, aber natürlich insgesamt mit anderen Fonts. Ich habe noch ein paar andere Zeilen auskommentiert hinzugefügt, die zum Experimentieren einladen sollen.

Die Zeile mit den angeblichen Standardpaketen habe ich entfernt, weil sie für das Beispiel unerheblich ist. Es sei aber darauf hingewiesen, dass Paket float in der Regel mit KOMA-Script nicht benötigt wird. Seine Verwendung resultiert in der Warnung:

Class scrreprt Warning: \float@addtolists detected!
(scrreprt)              Implementation of \float@addtolist became
(scrreprt)              deprecated in KOMA-Script v3.01 2008/11/14 and
(scrreprt)              has been replaced by several more flexible
(scrreprt)              features of package `tocbasic`.
(scrreprt)              Since Version 3.12 support for deprecated
(scrreprt)              \float@addtolist interface has been
(scrreprt)              restricted to only some of the KOMA-Script
(scrreprt)              features and been removed from others.
(scrreprt)              Loading of package `scrhack' may help to
(scrreprt)              avoid this warning, if you are using a
(scrreprt)              a package that still implements the
(scrreprt)              deprecated \float@addtolist interface.

Das in der Warnung erwähnte Laden von Paket scrhack (möglichst direkt nach der Klasse) hilft in dem Fall (und in vielen ähnlichen Fällen) tatsächlich. Da das Paket float schon lange nicht mehr gepflegt wird, ist es auch die einzige Möglichkeit, die Warnung los zu werden.


Marcel
Forum-Anfänger
Forum-Anfänger
Beiträge: 33
Registriert: Mo 8. Jun 2015, 20:07

Re: Inhaltsverzeichnis Einträge bis \paragraph fett darstellen

Beitrag von Marcel »

Ah ok. Danke erstmal für das Beispiel. Ich kann es erst heute Abend testen. Eins ist vielleicht nicht richtig rüber gekommen.

Ich verwende in meinem Dokument von \chapter bis \subparagraph alles. Davon möchte ich alle \chapter bis \paragraph im Inhaltsverzeichnis stehen haben. Es sollen die ebenen \chapter bis \subsection in fett dargestellt werden und der rest normal. Mit wenigen Ausnahmen.

Als besondere Herausforderung ist nun die Tatsache, dass ich einige Einträge in \subsubsection und \subparagraph in kursiv machen muss. Weiterhin sind nur 3 Einträge \subsection in Kapätlchen.

Die letzten beiden Anforderungen habe ich durch die Überschriften gewährleistet und das funktioniert aus meiner sicht super. Nur leider der rest nicht.


Gute*r Gȧst*in

Re: Inhaltsverzeichnis Einträge bis \paragraph fett darstellen

Beitrag von Gute*r Gȧst*in »

Marcel hat geschrieben:
Mi 13. Okt 2021, 09:42

Ich verwende in meinem Dokument von \chapter bis \subparagraph alles. Davon möchte ich alle \chapter bis \paragraph im Inhaltsverzeichnis stehen haben. Es sollen die ebenen \chapter bis \subsection in fett dargestellt werden und der rest normal. Mit wenigen Ausnahmen.

Und was davon ist nicht erfüllt, wenn du oben auf den LaTeX-Ausgabe-Knopf klickst?


Gute*r Gȧst*in

Re: Inhaltsverzeichnis Einträge bis \paragraph fett darstellen

Beitrag von Gute*r Gȧst*in »

Und vor allem, was davon bekommst du mit dem gezeigten Code als Vorlage und den Erklärungen in der Anleitung nicht selbst passend abgeändert?


Marcel
Forum-Anfänger
Forum-Anfänger
Beiträge: 33
Registriert: Mo 8. Jun 2015, 20:07

Re: Inhaltsverzeichnis Einträge bis \paragraph fett darstellen

Beitrag von Marcel »

Nein alles gut. Das war nicht böse gemeint. Ich habe nur gerade nur mein Handy zur Hand und kann dein Minimalbeispiel testen. Die Latex Ausgabe ist auf den handy sehr bescheiden. Ich habe das nur als Erklärung nachgeschoben weil du geschrieben hast das es Schwierigkeiten zwischen den verschiedenen Schriften geben kann. Ich schau es mir heute abend an.

Vielen Dank schonmal für deine Hilfe.


Grummelgast

Re: Inhaltsverzeichnis Einträge bis \paragraph fett darstellen

Beitrag von Grummelgast »

Marcel hat geschrieben:
Mi 13. Okt 2021, 10:10

Ich habe das nur als Erklärung nachgeschoben weil du geschrieben hast das es Schwierigkeiten zwischen den verschiedenen Schriften geben kann.

Klar, die gibt es ja auch ganz so, wie Gute*r Gȧst*in das auch erklärt hat. Und wie von Gute*r Gȧst*in durch (auskommentierte) Wahl unterschiedlicher Schriftpakte ebenfalls demonstriert, sind diese Schwierigkeiten von der Wahl der Schrift abhängig. Gleichzeitig zeigt das Beispiel auch, dass bei LaTeX grundsätzlich Ersatzpfade für nicht vorhandene Schriftmischungen vorgesehen sind. Man muss aber selbst entscheiden, ob man eher mit diesen automatischen Ersetzungen leben kann oder mit der Wahl einer anderen Schrift.


Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Re: Inhaltsverzeichnis Einträge bis \paragraph fett darstellen

Beitrag von KOMA »

Es gibt übrigens außer den Beispielen in der KOMA-Script-Anleitung scrguide.pdf auch noch einige Beispiele zur Konfigurierung von Überschriften und zur Konfigurierung von Verzeichnissen und Verzeichniseinträgen im KOMA-Script-Wiki. Auch auf komascript.de kann man eventuell noch fündig werden. Dass da nun genau das dabei ist, was Du als Änderung haben willst, ist eher unwahrscheinlich. Es erweitert aber die Erklärungen in der Anleitung. Damit hilft es ggf. beim Verständnis. Es sollte dann nicht mehr allzu schwer sein, die Überschriften und Verzeichnisse wunschgemäß anzupassen. Wenn doch, kannst Du zumindest zeigen, wie weit Du (ohne das veraltete Experiment tocstyle) gekommen bist, und daran dann möglichst genau erklären, was noch anders sein soll. Mir ist derzeit bei Deiner Frage nämlich nicht 100% klar, welcher Font-Wunsch sich auf eine Überschrift und welcher auf einen zugehörigen Eintrag im Inhaltsverzeichnis bezieht. Auch die von Dir gewählten (und von Gast/Gästin übernommenen) Einzüge der Inhaltsverzeichniseinträge erscheinen mir eher merk- bis fragwürdig als durchdacht und beabsichtigt.


Antworten