Ich habe in meinem Dokument mehrere Code-Listings aufgeführt, die ich zu Beginn auflisten möchte (mit lstlistoflistings). Davor kommen noch Tabellenverzeichnis, Abbildungsverzeichnis etc. Die Einträge dort haben alle einen 1.5fachen Zeilenabstand zwischen den einzelnen Einträgen. Nur lstlistoflistings scheint diesen zu ignorieren. Im Grunde ist mein Dokument wie hier angegeben aufgebaut. Wie kann ich den Zeilenabstand in lstlistoflistings auch auf 1.5fach ändern und somit an die andere Verzeichnisse anpassen?

Öffne in Overleaf
\documentclass[a4paper,11pt,oneside,numbers=noendperiod,setspace,parskip=half]{scrbook}
\usepackage[ngerman, english]{babel}
\usepackage{blindtext}
\usepackage[font={small}]{caption}
\usepackage{xcolor}

\setcapindent{0pt}

\usepackage{listings}

%\AtBeginDocument{
 % \counterwithout{lstlisting}{chapter}
%}
\makeatletter
\renewcommand{\l@lstlisting}[2]{\@dottedtocline{1}{0em}{1.5em}{\lstlistingname\ #1}{#2}
}
\renewcommand*{\lstlistlistingname}{List of Code Listings}
\makeatother

\lstset{language=R,
    basicstyle=\small\ttfamily,
    numbers=left,
    numberstyle=\ttfamily\color{gray}\footnotesize,
    breaklines=true,
    deletekeywords={pos,data,predict,grid,file,colnames,glm,family,binomial,link,path,c},
    otherkeywords={!,!=,~,\$,*,\&,\%/\%,\%*\%,\%\%,<-,<<-},
    keywordstyle=\color{blue},
    keywordstyle=[2]{\color{red}},
    commentstyle=\color{gray},
    backgroundcolor=\color{gray!25},
    morekeywords=[2]{arg,pos},
    moredelim=[is][\color{violet}]{''}{''}
}

\begin{document}

    \lstlistoflistings

    \begin{lstlisting}[caption={This is the caption for the code listing}]
% Code comes here
    \end{lstlisting}

\blindtext

    \begin{lstlisting}[caption={This is the caption for the code listing}]
% Code comes here
    \end{lstlisting}

\blindtext

    \begin{lstlisting}[caption={This is the caption for the code listing}]
% Code comes here
    \end{lstlisting}

\end{document}

gefragt 19 Sep, 02:41

mholtha's gravatar image

mholtha
614
Akzeptiert: 33%

bearbeitet 19 Sep, 02:45

2

Wenn ich dein Beispiel durch listoffigures und ein paar figure-captions ergänze, hat das Abbildungsverzeichnis den selben Zeilenabstand wie das Listingsverzeichnis. Dein "Im Grunde"-Dokument demonstriert dein Problem nicht.

(19 Sep, 03:19) Ulrike Fischer
1

Das mit Deinem MWE in der Frage entstehende Dokument verwendet den normalen Zeilenabstand genau wie das Verzeichnis der Listings. Ergänze ich in dem MWE in der Frage \usepackage[onehalfspacing]{setspace}, dann ändert sich der Abstand der Einträge sowohl im Dokument als auch im Verzeichnis in gleicher Weise. Du tust also irgendwelche anderen Dinge, die Du uns leider nicht zeigst.

(20 Sep, 05:13) esdd

Ja, also das ist ja nicht das eigentliche Problem gewesen. Das hab ich nach längerem suchen mit folgender Erweiterung gelöst:

Öffne in Overleaf
\@dottedtocline{1}{0em}{1.5em}{\lstlistingname\ #1}{#2}{\addvspace{1em}}

Damit wird dem Listing wohl mitgeteilt, dass ich gerne den selben Zeilenabstand wie im Rest des Dokument haben möchte, zumindest in meinem Dokument.

Permanenter link

beantwortet 20 Sep, 04:10

mholtha's gravatar image

mholtha
614

bearbeitet 20 Sep, 04:10

1

Das mit Deinem MWE in der Frage entstehende Dokument verwendet den normalen Zeilenabstand genau wie das Verzeichnis der Listings. Ergänze ich in dem MWE in der Frage \usepackage[onehalfspacing]{setspace}, dann ändert sich der Abstand der Einträge sowohl im Dokument als auch im Verzeichnis in gleicher Weise. Du tust also irgendwelche anderen Dinge, die Du uns leider nicht zeigst.

(20 Sep, 05:13) esdd

Das Umdefinieren interner Anweisungen, also solcher die ein @ enthalten, sollte man wenn irgendmöglich vermeiden. Dein Vorschlag fügt übrigens zusätzlichen Abstand zwischen den Einträgen ein. Ist ein Eintrag länger als eine Zeile, so wird innerhalb des Eintrags der normale Zeilenabstand verwendet.

(20 Sep, 05:16) esdd
Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs füge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×20
×5
×3

Frage gestellt: 19 Sep, 02:41

Frage wurde angeschaut: 247 Mal

Zuletzt aktualisiert: 20 Sep, 05:16