Wie Zeilen im Quellcode grün hinterlegen?

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Wie Zeilen im Quellcode grün hinterlegen?

von Tobias85 » Mo 2. Jan 2012, 20:05

Das hört sich gut an. Allerdings bekomme ich keine zwei Zeilen untereinander markiert, ohne dass sich ein weißer Streifen dazwischen bildet, oder der Quelltext dadrunter sich verschiebt. Gibt es dazu auch noch einen Tipp? Vielen Dank.

von iTob » Mo 2. Jan 2012, 00:38

Kurz googlen liefert folgende Idee:
\documentclass[12pt]{article}
\usepackage{listings,color}
\begin{document}

\newcommand{\Hilight}{\makebox[0pt][l]{\color{cyan}\rule[-4pt]{0.65\linewidth}{14pt}}}
\begin{lstlisting}[escapechar=\%]
   start:$
   %\Hilight%mov   r1,   xF0  -- Reset ptr value$
   mov   r2,   x00  -- Reset total value$
\end{lstlisting}
\end{document}
Quelle: http://www.latex-community.org/forum/vi ... f=4&t=2835

Wie Zeilen im Quellcode grün hinterlegen?

von Tobias85 » So 1. Jan 2012, 23:56

Hallo Zusammen,
erstmal ein frohes, neues Jahr 2012!

Ich hänge nun den ganzen Abend schon an meinem Java-Quellcode in der Beamerpräsentation. Leider will es mir nicht gelingen, Java-Quellcode links zu plazieren, rechts Erklärungen und passende Zeilen im Quellcode markieren. Solange alles den gleichen Hintergrund hat, geht alles glatt, aber sind es einzelne Zeilen.
Hier beginnt er durch das neue Listing natürlich immer neu zu Zählen, auch ist der Abstand der Blöcke viel zu groß:
\begin{frame}[fragile]
	\frametitle{Summen \"uber Software-Artefakte}
		\begin{columns}[totalwidth=\textwidth]
    \column{.5\textwidth}
				\begin{lstlisting}
					package U09;
					
					public abstract class A {
					  abstract int a(); 
					}
				
					class B extends A {
				  // Does this...\end{lstlisting}
				\begin{lstlisting}[backgroundcolor=\color{green}]
				  public void a() {...}\end{lstlisting}
				\begin{lstlisting}[backgroundcolor=\color{white}]
				  // Does that...\end{lstlisting}
				\begin{lstlisting}[backgroundcolor=\color{green}]
				  public void b() {...}\end{lstlisting}
				\begin{lstlisting}[backgroundcolor=\color{white}]
				}
				
				class C extends B {}\end{lstlisting}
				\begin{lstlisting}[backgroundcolor=\color{green}]
				  public void c(int i) {...}
				}
				\end{lstlisting}    \column{.45\textwidth}%
       \begin{block}{\footnotesize Lines of...}LOC = 16\\ ELCO = 3 \\ CLOC \\ NCLOC \end{block}
       \begin{block}{\footnotesize Number of..}NOC \\ NOM \\ NOP \end{block}
    \end{columns}
\end{frame}
Hier stimmt alles, nur wird das markierte nicht formatiert:
\begin{frame}[fragile]
	\frametitle{Summen \"uber Software-Artefakte}
		\begin{columns}[totalwidth=\textwidth]
    \column{.5\textwidth}
				\begin{lstlisting}[escapechar=!]
					package U09;
					
					public abstract class A {
					  abstract int a(); 
					}
				
					!\colorbox{green}{class B extends A}!
				  // Does this...
				  public void a() {...}
				  // Does that...
				  public void b() {...}
				}
				
				class C extends B {}
				  public void c(int i) {...}
				}
				\end{lstlisting}
		\column{.45\textwidth}%
       \begin{block}{\footnotesize Lines of...}LOC = 16\\ ELCO = 3 \\ CLOC \\ NCLOC \end{block}
       \begin{block}{\footnotesize Number of..}NOC \\ NOM \\ NOP \end{block}
    \end{columns}
\end{frame}
Hat jemand eine Idee, wie ich beides vereine? Vielen Dank im Vorraus

Nach oben