Eine weitere Möglichkeit besteht darin, XeLaTeX oder LuaLaTeX zu verwenden. Da diese beiden UTF8 nativ beherrschen, sind UTF8-Zeichen dann ebenfalls einzelne Zeichen und werden nicht mehr über aktive Zeichen + weitere Zeichen (also letztlich mehrere Zeichen) realisiert. Daher kann `listings` dann plötzlich auch mit UTF8 codierten Listings umgehen:
\documentclass{article}
\usepackage{fontspec}
\usepackage{listings}
\begin{document}
abc äöüß
\begin{lstlisting}
\chapter{Test} %Überschrift der Ebene chapter
%ä Ö ß
\end{lstlisting}
\end{document}
Natürlich darf man dann weder `fontenc` noch `inputenc` verwenden. Siehe dazu auch: [Was ist der Unterschied zwischen `latex`, `pdflatex`, `lualatex` und `xelatex`?](http://texwelt.de/wissen/fragen/5868)