PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : nach breaklines=true verschwindet mein Rahmen!! :(



Thassi10
24-01-2008, 03:50
Hallo,
ich (LaTeXneuling) möchte zwei lstenvironments in eine gewöhnliche environment einbetten. Mein Ziel ist es grauen und farbigen Quellcode gemeinsam in einem farbigen Rahmen unterzubringen samt Zeilennummern.

Was ich bis jetzt zusammengefriemelt hab, sieht folgendermaßen aus, und funktioniert auch bis auf einen kleinen Haken:

\newenvironment{fshaded}{%
\def\FrameCommand{\fcolorbox{framecolor}{shadecolo r}}%
\MakeFramed{\FrameRestore}}%
{\endMakeFramed}

\newenvironment{fdef}[1][]{%
\definecolor{shadecolor}{rgb}{.9,.9,1}%
\definecolor{framecolor}{rgb}{.1,.0,.7}%
\definecolor{framecolor}{rgb}{.1,.0,.7}%
\changefont{pcr}{m}{n}%
\color{gray1}%
\noindent%
\begin{fshaded}\vspace{12 pt}}{\end{fshaded}}

% ----------------------------------------------------------------

\lstnewenvironment{sourceCode}
{
\color{black}%
\vskip -12 pt%
\lstset{rulecolor=\color{framecolor},
keywordstyle=\color{darkblue},
identifierstyle=\color{black},
stringstyle=\color{blue},
commentstyle=\color{darkgreen},
breaklines=true
}
}{}

\lstnewenvironment{grayCode}
{
\color{gray1}%
\vskip -12 pt%
\lstset{rulecolor=\color{framecolor},
keywordstyle=\color{gray1}
}
}{}


Da meine Quellcodezeilen oft zu lang für eine Zeile waren, musste ich das Attribute breaklines auf true setzen. Dann verschwinden allerdings mehr oder weniger zufällig die Ränder meiner Quellcodebox. Ich habe schon versucht die inneren listings irgendwie in der Breite zu beschränken oder zu verschieben oder die environment breiter zu machen. Es klappt aber alles nicht.

Hat jemand eine Idee, wie man das lösen könnte?
Ein völlig anderer Ansatz wäre mir auch recht - so lange er denn funktioniert :) Ich sitze jetzt schon eine ganze Weile darüber und finde keinen Weg.


Vielen Dank!

Gruß MaX

Thassi10
26-01-2008, 13:28
hm,
hat keiner eine Idee? Oder ist die Frage zu konfus - zu schwer - zu trivial - total uverstädnlich?

Ich hab nach viel Rumprobieren leider immer noch keine Lösung gefunden :(

bischi
26-01-2008, 13:40
Ich hatte breaklines=true auch schon verwendet - ohne Probleme. Vielleicht postest du am besten einmal ein Minimalbeispiel und einen Screenshot...

MfG Bischi