PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Countername im listings-package



murpher
01-11-2006, 12:35
Hallo,

habe ein Problem mit der Nummerierung von Listings.
Ich muss Tabellen, Abbildungen und Listings abschnittsweise und nicht kapitelweise nummerieren.

also z.B. für die erste Abbildung in Kapitel 1, in der Sektion 2:
"Abbildung 1.2.1"

Für Tabellen und Abbildung ist das kein Problem, das mache ich mit:


\usepackage{amsmath}

%Nummerierung von Abbildungen abschnittsweise
\numberwithin{figure}{section}

%Nummerierung von Tabellen abschnittsweise
\numberwithin{table}{section}

"figure" und "table" sind ja dabei die Counter.

Nun benötigt ich das auch für Listings, die ich mit dem Package "listings" erstelle. Leider finde ich den Namen des Counters nicht, den das Package verwendet.

Weiß jemand wo ich den Namen des Counters finde bzw. wie er heißt?
Ich bin auch offen für Alternativen, allerdings ist wichtig, dass die Nummerierung auch im Listingverzeichnis (\lstlistoflistings) korrekt geführt wird.

Vielen Dank!
murpher

sofa-surfer
01-11-2006, 12:58
Hm,

ein kleines Rätsel für dich:
Wenn es für die figure-Umgebung heißt

\numberwithin{figure}{section}
und für die table-Umgebung

\numberwithin{table}{section}.
Wie könnte es dann für die lstlisting-Umgebung aus dem listings-Paket heißen?
Vielleicht ja

\numberwithin{lstlisting}{section} ?? ;)

(Ich hab auch nur mal kurz probiert und wusste es vorher nicht ....)
(EDIT: Und in der Doku steht es auch, wie der Zähler heißt ;))

Matthias

murpher
01-11-2006, 13:20
Hi Matthias,

funktioniert das sicher bei dir? Ich hab das schon vorher getestet und gerade nochmal um Tippfehler auszuschließen - wenn ich das schreibe bekomm ich die Fehlermeldung:

! LaTeX Error: No counter 'lstlisting' defined.
See the LaTeX manual or LaTeX Companion for explanation.

Hast du irgendwelche Zusatz-Packages verwendet?

Gruß
Marco

sofa-surfer
01-11-2006, 13:23
Folgendes Minimalbeispiel funktioniert bei mir:


\documentclass{book}

\usepackage{listings}
\usepackage{amsmath}

\numberwithin{lstlisting}{section}

\begin{document}
\chapter{bla}
\section{blub}
\begin{lstlisting}[caption=bla]
bla blub
\end{lstlisting}

\end{document}

Matthias

murpher
01-11-2006, 13:47
Ok, blöder Fehler. Hatte \numberwithin{... vor \usepackage{listings} eingebunden. :rolleyes: . Zu meiner Verteidigung habe 204 Zeilen Header - da verliert man schonmal den Überblick.

Vielen Dank
Marco