Probleme mit \usepackage{listings}; captionof; section Thema ist als GELÖST markiert

Tabellen und Grafiken erstellen und anordnen


Anton

Probleme mit \usepackage{listings}; captionof; section

Beitrag von Anton »

Hallo,

1) wie heißt der counter von listings?, so dass ich so was wie \captionof{listings}[Steuerung]{Steuerung} verwenden kann.

2) Aus http://www.komascript.de/node/477 folgere ich, dass Debian Lenny bei listings schon veraltert ist, da ich (fast) das (gleiche) Problem auch habe. Allerdings trat das auch mit frisch heruntergeladenen listings auf.

3) Wie kann ich \lstlistoflistings von chapter zu section degradieren, analog zu \KOMAoption{listof}{leveldown} für \listoffigures und \listoftables?

Miniaturbeispiel:
	
\documentclass{scrbook}

\usepackage{caption}
\usepackage{listings}
%\lstset{ %}


\makeatletter
\@ifundefined{float@listhead}{}{%
    \renewcommand*{\lstlistoflistings}{%
        \begingroup
    	    \if@twocolumn
                \@restonecoltrue\onecolumn
            \else
                \@restonecolfalse
            \fi
            \float@listhead{\lstlistlistingname}%
            \setlength{\parskip}{\z@}%
            \setlength{\parindent}{\z@}%
            \setlength{\parfillskip}{\z@ \@plus 1fil}%
            \@starttoc{lol}%
            \if@restonecol\twocolumn\fi
        \endgroup
    }%
}
\makeatother

\renewcommand\lstlistingname{Quellcode}

\begin{document}

\chapter{Inhalt}
\begin{table}
	\captionof{listings}[Steuerung]{Steuerung}%geht so nicht
	\label{code:Steuerung}
	\begin{tabular}{ll}
		bei listings & nicht vorhandene Programmiersprache
	\end{tabular}
\end{table}

\chapter{Abbildungen, Quellcode und Tabellen}
	\KOMAoption{listof}{leveldown}
	%\listoffigures
	%\listoftables	
	\renewcommand\lstlistlistingname{Quellcodeverzeichnis}
	\lstlistoflistings

\end{document}
Vielen Dank

sommerfee
Forum-Century
Forum-Century
Beiträge: 219
Registriert: Sa 12. Jul 2008, 08:02

Re: Probleme mit \usepackage{listings}; captionof; section

Beitrag von sommerfee »

Anton hat geschrieben:1) wie heißt der counter von listings?, so dass ich so was wie \captionof{listings}[Steuerung]{Steuerung} verwenden kann.
\captionof{lstlisting}{...}
3) Wie kann ich \lstlistoflistings von chapter zu section degradieren, analog zu \KOMAoption{listof}{leveldown} für \listoffigures und \listoftables?
Das listings-Paket hat eine Paketoption hierfür. Ich weiß sie nicht aus dem Kopf, sollte aber in der Dokumentation zu finden sein.

Liebe Grüße,
Axel

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

Seit KOMA-Script 3.03a gibt es das Paket scrhack. Da es ein Experiment ist, findet sich die Doku dazu getrennt von der KOMA-Script-Anleitung als scrhack.pdf. Eine Aufgabe dieses Pakets ist, listings unter Kontrolle von tocbasic zu stellen. Damit wird dann nicht nur die babel-Kompatibilität erhöht, sondern auch eine einheitliche Schnittstelle für solche Features geschaffen. Also geht dann:
\documentclass{scrbook} 
\usepackage{scrhack}
\usepackage{caption} 
\usepackage{listings} 
 
\renewcommand\lstlistingname{Quellcode} 
 
\begin{document} 
 
\chapter{Inhalt} 
\begin{table} 
  \captionof{lstlisting}[Steuerung]{Steuerung}
  \label{code:Steuerung} 
  \begin{tabular}{ll} 
    bei listings & nicht vorhandene Programmiersprache 
  \end{tabular} 
\end{table} 

\chapter{Abbildungen, Quellcode und Tabellen} 
\KOMAoption{listof}{leveldown} 
\renewcommand\lstlistlistingname{Quellcodeverzeichnis} 
\lstlistoflistings 

\end{document}
Sollte die Verwendung von scrhack eine Fehlermeldung wegen fehlender Dateien (hyperref.hak, float.hak, listings.hak) liefern, dann wurde eine fehlerhafte Distribution verwendet. Auf BerliOS (Link siehe KOMA-Script-Homepage) gibt es eine Distribution, in der diese Dateien enthalten sind.

Anton

Fehlermeldung

Beitrag von Anton »

Hallo

erstmal Danke.

Kleine Korrektur: Normalerweise verwende ich \usepackage{capt-of} statt \usepackage{caption}.

