PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Code Umgebung basteln



curbaxx
15-02-2005, 18:10
Hi!!!

Ich bin total verzweifelt, da ich eine Code-Umgebung für meine Facharbeit basteln muss.

Folgendes:
Ich will PHP-Code in einer Umgebung darstellen, die folgendes hat:

* grauen Hintergrund
* schwarze Schrift
* nicht jedes Zeichen muss maskiert werden!

Hab mir mal folgendes Kommando gebastelt:



\newcommand{\codebox}[3]{
\begin{figure}
\begin{center}
\fcolorbox{black}{hellgrau}{\parbox{14.8cm}{#3}}
\end{center}
\caption{#1}
\label{#2}
\end{figure}
}


Hiermit kann ich mit

\codebox{Abbildungsname}{labelDerAbb}{Text der in der Box ist}

aufrufen und erhalte eine box mit hellgrauem Hintergrund inkl zeilenumbruch durch die parbox... ABER!!
Wenn ich jetzt aber den PHP Code benutzen will, müsste ich alles immer maskieren und das raubt Zeit und macht dieses Kommando wieder unnütz.

Kann mir bitte jemand helfen, die Box so zu erweitern, dass der Code so dargestellt wird, wie geschrieben (hab schon mit vielen CodeBoxes experimentiert, aber ich finde bei denen weder die Option für grauen Hintergrund, noch für Zeilenumbruch).

Danke im Voraus

mfg dave

moedule
15-02-2005, 22:20
suchst du sowas wie verbatim?

\begin{verbatim}
hier steht code so wie er da steht??
\end{verbatim}

allerdings weiß ich nicht inwiefern das zusammen mit der box und so verträglich ist

moe

Boron
16-02-2005, 07:33
Warum so kompliziert?

\usepackage{listings}

Und dann die Doku dazu lesen. Da hat es sogar ein Beispiel drin mit Hintergrundfarbe.

curbaxx
16-02-2005, 15:36
Stimmt war echt zu kompliziert...

War vorher schon zu dizzy, dass ich es verabsäumt habe, mich damit genauer zu beschäftigen ....

Hab jetzt eine passende Lösung gefunden:



\begin{lstlisting}[breaklines=true, caption={Modul hinzufügen}, frame=TRLB, label=addmod]

TEXT

\end{lstlisting}


Ein Problem taucht aber leider wieder auf (geht eh nicht ohne ;) ).
Ich habe diese Grafik eingebunden,



\begin{floatingfigure}[r]{0.4\textwidth}
\includegraphics[width=0.35\textwidth]{modsec.jpg}
\caption{mod\_security}
\label{fig:modsec}
\end{floatingfigure}


aber sie überschneidet sich mit einem der Listings. Also die Pos. von der Grafik passt nur sollte das Listing weiter unten sein.
Wie krieg ich die runter?

Danke für jegliche Hilfe

Gruß curb

Boron
16-02-2005, 16:01
Bild wird über das Listing gelegt?

Zwei Ideen, beide ohne Gewähr:
1. Bild im figure Umgebunf legen, nicht in floatingfigure
\begin{figure}[ht]
\centering
\includegraphics[scale=.25,angle=-90]{Bilder/impl-metz-alternative}
\caption{Alternative nach Metz, O'Brien, Weber}
\end{figure}
2. Listing in table Umgebung legen
\begin{table}
\begin{lstlisting}
typedef enum { // Aufzählung aller Ereignisse
E_START, E_PAUSE, E_STOPP
} Event;
\end{lstlisting}
\end{table}Probier mal das eine oder das andere aus.

curbaxx
16-02-2005, 16:30
Danke nochmal für deine Hilfe, ich hab jetzt aber noch was anderes gefunden, das in meinem Fall gefunkt hat.

Ich hab bei dem Listing noch ein float=th eingefügt und bei der floatingfigure habe ich als Positionierung "br" ...

Dann noch etwas bei den Absätzen geändert und siehe da es funktioniert :)

ciao, curb