Listing fügt vertikalen Leerraum ein

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: Listing fügt vertikalen Leerraum ein

von Skyfall91 » So 4. Okt 2015, 11:27

Okay ihr habt völlig recht :roll:
Meine Lösung ist mega umständlich, es war die Einstellung über xleftmargin und xrightmargin...Danke für die Hilfe!

von Johannes_B » Sa 3. Okt 2015, 16:48

Ja, das sehen wir. Und das passiert, weil du es so haben willst, zumindest ist der Code der dieses erzeugt in deinem Beispiel. Besserwisser hat dich auch auf das Stichwort hingewiesen.

von Skyfall91 » Sa 3. Okt 2015, 16:39

Wenn du das Minimalbeispiel oben öffnest ist das Listing breiter als der Textbereich (geht über den mit shadowframe erzeugten Rand hinaus), das meinte ich ;) Aber habs jetzt hinbekommen mit einer minipage-variante die ich im netz gefunden habe, passt also :P

Hier noch der Code, falls jemand mal drüber stolpert:
\hspace*{\dimexpr\fboxsep+\fboxrule+1.2em}%
\begin{minipage}{\dimexpr\textwidth-2\fboxsep-2\fboxrule-1.2em}
    \lstinputlisting[EINSTELLUNGEN]{DATEIPFAD}
\end{minipage}
Man kann einfach am Ende der ersten beiden Zeilen mit den em-Werten spielen, um das gewünschte Ergebnis zu erzielen.

von Besserwisser » Fr 2. Okt 2015, 18:07

Vielleicht meinst du ja in Wirklichkeit xleftmargin=5mm?

von Besserwisser » Fr 2. Okt 2015, 18:04

Oder meinst du das Stück Rand links, das du mit framexleftmargin=5mm, selbst eingestellt hast?

von Besserwisser » Fr 2. Okt 2015, 18:01

Besserwisser hat geschrieben:in der Anleitung. Dort steht auch, wie man Listings automatische (wahlweise an jedem Zeichen oder an White-Spaces) umbrechen lassen kann. Bei Bedarf kann sogar ein Umbruchmarker eingefügt werden u. v. m.

von Skyfall91 » Fr 2. Okt 2015, 17:00

Okay danke! Auch wenn ich nicht so viele Listings habe, habe ich nun doch ein Quellcoderzeichnis angelegt. Klappt eigentlich super soweit und ich bin damit zufrieden 8)

Das letzte Problem was jetzt noch ansteht ist was ich oben schon zwei mal genannt habe. Die Listing-Box geht über den Textbereich seitlich hinaus, hat hier jemand noch die zündende Idee? :)

von Besserwisser » Fr 2. Okt 2015, 15:23

BTW: Spätestens wenn ein Listing über mehrere Seiten umbrochen werden kann, sollte die Bezeichnung nicht darunter, sondern darüber stehen, ganz wie bei Tabellen.

von Besserwisser » Fr 2. Okt 2015, 15:22

Wieso denn im Abbildungsverzeichnis? Listings gehören in das Listingsverzeichnis! Wie man das erzeugt, steht ebenfalls in der Anleitung. Dort steht auch, wie man Listings automatische (wahlweise an jedem Zeichen oder an White-Spaces) umbrechen lassen kann. Bei Bedarf kann sogar ein Umbruchmarker eingefügt werden u. v. m.

von Skyfall91 » Fr 2. Okt 2015, 14:48

Hey danke für die schnelle Antwort!
Bin sogar ein wenig weitergekommen und habe es geschafft die Figure-Umgebung rauszuhaun und die Beschriftung wie in der Paket-Doku vorgesehen einzubauen. Habe den Code jetzt allerdings in ein File extrahiert (Was mir wesentlich besser gefällt) und mit dem lstinputlisting Befehl gearbeitet:
\lstinputlisting[language=C++, caption=Listing, captionpos=b]{./code/Beispiel.cpp}
Der Leerraum ist weg, das war ja mein erstes Anliegen :)
Was jetzt allerdings noch nicht passt ist zum einen, dass die Beschriftung von caption nicht im Abbildungsverzeichnis erscheint, was sie auf jedenfall sollte.
Zum anderen ist das Problem mit der Breite noch offen, sprich das Listing geht über die Textbreite hinaus (siehe Minimalbeispiel). Wäre cool wenns mit genau diesem Layout irgendwie auf Textbreite möglich wäre :/

Nach oben