PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Listings werden umgebrochen?



ragna
17-12-2005, 16:42
Hmm .. hoffe das der Titel halbwegs sinnvoll ist ^^
bin recht neu in der LaTeX-Szene (2Tage und 300 Seiten PDFs gelesen ^^)

Jedenfalls hab ich folgendes Problem:

Ich möchte für meine Datenbankübung mySQL Schnipsel als Listings aufführen, doch leider werden die am Seitenende gebrochen und nicht automatisch auf die neue Seite geschoben wie bei anderen float umgebungen :-\.
Ich hoffe es gibt dafür eine einfache Lösung ^^.

Des weiteren wird der Quellcode der nicht als Syntax erkannt wird gestreckt :(. (Abgesehen davon das die wenigsten SQL befehle erkannt werden )

Um zu verdeutlichen was ich meine eine kleine Abbildung ;):

http://www.uni-weimar.de/~yoxn6965/prob.PNG


Würde mich über eine kleine Hilfe sehr freuen...
Sollte die TeX Eingabe nötig sein kann ich die natürlich auch noch posten :)

bischi
17-12-2005, 16:49
Tja - in ne Float-umgebung reinpacken oder in ne Minipage.

MfG Bischi

countbela666
17-12-2005, 17:08
Die lstlisting-Umgebung ist nicht automatisch eine Gleitumgebung, das kannst du aber mit dem Umgebungsparameter float ändern, dann wird auch nicht mehr umbrochen:

\begin{lstlisting}[float=hbt,caption={blupp}]
blabla
\end{lstlisting}Grüße,
Marcel

ragna
17-12-2005, 17:24
Hah!
genau das hab ich doch gesucht ;)
habs dumm wie ich war in eine extra [ ] dahinter geschrieben ^^

besten dank countbela666
werdes gleich mal testen

hat noch jmnd eine ahnung warum es den text streckt?
oer welche option dagegen hilfT? ^^

PS: kann das auch in den listset teil? ... hmm ich probiers einfach mal ^^

ragna
17-12-2005, 18:07
Hmm ... ich sehe gerade das er mir jetzt das listing mittig auf die nächste seite klatscht und den text den ich eigentlich drunter geschrieben habe ignoeriert und noch auf die alte seite setzt ...

super .. komm ich wohl um eine minipage nicht drum rum ;(
ganzschön umständlich irgendwie :-\

EDIT: mit
/begin{minipage}
/begin{lstlisting}
blub
/end{lstlisting}
bla
/end{minipage}

wirft mir der compiler irgendwie fehler ... :(

countbela666
17-12-2005, 18:25
Hmm ... ich sehe gerade das er mir jetzt das listing mittig auf die nächste seite klatscht und den text den ich eigentlich drunter geschrieben habe ignoeriert und noch auf die alte seite setzt ... Das ist nunmal genau das Prinzip einer Gleitumgebung: Du hast deinen Gliederungsabschnitt, für den du Gleitobjekte (Bilder, Tabellen, Listings etc.) einbindest und dann den zugehörigen Text schreibst, in welchem du auf die Objekte verweist ohne dich um die Positionierung der Objekte kümmern zu müssen.

Wenn das Gleitobjekt nicht mehr auf die aktuelle Seite passt, kommt es halt auf die nächste. Und wenn dann der Text, der deiner Meinung nach nach dem Objekt stehen sollte, nicht vor das Objekt gezogen würde, gäb das ja extrem unschöne Lücken, die in einem vernünftig gesetzten Text nun mal nichts zu suchen haben.

Das Paket float bietet übrigens den float-Parameter H an, der dann (fast) auf Biegen und Brechen versucht, die Gleitumgebung HIER zu platzieren, vielleicht hilft ja das schon.


hat noch jmnd eine ahnung warum es den text streckt?Weiß nicht, ob ich dich richtig verstehe. Wenn "gestreckter Text" bei dir z.B. das Aussehen des Worts Professoren in deinem oben geposteten Screenshot beschreiben soll, liegt das an einem unschön aussehenden Monospace-Font. Wenn du den nicht willst, kannst du entweder einen anderen einbinden (\renewcommand{\ttdefault}{pcr} stellt z.B. Courier als Standard-Monotype ein), oder über den lstset-Befehl den Basicstyle auf einen anderen Font umstellen, z.B. mit \lstset{basicstyle=\rmfamily} auf Roman.

Grüße,
Marcel

ragna
17-12-2005, 18:28
ok gleich wieder testen :) bist ein schatz :)
btw wenn du magst kannst mich ja mal per icq adden :335550319 ^^
dann brauchste nicht sollche romane auf kurz gemeinte fragen schreiben =)

countbela666
17-12-2005, 18:29
mit
/begin{minipage}
/begin{lstlisting}
blub
/end{lstlisting}
bla
/end{minipage}

wirft mir der compiler irgendwie fehler ... :(mit

/begin{minipage}{\textwidth}
/begin{lstlisting}
blub
/end{lstlisting}
bla
/end{minipage}immer noch?

ragna
17-12-2005, 18:31
ja auch damit ^^ mom ich schreib mal ebend den fehler noch auf ;)

latex error: not in outer par mode.

und noch

undefined control sequence.

EDIT: peinlich sorry ... hab jezz das float weg gemacht ;) jetzt gehts :>
EDIT2: aber dieser auseinadergezogene text (^^ fachbegriff fällt mir gerade nicht ein )
ist trotz basicstyle immernoch

countbela666
17-12-2005, 18:38
wenn du das Listing in 'ne Minipage packen willst, darf es natürlich nicht mehr gleiten (muss es ja auch nicht mehr), also nimm das [float] raus, dann sollte es funzen

zu spät... :D

ragna
17-12-2005, 18:40
@ mich doch mal im icq ;)
das erleichtert uns das leben doch ungemein ^^ ;)
kann auch msn und aim bieten ^^ oder zur not irc :>

ragna
18-12-2005, 21:09
ok noch eine frage ^^
Ich musst ja gewissermaßen meine listings in eine minipage packen damit sie nicht umbrochen wird ...
und da ich auch nicht wollte das der text der nach dem listing stehen soll davor steht, habe ich den gleich mit in die minipage geschrieben.
Nun ist mein Problem das der Abstand zwischen dem Listing und dem Text in der minipage kleiner ist als im normalen Text.
Kann man dagegen etwas tun?

ragna
20-12-2005, 08:57
wollte eigentich kein neuen thread für aufmachen ... hoffentlich reagiert nochmal wer hier drauf ;)

fhess
20-12-2005, 10:49
@ mich doch mal im icq ;)
das erleichtert uns das leben doch ungemein ^^ ;)
kann auch msn und aim bieten ^^ oder zur not irc :>

Dann geht aber der Sinn dieses Forums verloren. Probleme und deren Lösungen sollen ja auch für andere Leser erhalten bleiben.

ragna
20-12-2005, 13:22
naja es geht aber schneller ;)
und ob die fragen die ich habe für den grosstteil der leute die hier lesen relefant sind möchte ich bezweifeln ^^
aber auch egal ;)
würde gern wissen wie ich es hinbekomme das der absatz in einer minipage genauso gross ist wie der auserhalb?