Dabei wird unter anderem bei einer öffnenden geschweiften Klammer ein Zeilenumbruch gemacht.
Bei Methoden und Schleifen etc. ist das auch gut, allerdings möchte ich das bei Array-Initialisierungen vermeiden.
Deshalb habe ich versucht die automatische Formatierung auszuschalten durch das 'Überschreiben' der Settings mittels \lstdefineformat, allerdings hat das keine Wirkung.
Hier ein Minimalbeispiel:
\documentclass{scrbook}
\usepackage[formats]{listings}
\usepackage{color}
\lstdefineformat{Java}{%
\{=\string\newline\indent,%
\}=[;]\newline\noindent\string,%
\};=\newline\noindent\string\newline,%
;=[\ ]\string\space}
\definecolor{dkgreen}{rgb}{0,0.6,0}
\definecolor{gray}{rgb}{0.5,0.5,0.5}
\definecolor{mauve}{rgb}{0.58,0,0.82}
\lstset{frame=tb,
language=Java,
format=Java,
aboveskip=3mm,
belowskip=3mm,
showstringspaces=false,
columns=flexible,
basicstyle={\small\ttfamily},
numbers=none,
numberstyle=\tiny\color{gray},
keywordstyle=\color{blue},
commentstyle=\color{dkgreen},
stringstyle=\color{mauve},
breaklines=true,
breakatwhitespace=true,
tabsize=3
}
\begin{document}
%Hier soll automatisch formatiert werden
\begin{lstlisting}[frame=single]
for(int i = 0; i < 10; i++){System.out.println(Math.pow(i, i))}
\end{lstlisting}
\lstdefineformat{Java}{%
\{=,%
\}=[;],%
\};=,%
;=[\ ]}
%Hier soll die bei dem int-Array kein Zeilenumbruch stattfinden (Formatierung ganz ausschalten???)
\begin{lstlisting}[frame=single]
int[] array = new int[]{1, 2, 3, 4, 5};
\end{lstlisting}
\end{document}Danke und schöne Grüße
