goLaTeX - Mein LaTeX-Forum

Mein LaTeX-Forum


Login  | Registrieren
Direktlinks:
Zuletzt aktive Beiträge
Unbeantwortete Beiträge
[Erweitert]

Forenstatistik:
Beiträge: 97626
Top-Poster: Johannes_B (5052)

Wir begrüßen unseren neuesten Benutzer timmetimtimme.

Links:


Mit Unterstützung von DANTE e.V.: Deutschsprachige Anwendervereinigung TeX. Danke den Mitgliedern!





Forum
      Option
[Erweitert]
  • Diese Seite weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Abbildungsverzeichnis unterteilen in Section Subsection

 

heinrich
Forum-Anfänger
Forum-Anfänger

Beiträge: 11
Anmeldedatum: 14.05.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.03.2019, 17:11     Titel: Abbildungsverzeichnis unterteilen in Section Subsection
  Antworten mit Zitat      
Hallo,

mein Abbildungsverzeichnis erstellt automatisch Abstände zwischen den einzelnen Chaptern. Das ist auch super.
Ich hätte das auch gerne zwischen den Section und Subsections.
Hätte jemand evtl eine Idee wie ich das hin bekomme oder wo ich eine Antwort finden würde?

Das wichtigste aus der Präambel wäre vermutlich das hier:

Code • Öffne in Overleaf

\documentclass[a4paper,10pt,open=right, twoside,]{scrreprt}                
\usepackage[utf8]{inputenc}                  
\usepackage[ngerman]{babel}        
\usepackage[T1]{fontenc}                    
\usepackage{amsfonts}
\usepackage{scrhack}


%Abstand im Abbildungsverzeichnis
\makeatletter
\renewcommand{\l@figure}{\@dottedtocline{1}{5em}{3.7em}}
\makeatother

\begin{document}


\newpage  


\listoffigures


\newpage

\end{document}
 


Für jeden Tipp dankbar!!!
Private Nachricht senden Benutzer-Profile anzeigen

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.03.2019, 17:53     Titel:
  Antworten mit Zitat      
Zunächst einmal sei empfohlen, \l@figure nicht in der gezeigten Weise umzudefinieren, sondern besser etwas wie
Code • Öffne in Overleaf
\DeclareTOCStyleEntry[%
  numwidth=3.7em
  indent=5em
]{default}{figure}
zu verwenden. Näheres zu der Anweisung findest du im tocbasic-Kapitel in Teil II der KOMA-Script-Anleitung, scrguide.

