Verschiedene Beschriftungen mit listing ?!
Verfasst: Mo 1. Feb 2010, 09:53
Hallo zusammen,
ich schreibe gerade meine Diplomarbeit und habe erst vor einem Jahr mit Latex angefangen...
Ich möchte gerne zwei Code-Umgebungen verwenden mit unterschiedlichen Beschriftungen.
Ich habe folgendes Minimalbeispiel:
Anstatt Code 1.1 und Code 1.2 wäre es schön, wenn folgendes rauskommen würde:
C-Code 1.1 und HTML-Code 1.1 oder zumindest
C-Code 1.1 und HTML-Code 1.2 wäre auch noch ok....
Ist so etwas möglich, sodass ich anstatt label und caption noch zusätzlich den "Namen" übergeben kann, so in der richtung
\begin{CCode}[name=C-Code, caption={Beschriftung1}, label=code:c]
\begin{HTMLCode}[name=HTML-Code, caption={Beschriftung1}, label=code:c]
Vielen Danke und Gruß
Timo
ich schreibe gerade meine Diplomarbeit und habe erst vor einem Jahr mit Latex angefangen...
Ich möchte gerne zwei Code-Umgebungen verwenden mit unterschiedlichen Beschriftungen.
Ich habe folgendes Minimalbeispiel:
\documentclass[a4paper]{scrartcl} \usepackage[T1]{fontenc} \usepackage[latin1]{inputenc} \usepackage[ngerman]{babel} \usepackage{color} % für \definecolor \usepackage{listings} \usepackage{microtype} % Captions im Programmcode \definecolor{red}{rgb}{1,0,0} \definecolor{darkgreen}{rgb}{0,0.392,0} \definecolor{darkblue}{rgb}{0,0,0.75} %***************************** %* Captions der Codeumgebung * %***************************** \renewcommand{\lstlistingname}{Code} % Listingname heisst nun Code \makeatletter \AtBeginDocument{% \renewcommand*{\thelstlisting}{\arabic{section}.\arabic{lstlisting}}% % Nummerierung: section.listing \@addtoreset{lstlisting}{section}} \makeatother %****************************** %* Umgebung fuer Programmcode * %****************************** \lstloadlanguages{[ANSI]C} \lstnewenvironment{CCode}[1][] { \microtypesetup{activate=false} \lstset{ language=[ANSI]C, basicstyle=\ttfamily, basicstyle=\scriptsize, keywordstyle=\color{darkblue}, commentstyle=\color{darkgreen}, stringstyle=\color{red}, showstringspaces=false, captionpos=b, frame=single, numbers = left, #1} } {} %****************************** %* Umgebung fuer Programmcode * %****************************** \lstloadlanguages{HTML} \lstnewenvironment{HTMLCode}[1][] { \microtypesetup{activate=false} \lstset{ language=HTML, basicstyle=\ttfamily, basicstyle=\scriptsize, keywordstyle=\color{darkblue}, commentstyle=\color{darkgreen}, stringstyle=\color{red}, showstringspaces=false, captionpos=b, frame=single, numbers = left, #1} } {} \begin{document} \section{Kapitel} \begin{CCode}[caption={Beschriftung1}, label=code:c] int i; i = 2; \end{CCode} \begin{HTMLCode}[caption={Beschriftung2}, label=code:html] <img src="test.jpg"> \end{HTMLCode} \end{document}
C-Code 1.1 und HTML-Code 1.1 oder zumindest
C-Code 1.1 und HTML-Code 1.2 wäre auch noch ok....
Ist so etwas möglich, sodass ich anstatt label und caption noch zusätzlich den "Namen" übergeben kann, so in der richtung
\begin{CCode}[name=C-Code, caption={Beschriftung1}, label=code:c]
\begin{HTMLCode}[name=HTML-Code, caption={Beschriftung1}, label=code:c]
Vielen Danke und Gruß
Timo