Bei dem von KOMA geschriebenen Miniaturbeispiel erscheint bei mir (Kile) folgende Fehlermeldung:

mini2.tex:0: unknown \lstlistoflistings definition found!(scrhack) Maybe you are using a unsupported listings version.
mini2.tex:19:Undefined control sequence. \chapter
mini2.tex:22:Undefined control sequence. \lstlistoflistings
mini2.tex:22:Undefined control sequence. \lstlistoflistings

Soll ich einen bestimmten Teil der mini2.log-Datei posten?

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

Mit capt-of funktioniert
\captionof{lstlisting}[Steuerung]{Steuerung}
nicht. Da wird schon wirklich das caption-Paket benötigt. Wobei Du eigentlich nicht einmal die Anleitung dazu lesen musst, solange alles funktioniert, denn die meisten Dinge von KOMA-Script bzgl. captions funktionieren mit dem Paket weiterhin. Axel hat sich da sehr viel Mühe gegeben.

Wenn es also mit caption statt capt-of nicht geht, dann füg mal als erste Zeile ein
\listfiles% <-- da ist ein Link, der zur Erklärung führt!
ein und vergleiche die Versionen. Ich verwende:
*File List*
 scrbook.cls    2009/04/03 v3.03a KOMA-Script document class (book)
scrkbase.sty    2009/04/03 v3.03a KOMA-Script package (KOMA-Script-dependent basics and keyval usage)
 scrbase.sty    2009/04/03 v3.03a KOMA-Script package (KOMA-Script-independent basics and keyval usage)
  keyval.sty    1999/03/16 v1.13 key=value parser (DPC)
scrlfile.sty    2009/03/25 v3.03 KOMA-Script package (loading files)
tocbasic.sty    2009/01/20 v3.02a(package)
scrsize11pt.clo    2009/04/03 v3.03a KOMA-Script font size class option (11pt)
typearea.sty    2009/04/03 v3.03a KOMA-Script package (type area)
 scrhack.sty    2009/04/03 v3.03a KOMA-Script package (hacking other packages)
 caption.sty    2008/08/24 v3.1j Customizing captions (AR)
caption3.sty    2008/08/24 v3.1j caption3 kernel (AR)
listings.sty    2007/02/22 1.4 (Carsten Heinz)
 lstmisc.sty    2007/02/22 1.4 (Carsten Heinz)
listings.cfg    2007/02/22 1.4 listings configuration
listings.hak

Anton

Beitrag von Anton »

Hallo

Mein Miniaturbeispiel habe ich schon so getestet wie es da steht, also mit \usepackage{caption}.

O.K. Listings ist veraltert. Installation hat wohl nicht geklappt. Wie installere ich eine aktuelle Version für texlive bei lenny?

phi
Moderator
Moderator
Beiträge: 420
Registriert: Fr 6. Feb 2009, 21:28

Beitrag von phi »

Anton hat geschrieben:Wie installere ich eine aktuelle Version für texlive bei lenny?
Das hängt von der genauen Distribution ab. Lenny enthält offenbar TeX Live 2007, das enthält keinen Paketmanager. Du kannst entweder TeX Live 2008 mit integriertem Paketmanager installieren oder das Paket manuell von CTAN herunterladen und in ~/texmf oder /usr/local/share/texmf installieren.

Anton

Beitrag von Anton »

Ja, ich hatte gedacht zweite Variante gemacht zu haben. Ich schau nochmal genauer, was schlief gelaufen sein kann. (Vermutlich leider erst am Wochenende)

Ist TeX Live 2008 empfehlenswert zu installieren
(Stabilität etc)?

Ansonsten wollte ich mich nochmal bedanken.

Benutzeravatar
Stefan Kottwitz
Admin
Admin
Beiträge: 2525
Registriert: Di 8. Jul 2008, 00:39
Kontaktdaten:

TeX Live 2008

Beitrag von Stefan Kottwitz »

Hallo Anton,

ich kann TeX Live 2008 sehr empfehlen, da die Klassen und Pakete doch wesentlich neuer sind. Der Paketmanager ist eine sehr gute Zugabe. Auf Probleme stieß ich damit nicht. Vorher hatte ich auch TeX Live 2007 auf Ubuntu Linux verwendet und habe mich mit dem MiKTex Paketmanager beholfen, um aktuell bleiben zu können. Falls Dich diese Variante interessiert, siehe evtl. mpm on Ubuntu Linux, mit Debian geht es genauso. Damit kann man die Lenny-tex-Variante behalten und dennoch updaten.

Stefan

hauke.becker@googlemail.c

Beitrag von hauke.becker@googlemail.c »

Hallo, der Tipp mit dem scrhack hat bei mir für Kompatibilität zwischen dem float, listings paketen und dem Koma-script gesorgt. Vielen Dank, dafür!

Antworten