In derselben Anleitung findest du auch \addchaptertocentry, \addsectiontocentry, \addsubsectiontocentry und \doforeachtocfile. Über \addchaptertocentry wird in der Voreinstellung nicht nur der Inhaltsverzeichniseintrag für Kapitel erzeugt, sondern optional auch ein Eintrag in die anderen Verzeichnissen. Man kann das für \addsectiontocentry adaptieren (ungetestet):
Code • Öffne in Overleaf
\makeatletter
\renewcommand*{\addsectiontocentry}[2]{%
  \addtocentrydefault{section}{#1}{#2}%
  \doforeachtocfile{%
    \addtocontents{\@currext}{\protect\addvspace{.5\protect\baselineskip}}%
  }%
}
\makeatother

gast
Gast

Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.03.2019, 20:26     Titel:
  Antworten mit Zitat      
Super, funktioniert.
Vielen Dank!



PS:
Bei der Änderung von \l@figure bekomme ich eine Fehlermeldung. Liegt bestimmt ein Konflikt mit einem anderem Paket vor... Mal sehen, lese mich mal ein

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.03.2019, 20:47     Titel:
  Antworten mit Zitat      
Das fehlt ein Komma zwischen den Optionen. Und \doforeachtocfile würde ich per optionalem Argument auf float einschränken. Sonst landet der Abstand beispielsweise auch im Inhaltsverzeichnis.

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.03.2019, 11:39     Titel:
  Antworten mit Zitat      
Ja, stimmt. Ich war gestern nicht so ganz in der Verfassung, das komplett auszuführen. Hier einmal ein Beispiel:
Code • Öffne in Overleaf
\documentclass[10pt,open=right,twoside]{scrreprt}                
\usepackage[utf8]{inputenc}% Bei Verwendung einer aktuellen LaTeX-Installation überflüssig!      
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage{scrhack}% Damit wird der Abstand auch bei listings berücksichtigt!
\usepackage{xpatch}% Sehr gut, um vorhandene Anweisungen zu erweitern.

% Einzüge im Abbildungsverzeichnis
\DeclareTOCStyleEntry[%
  numwidth=3.7em,
  indent=5em, % bisschen viel, oder?
]{default}{figure}
% Abstände in den Gleitumgebungsverzeichnisse für \chapter, \section
% und \subsection
\KOMAoptions{listof=chaptergapline}% eine Zeile lässt sich für \chapter
                                   % einfach per Option einstellen

% Für \section und \subsection geht es nicht ohne Umdefinieren oder Patchen.
% \@currext benötigt wird, müssen wir
\makeatletter % @ zu einem Buchstaben machen
\xapptocmd{\addsectiontocentry}{%
  \doforeachtocfile[float]{% Bei allen Gleitumgebungsverzeichnissen (Besitzer "float"):
    \addtocontents{\@currext}{%
      \protect\addvspace{.75\protect\baselineskip}% Einen mittleren Abstand einfügen.
    }%
  }%
}{}{\PatchFailed}
\makeatletter % @ zu einem Buchstaben machen
\xapptocmd{\addsubsectiontocentry}{%
  \doforeachtocfile[float]{% Bei allen Gleitumgebungsverzeichnissen:
    \addtocontents{\@currext}{%
      \protect\addvspace{.5\protect\baselineskip}% Einen kleineren Abstand einfügen.
    }%
  }%
}{}{\PatchFailed}
\makeatother % \makeatletter wieder aufheben

% Nur zur Verdeutlichung ändere ich jetzt noch die Nummerierung der
% Abbildungen. Das war nicht verlangt und sollte daher weggelassen werden:
\counterwithin*{figure}{section}
\counterwithin*{figure}{subsection}
\renewcommand*{\thefigure}{%
  \ifnum\value{subsection}<1
    \ifnum\value{section}<1
      \ifnum\value{chapter}<1
      \else \thechapter.\fi
    \else \thesection.\fi
  \else \thesubsection.\fi
  \arabic{figure}%
}
     
\begin{document}
\listoffigures

\chapter{Erstes Kapitel}
\captionof{figure}{Erste, gefakte Testabbildung}
\captionof{figure}{Zweite, gefakte Testabbildung}

\chapter{Zweites Kapitel}
\captionof{figure}{Dritte, gefakte Testabbildung}
\captionof{figure}{Vierte, gefakte Testabbildung}

\section{Erster Abschnitt}
\captionof{figure}{Fünfte, gefakte Testabbildung}

\subsection{Erster Unterabschnitt}
\captionof{figure}{Sechste, gefakte Testabbildung}
\captionof{figure}{Siebte, gefakte Testabbildung}

\chapter{Drittes Kapitel}
\section{Noch ein Abschnitt}
\subsection{Noch ein Unterabschnitt}
\captionof{figure}{Achte, gefakte Testabbildung}
\captionof{figure}{Neunte, gefakte Testabbildung}

\end{document}

Man sieht an dem Beispiel auch gleich, dass sich die Abstände nicht aufsummieren, sondern dank \addvspace der größte der aufeinandertreffenden Abstände verwendet wird.

Mit Option \chapteratlists kann man den Abstand bei \chapter übrigens auch noch feiner einstellen.

Bartman
Forum-Meister
Forum-Meister


Beiträge: 1659
Anmeldedatum: 16.07.09
Wohnort: Hessische Provinz
Version: ---
     Beitrag Verfasst am: 05.03.2019, 16:20     Titel:
  Antworten mit Zitat      
Das zweite \makeatletter scheint kein Problem zu sein, muss aber auch nicht übernommen werden.
Private Nachricht senden Benutzer-Profile anzeigen

Neues Thema eröffnen Neue Antwort erstellen



Options and Permissions
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen
.

goLaTeX ist Teil der goForen
goForen.de goMATLAB.de goLaTeX.de


  Datenschutzerklärung | Impressum | FAQ | goLaTeX RSS Button RSS-Feed

Copyright © 2008 - 2019 goLaTeX.de