I want to have different listing environments, each with an own caption.
My try was this (vorlage.tex):
\documentclass{scrreprt}
\usepackage{regexpatch}% http://ctan.org/pkg/regexpatch
\usepackage{color}
\definecolor{codecolor}{rgb}{0.8,0.9,0.9}
\definecolor{chatcolor}{rgb}{0.9,0.9,0.8}
\usepackage{listings}% http://ctan.org/pkg/listings
\makeatletter
% --------------------------------------- Chat-Auszug
\newcommand{\lstlistchatname}{Chat-Auszug}
\lst@UserCommand\lstlistofchat{\bgroup
\let\contentsname\lstlistchatname
\let\lst@temp\@starttoc \def\@starttoc##1{\lst@temp{loc}}%
\tableofcontents \egroup}
\lstnewenvironment{chat}[1][]{%
\renewcommand{\lstlistingname}{Chat}%
\xpatchcmd*{\lst@MakeCaption}{lol}{loc}{}{}%
\lstset{
backgroundcolor=\color{chatcolor}
}}{}
% --------------------------------------- Code
\newcommand{\lstlistcodename}{Code}
\lst@UserCommand\lstlistofpycode{\bgroup
\let\contentsname\lstlistcodename
\let\lst@temp\@starttoc \def\@starttoc##1{\lst@temp{loc}}%
\tableofcontents \egroup}
\lstnewenvironment{pycode}[1][]{%
\renewcommand{\lstlistingname}{Code}%
\xpatchcmd*{\lst@MakeCaption}{lol}{loc}{}{}%
\lstset{
backgroundcolor=\color{codecolor},
}}{}
% linksbündige Fußboten
\deffootnote{1.5em}{1em}{\makebox[1.5em][l]{\thefootnotemark}}
\typearea{14} % typearea berechnet einen sinnvollen Satzspiegel (das heißt die Seitenränder) siehe auch http://www.ctan.org/pkg/typearea. Diese Berechnung befindet sich am Schluss, damit die Einstellungen oben berücksichtigt werden
\usepackage{scrhack} % Vermeidung einer Warnung
Then using like this:
\input{vorlage.tex}
\begin{document}
\lstlistofchat
\lstlistofpycode
\begin{pycode}[caption={Import nltk}]
import nltk
\end{pycode}
\begin{chat}[caption={Talking...}]
Sadik: Hello
\end{chat}
\end{document}
This is based on this answer
The different background colors are applied, so the style lstset works. But the caption is not displayed at all.
For the first example the caption should be something like Chat-Auszug 1.1 Import NLTK and for the second example something like Code 1.1 Talking.... Both are not displayed. What am I missing?

floatoption, as far as I know – Apr 04 '16 at 10:58