PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Quellcode in verbatim hervorheben



chris80
15-02-2005, 15:16
Hallo zusammen,

kann mir jemand erklären, wie ich in einer Code-Umgebung (eingeschlossen in \begin{verbatim} ... \end{verbatim}} einen Teil des Codes hervorheben kann (entweder fett oder andere Farbe)?

Versuche es mal zu beschreiben: Mein Code hat folgenden Aufbau:

\begin{verbatim}
quellcode
quellcode <b>das hier soll hervorgehoben werden</b> quellcode
quellcode
\end{verbatim}

Weiß jemand wie man das auf geschickte Art lösen kann?

Danke im Voraus,
Chris

blubb
15-02-2005, 17:19
Die Umgebung alltt dürfte dein Freund sein.
http://texcatalogue.sarovar.org/entries/alltt.html

(ich gehe davon aus, du willst nicht ein übliches Syntax-Highlighting. Dann wäre lsitings.sty dein Freund).
Blubb

chris80
15-02-2005, 18:22
Hallo blubb,

es hat zwar beim ersten Versuch nicht funktioniert, aber jetzt hat es geklappt. Ist genau das, was ich gesucht habe.

Vielen Dank!!

BinEinGast
10-11-2005, 17:39
Die Umgebung alltt dürfte dein Freund sein.
http://texcatalogue.sarovar.org/entries/alltt.html

(ich gehe davon aus, du willst nicht ein übliches Syntax-Highlighting. Dann wäre lsitings.sty dein Freund).
Blubb

ich habe das gleiche problem, aber leider funktioniert die seite bei mir nicht. könnte evtl. jemand deren inhalt posten oder mir schreiben, wie das problem jetzt gelöst wurde?

ich benutze übrigens listings.sty,
aber ein syntax-highlighting für den MIPS gibt's da wohl nicht ... :-)

thx,

benjamin

Salnic
10-11-2005, 17:59
> aber leider funktioniert die seite bei mir nicht.
> könnte evtl. jemand deren inhalt posten
sicher nur ein temp. Problem.


Everything in tt font, but obey commands and line endings.

The alltt package defines the alltt environment which is like the verbatim environment except that \ and braces have their usual meanings. Thus, other commands and environments can appear within an alltt environment.

Alltt is part of the LaTeX distribution.

See also moreverb verbatim vrb.

The authors are Leslie Lamport and Johannes L. Braams.


> mir schreiben, wie das problem jetzt gelöst wurde?

Guckt Dir mal folgendes Dokument der Fernuni Hagen ("LaTex - Fortgeschrittene Anwendungen - oder: Neues von Hobbits") an: http://www.tug.org/protext/ftp/protext/doc/a0279510.pdf
Dort Seite 109


\begin{alltt}
quellcode
quellcode \textbf{das hier soll hervorgehoben werden} quellcode
quellcode
\end{alltt}

Salnic

BinEinGast
10-11-2005, 18:10
das problem ist nur, daß, wenn ich in die alltt - umgebung wechsle, den vorteil der komfortablen zeilennummerierung von lstlisting verliere :-(

ganz abgesehen von dem unangenehmen nebeneffekt, daß alles in ttfamily angezeigt wird.

gibt es keine möglichkeit den text direkt aus der lstlisting-umgebung hervorzuheben?

countbela666
10-11-2005, 18:15
Hallo Benjamin,


ich benutze übrigens listings.sty,
aber ein syntax-highlighting für den MIPS gibt's da wohl nicht ...Du kannst dir aber mit dem listings-Paket recht einfach durch die Definition von Regeln zum Syntax-Highlighting (Schlüsselwörter, Kommentartoken etc) eine eigene Programmiersprache erzeugen. Wäre bei einer großen Anzahl von Listings oder direkt einzubindenden Quellcodefiles auf jeden Fall eine Überlegung wert.

Hier mal ein Beispiel:

\documentclass{article}
\usepackage{listings,color}
\lstdefinelanguage{myasm}{%
keywordstyle=\bfseries\color{blue},
morekeywords={ldaa,anda,oraa,staa}, %Schlüsselwörter
morecomment=**[l][\color{red}]{;}, %Kommentare (kumulativ)
moredelim=*[l][\color{green}]{\#} %imm. Adr. (nicht kumulativ)
}
\begin{document}
\begin{lstlisting}[language=myasm]
ldaa TCTL2
anda #%11110000 ;nur High Byte
oraa #%00000101
staa TCTL2 ;IC3 u. IC2 auf steigende Flanke
ldaa TFLG1
oraa #$03
staa TFLG1 ;Loesche altes IC3, IC2Flag
\end{lstlisting}
\end{document}
bestimmte Teile eines Listings kannst du auf folgende Weise hervorheben:

\documentclass{article}
\usepackage{listings,color}
\begin{document}
\lstset{moredelim=[is][\color{red}]{/*}{*/}}
\begin{lstlisting}
sehr /*viel sinnloses*/ Zeug
\end{lstlisting}
\end{document}Grüße,
Marcel

twobeers
03-12-2005, 20:39
ich habe das auf folgende Weise verwendet:

\begin{alltt} javax.tv.media \end{alltt}package
allerdings möchte ich den Text zwischen \begin{alltt} und \end{alltt} einfach laufend im Text (hier mitten im Satz) dargestellt haben ohne neue Zeile und reichlich Abstand dazwischen - wie muss ich da vorgehen?

thx for help!
TwoBeers

rais
03-12-2005, 21:03
ich habe das auf folgende Weise verwendet:

\begin{alltt} javax.tv.media \end{alltt}package
allerdings möchte ich den Text zwischen \begin{alltt} und \end{alltt} einfach laufend im Text (hier mitten im Satz) dargestellt haben ohne neue Zeile und reichlich Abstand dazwischen - wie muss ich da vorgehen?

thx for help!
TwoBeers
dafür gibt's eigentlich


\verb=javax.tv.media=


Cheers and Beers,

twobeers
04-12-2005, 08:23
@rais: perfekt, das ist genau das was ich wollte - und solche Genieblitze zu so später Stunde ;) thx

countbela666
04-12-2005, 12:03
Alternativ dazu gibt's auch den Befehl \lstinline{...} aus dem listings-Paket, mit dem sich die Vorteile dieses Pakets (Syntax-Highlighting, eigene Sprachdefinitionen etc.) nutzen lassen.

Grüße,
Marcel