Hallo zusammen, ich habe ein Problem mit der lstlistoflistings. Es werden nicht alle lstlisting Einträge angezeigt. Im Dokument selber werden diese aber korrekt und nummeriert dargestellt. Meine lstlisting sind etwa so aufgebaut und werden per input in das Dokument eingefügt

Open in Online-Editor
\begin{lstlisting}[captionpos=b, caption={[SQL Abfrage]SQL Abfrage}, breaklines=true, showspaces=false, showstringspaces=false,language=SQL, basicstyle=\ttfamily, commentstyle=\color{gray}],
select * from tabelle; 
\end{lstlisting}

Meine Liste enthält die Einträge

  1. Eintrag
  2. Eintrag
  3. Eintrag
  4. Eintrag

danach geht es mit dem 14. von insgesamt 18 Einträgen weiter. Durch das Einsetzen anderer listings an den entsprechenden Positionen (also 1-4 und 14-18) habe ich bereits herausgefunden, das kein Fehler mit den Listing Einträge vorliegt (andere Einträge werden an den genannten Stellen ebenfalls akzeptiert). Daraus ergibt sich die Frage ob die lstlistoflistings eine Beschränkung in der Anzahl der Einträge hat und ob man diese ggf. umgehen kann.

gefragt 16 Jul '16, 22:21

sqldev's gravatar image

sqldev
112
Akzeptiert-Rate: 0%

bearbeitet 16 Jul '16, 22:22

1

Kannst du vielleicht ein komplettes Beispiel zeigen, welches das Problem reprouziert? Ich denke mal, dass \input das Problem ist. Benutz stattdessen \lstinputlisting. Ist allerdings geraten, weil kein Beispiel.

(16 Jul '16, 22:39) Henri

Ich versuch es schaff es grad noch nicht das Verhalten zu reproduzieren

(16 Jul '16, 23:07) sqldev

So als jetzt hab ich es geschafft das Verhalten zu reproduzieren:

\documentclass[a4paper,12pt,]{report}
\usepackage{listings}                                                                         % 
\begin{document}
\lstlistoflistings
\chapter{testkapitel}
\input{sqldummy.tex}
\input{sqldummy1.tex}
\input{sqldummy2.tex}
\input{sqldummy3.tex}
\input{sqldummy4.tex}
\end{document}
Die sqldummyfiles entsprechen der oben angegeben Form. In diesem Beispiel erhalte ich sogar nur den 1. Eintrag in meinem Listingsverzeichnis

(16 Jul '16, 23:29) sqldev
1

schuld scheint das Komma hinter dem optionalen Argument zu sein \color{gray}], <<--. Aber es ist jetzt zu spät, um raus zu finden, wie genau.

(17 Jul '16, 00:43) Ulrike Fischer

Es war das Komma jetzt funktioniert alles vielen Dank

(17 Jul '16, 08:26) sqldev

Ich habe Deine "Antworten" in Kommentare umgewandelt. Du kannst gern stets direkt die Frage editieren und Zusätze einfügen. Hier sind Antworten stets "echte" Antworten, keine Gespräche oder Rückfragen oder Zusatzinfos, sondern Lösungen. Editieren der Frage ist jederzeit möglich und erwünscht. Das verbessert die Übersicht erheblich für die Archivierung der Lösungen. Ungewohnt und anders als in Webforen, doch innovativ und nutzbarer. Bemerkungen gern wie hier als Kommentare.

(17 Jul '16, 10:09) saputello

Könntest Du bitte ein Minimalbeispiel einfügen? Also ein möglichst kurzes, aber komplettes Dokument, von \documentclass{...} bis zu \end{document}, welches das Problem zeigt. Das vereinfacht die Bearbeitung erheblich und ist meist eine Garantie für eine Lösung.

(17 Jul '16, 10:11) saputello
Ergebnis 5 von 7 show 2 more comments

Ich schlage vor statt \input lieber \lstinputlisting zu verwenden. Das hat den Vorteil, dass der zu setzende Quelltext in einer externen Datei, das Layout aber im Hauptdokument bleibt. Außerdem sollte man einige der Optionen global setzen mit \lstset, sodass man sich nicht bei jedem Listing wiederholen muss. Das verhindert auch, dass man mal etwas vergisst.

Open in Online-Editor
\begin{filecontents*}{\jobname.sql}
select * from tabelle;
\end{filecontents*}
\documentclass{article}
\usepackage{xcolor,listings}
\lstset{
  captionpos=b,
  breaklines=true,
  showspaces=false,
  showstringspaces=false,
  basicstyle=\ttfamily,
  keywordstyle=\color{blue},
  commentstyle=\color{gray}
}
\begin{document}
\lstlistoflistings
\lstinputlisting[caption={SQL Abfrage},language=SQL]{\jobname.sql}
\lstinputlisting[caption={SQL Abfrage},language=SQL]{\jobname.sql}
\lstinputlisting[caption={SQL Abfrage},language=SQL]{\jobname.sql}
\lstinputlisting[caption={SQL Abfrage},language=SQL]{\jobname.sql}
\lstinputlisting[caption={SQL Abfrage},language=SQL]{\jobname.sql}
\end{document}

alt text

Permanenter link

beantwortet 17 Jul '16, 11:04

Henri's gravatar image

Henri
15.7k133943
Akzeptiert-Rate: 46%

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:

×24
×20
×3

gestellte Frage: 16 Jul '16, 22:21

Frage wurde gesehen: 6,989 Mal

zuletzt geändert: 17 Jul '16, 11:04