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 '18, 08:41

mholtha's gravatar image

mholtha
628
Akzeptiert-Rate: 50%

bearbeitet 19 Sep '18, 08: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 '18, 09: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 '18, 11: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 '18, 10:10

mholtha's gravatar image

mholtha
628
Akzeptiert-Rate: 50%

bearbeitet 20 Sep '18, 10: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 '18, 11: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 '18, 11:16) esdd
Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

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ügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×20
×7
×3

gestellte Frage: 19 Sep '18, 08:41

Frage wurde gesehen: 1,786 Mal

zuletzt geändert: 20 Sep '18, 11:16