PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Code wiedergabe, Zeilennummerierung, Hintergrund und Verzeichnis?



Tailor
04-07-2008, 09:56
Ich muss für meine Arbeit einige Codeabschnitte im Text erläutern. Dafür muss ich diese erstmal einfügen. Farbliche Hervorhebungen von Befehlen oder so brauch ich nich. Im Grunde brauche ich 3 Dinge.

1. ich möchte den Code genau wiedergeben und zeilenweise nummerieren. (das mach ich z.Z. mit moreverb)
2. Ich hätte die CodeAbschnitte gern grau hinterlegt, wie sieht bei sowas die Eingabe mit colorbox aus?
3. Hat jemand ne Idee wie ich die Teile dann mit Überschriften versehen kann sodass ich dafür ein Verzeichnis im Anhang anlege. Ähnlich wie mit Graphiken?

Ja ich weiß, mit listings wär das alles ganz einfach, aber da dieses Paket 4D-Skript nicht unterstützt, kann ich den Ansatz nicht wählen. Im Moment sieht das bei mir noch so aus:
\begin{listing}
mein code
\end{listing}
Über schnelle Hilfe wär ich echt froh. Ich such schon seit Tagen nach ner Lösung, aber in Tex-universum kenn ich mich noch so garnich aus :o.

voss
04-07-2008, 13:54
Ich muss für meine Arbeit einige Codeabschnitte im Text erläutern. Dafür muss ich diese erstmal einfügen. Farbliche Hervorhebungen von Befehlen oder so brauch ich nich. Im Grunde brauche ich 3 Dinge.

1. ich möchte den Code genau wiedergeben und zeilenweise nummerieren. (das mach ich z.Z. mit moreverb)
2. Ich hätte die CodeAbschnitte gern grau hinterlegt, wie sieht bei sowas die Eingabe mit colorbox aus?
3. Hat jemand ne Idee wie ich die Teile dann mit Überschriften versehen kann sodass ich dafür ein Verzeichnis im Anhang anlege. Ähnlich wie mit Graphiken?

Ja ich weiß, mit listings wär das alles ganz einfach, aber da dieses Paket 4D-Skript nicht unterstützt, kann ich den Ansatz nicht wählen. Im Moment sieht das bei mir noch so aus:
\begin{listing}
mein code
\end{listing}
Über schnelle Hilfe wär ich echt froh. Ich such schon seit Tagen nach ner Lösung, aber in Tex-universum kenn ich mich noch so garnich aus :o.

dann erstellst du für Listings eben auf die Schnelle eine Datei für die Keywords
oder gibst sie mit \lstset{morekeywords={...}} ein. Besseres als listings gibt
es nicht!

Herbert

Tailor
04-07-2008, 14:39
Also gut, wie definier ich denn eine neue Programmiersprache?
geht das auch innerhalb lstset? um \lstset{morekeywords={...}} zu benutzen muss latex ja erstmal wissen an wessen parameter ich rumspiel. ansonsten will ich das leerzeichen und absätze komplett übernommen werden, muss ich das dann auch festlegen oder funzt das dann eher wie ne verbatim umgebung?
Kannst du mir da n beispiel geben?

Stefan_K
04-07-2008, 15:02
Hallo,

schau doch mal in die listings-Dokumentation (http://www.ctan.org/tex-archive/macros/latex/contrib/listings/listings.pdf), z.B. 3.2. Language definitions und 4.18 Language definitions. Beispiele findest Du im Verzeichnis von listings.sty auf Deinem Rechner als lstlang*.sty.

Viele Grüße,

Stefan

Tailor
04-07-2008, 15:25
ich hab grad n dokument dazu gefunden... danke!

Ich meld mich dann wenns nich klappt ;)

Tailor
04-07-2008, 16:30
So schauts aus

\lstdefinelanguage{4dskript}{
morekeywords={for,if,var},
sensitive=false,
}

\lstset{%
language=4dskript,
numbers=left,
stepnumber=1,
numbersep=5pt,
numberstyle=\tiny,
breaklines=true,
breakautoindent=true,
tabsize=2,
keywordstyle=\bfseries,
basicstyle=\ttfamily\footnotesize,
showspaces=false
}

An sich is das toll nur irgendwas stimmt mit basicstyle und keywordstyle nicht. den keywordstyle führt er nur aus wenn ich das kommando für den basicstyle ausblende. Dann erscheinen die keywords in fett. Wenn ich die Zeile basicstyle drin lasse hebt er die keys nicht hervor :confused:
kann mir das einer erklären?

Stefan_K
04-07-2008, 16:39
Hallo Tailor,

wenn Du ein vollständiges Minimalbeispiel (http://minimalbeispiel.de/mini.html) angibst, kann Dir sicher schneller geholfen werden. Nicht jeder potentielle Helfer möchte Deine Zeilen selbst zu einem compilierbaren Dokument erweitern, wenn Du das schon nicht machst, insbesondere mit 4dscript-Befehlen ergänzen, um nach einem Test fundierte Antwort geben zu können.

Mit einem Minimalbeispiel hingegen kann es durchaus schnell getestet, modifiziert und die Korrektur angegeben werden.

Viele Grüße,

Stefan

jeebee
04-07-2008, 19:22
Was mir schon aufgefallen ist: Es gibt Schriften wo sich Bold und Regular bei \ttfamily fast oder gar nicht unterscheiden lassen (Bold fehlt sogar?).