Archiv verlassen und diese Seite im Standarddesign anzeigen : zu volle Boxen (overfull hbox) bei Pfadangaben
Hallo allerseits,
ich möchte gerne im Fließtext mehrere Pfadangaben machen (muß kein Link sein) - bei allen bisherigen Versuchen mit listings, verbatim oder hyperref mit hypens endete dies jedoch bei mir leider mit übervollen Boxen.
Anbei ein Minibeispiel mit einer entsprechenden URL.
\documentclass[a4paper,12pt,openright,parskip]{scrreprt}
\usepackage{verbatim}
\usepackage{listings}
\lstset{ %
breaklines=true, % sets automatic line breaking
}
\usepackage{listings}
%%% Package hyphens zur Problembehandlung bei der Trennung von URLs
%%% trennt faktisch nach jedem alphanumerischen Zeichen
\usepackage[hyphens]{url}
\def\UrlBreaks{\do\a\do\b\do\c\do\d\do\e\do\f\do\g \do\h\do\i\do\j\do\k\do\l%
\do\m\do\n\do\o\do\p\do\q\do\r\do\s\do\t\do\u\do\v \do\w\do\x\do\y\do\z\do\0%
\do\1\do\2\do\3\do\4\do\5\do\6\do\7\do\8\do\9\do\-\do\_}%
\urlstyle{same}
\usepackage[breaklinks=true]{hyperref}
\begin{document}
\textbf{lstinline:} \lstinline{D:\IPS\Test\TestLogIPSDB\Projects\IPS\P roject Reports\Web Reports\080812\IPS\Project Test Cases\IPS Test Suite\TC4120.html}
\textbf{nolinkurl:} \nolinkurl{D:\\IPS\\Test\\TestLogIPSDB\\Projects\\ IPS\\Project Reports\\Web Reports\\080812\\IPS\\Project Test Cases\\IPS Test Suite\\TC4120.html}
\textbf{verb:} \verb|D:\IPS\Test\TestLogIPSDB\Projects\IPS\Projec t Reports\Web Reports\080812\IPS\Project Test Cases\IPS Test Suite\TC4120.html|
\end{document}
Bin über jeden Hilfe dankbar.
Grüße
ips
irgendjemand eine idee?! ich trete auf der stelle ...
:confused:
irgendjemand eine idee?! ich trete auf der stelle ...
:confused:
es gibt keine sinnvolle Möglichkeit für einen Umbruch, da es ohnehin nur
einem Wort entspricht. Du musst also manuell eingreifen.
Herbert
es gibt keine sinnvolle Möglichkeit für einen Umbruch, da es ohnehin nur einem Wort entspricht. Du musst also manuell eingreifen. Herbert *määäääh*
wenn es groß ist, hat das Dokument 100+ Seiten und diverse Pfadangaben - händische Nachbearbeitung ist genau das, was ich nicht wollte :eek:
Kann ich vielleicht die Seitenbreite für eines der o.g. Kommandos (listings, verbatim oder url) einschränken?
Die Idee ist: Wenn z.B. die listings nur noch 80% der Seitenbreite einnehmen dürfen, dann sollten 99% meiner Probleme mit dem inkorrekten Zeilenumbruch gelöst sein - denn ein Umbruch erfolgt ja in jedem der o.g. Beispiele, nur eben nicht an der richtigen Stelle!
Anmerkung am Rande: Ich habe ein mit Bibtex erstelltes Literaturverzeichnis, in welchem sich auch Onlinequellen befinden. Die zugehörigen Adressen werden durch Bibtex im bbl-File auch in \url{} umgesetzt - all diese automtisch erstellten URLs werden 100% korrekt umgebrochen (seit dem im Header wie oben \def\UrlBreaks eingefügt wurde) - warum klappt das nicht auch mit den Pfaden?! :confused:
Kann ich vielleicht die Seitenbreite für eines der o.g. Kommandos (listings, verbatim oder url) einschränken?
Die Idee ist: Wenn z.B. die listings nur noch 80% der Seitenbreite einnehmen dürfen, dann sollten 99% meiner Probleme mit dem inkorrekten Zeilenumbruch gelöst sein - denn ein Umbruch erfolgt ja in jedem der o.g. Beispiele, nur eben nicht an der richtigen Stelle!
Anmerkung am Rande: Ich habe ein mit Bibtex erstelltes Literaturverzeichnis, in welchem sich auch Onlinequellen befinden. Die zugehörigen Adressen werden durch Bibtex im bbl-File auch in \url{} umgesetzt - all diese automtisch erstellten URLs werden 100% korrekt umgebrochen (seit dem im Header wie oben \def\UrlBreaks eingefügt wurde) - warum klappt das nicht auch mit den Pfaden?! :confused:
Pfade eher mit \path
\documentclass[a4paper,12pt,openright,parskip]{scrreprt}
\usepackage[hyphens]{url}
\def\UrlBreaks{\do\a\do\b\do\c\do\d\do\e\do\f\do\g \do\h\do\i\do\j\do\k\do\l
\do\m\do\n\do\o\do\p\do\q\do\r\do\s\do\t\do\u\do\v \do\w\do\x\do\y\do\z\do\0
\do\1\do\2\do\3\do\4\do\5\do\6\do\7\do\8\do\9\do\-\do\_\do\I}%
\urlstyle{same}
\begin{document}
\rule{\linewidth}{1pt}
\path{D:\IPS\Test\TestLogIPSDB\Projects\IPS\Projec t Reports\Web Reports\080812\IPS\Project Test Cases\IPS Test Suite\TC4120.html}
\end{document}
Herbert
auch das Path-Package bringt leider nicht den gewünschten Effekt - beim Minibeispiel bemängelt der Compiler 2 zu volle Boxen
:(
auch das Path-Package bringt leider nicht den gewünschten Effekt - beim Minibeispiel bemängelt der Compiler 2 zu volle Boxen
:(
willst du das nicht verstehen??
Die Zeile enthält keinerlei dehnbares Material, also ergeben sich
under- oder overfull Boxen.
Herbert
ich hab das problem mit folgender box:
\begin{framed}
\begin{verbatim}
inhalt....
\end{verbatim}
\end{framed}
als inhalt habe ich entweder text oder aufzählungen, also einzelne wörter mit beistrich und leerzeichen getrennt.
kann man da den zeilenumbruch irgendwie automatisch machen?
im moment geht der text einfach über die box und das blatt raus....
mechanicus
13-09-2008, 11:13
Hallo,
die verbatim-umgebung ist extra zur Darstellung von Codes gedacht, sie gibt genau das aus, was du reinschreibst. Also machst du keinen Zeilenumbruch, wird auch die Umgebung keinen machen.
Gruß
Marco
ich verstehe
es wird auch viel code damit ausgegeben,
es soll auch alles so bleiben wie es ist,
nur sollte eben der zeilenumbruchstattfinden
gibts da noch andere möglichkeiten?
ich hab das problem mit folgender box:
\begin{framed}
\begin{verbatim}
inhalt....
\end{verbatim}
\end{framed}
als inhalt habe ich entweder text oder aufzählungen, also einzelne wörter mit beistrich und leerzeichen getrennt.
kann man da den zeilenumbruch irgendwie automatisch machen?
im moment geht der text einfach über die box und das blatt raus....
dafür nimmt man das Paket listings
Herbert
dafür nimmt man das Paket listings
Herbert
hab das jetzt probiert mit
\usepackage[listings]
änder aber nichts
muß ich da sonst noch was angeben?
hab das jetzt probiert mit
\usepackage[listings]
änder aber nichts
muß ich da sonst noch was angeben?
warum siehst du nicht mal in die Doku?
Herbert
hallo,
in welche doku?
sorry aber ich arbeite noch nicht so lange/so viel mit latex
komme dann bei deinen aussagen nicht immer ganz mit...
könntets du mir das bitte etwas genauer beschreiben? danke!
lg
back to topic :)
willst du das nicht verstehen??doch, deswegen meine wiederholten rückfragen
Die Zeile enthält keinerlei dehnbares Material, also ergeben sich under- oder overfull Boxen.Grundlegend ist mir der Hintergrund für overfull hboxes klar, nicht jedoch in diesem Fall - ich möchte das Ganze nochmal an einem verfeinerten Beispiel erläutern:
\documentclass[a4paper,12pt,openright,parskip]{scrreprt}
\usepackage[hyphens]{url}
\def\UrlBreaks{\do\a\do\b\do\c\do\d\do\e\do\f\do\g \do\h\do\i\do\j\do\k\do\l
\do\m\do\n\do\o\do\p\do\q\do\r\do\s\do\t\do\u\do\v \do\w\do\x\do\y\do\z\do\0
\do\1\do\2\do\3\do\4\do\5\do\6\do\7\do\8\do\9\do\-\do\_\do\I}%
\urlstyle{same}
\begin{document}
\path{D:\IPS\Test\TestLogIPSDB\Projects\IPS\Projec t Reports\Web Reports\080812\IPS\Project Test Cases\IPS Test Suite\IPS\Test\TestLogIPSDB\Projects\IPS\Project Reports\Web Reports\080812\IPS\Project Test Cases\IPS Test Suite\IPS\Test\TestLogIPSDB\Projects\IPS\Project Reports\Web Reports\080812\IPS\Project Test Cases\IPS Test Suite\TC4120.html}
\end{document}
Das Dokument (pdf) enthält 5 Zeilen Text und 4 overfull hboxes (sprich die ersten 4 Zeilen). Da die Zeilen automatisch umgebrochen werden (an beliebiger Stelle, korrekt ohne Bindestrich) habe ich erwartet, dass ein Umbruch stets innerhalb der Grenze für die Seitenbreite erfolgt, so dass nie eine overfull hbox entsteht.
Beispielhaft an der 1. Zeile:
Der Zeilumbruch erfolgt automatisch nach folgendem String
D:\IPS\Test\TestLogIPSDB\Projects\IPS\Project Reports\Web Reports\080812\I
Ich hätte erwartet, das der automatische Zeilenumbruch spätestens nach diesem String erfolgt
D:\IPS\Test\TestLogIPSDB\Projects\IPS\Project Reports\Web Reports\08081
Somit wäre keine overfull hbox in dieser Zeile entstanden.
Ich hätte erwartet, das der automatische Zeilenumbruch spätestens nach diesem String erfolgt
D:\IPS\Test\TestLogIPSDB\Projects\IPS\Project Reports\Web Reports\08081
Somit wäre keine overfull hbox in dieser Zeile entstanden.
Die Zeile ist \linewidth breit und du hast für jeden Buchstaben dieselbe
Breite (wegen typewriter font). \linewidth/Buchstabenbreite ist nunmal
keine ganze Zahl. Hättest du dehnbares Material in der Zeile,
beispielsweise einen Worttrenner, wie das Lehrzeichen in "foo bar", dann
könnten die Boxen so auseinander- oder zusammengeschoben werden, dass
es _keine_ over oder underfull line gibt.
Herbert
Die Zeile ist \linewidth breit und du hast für jeden Buchstaben dieselbe Breite (wegen typewriter font). ok
\linewidth/Buchstabenbreite ist nunmal keine ganze Zahl. ok
Hättest du dehnbares Material in der Zeile,
beispielsweise einen Worttrenner, wie das Lehrzeichen in "foo bar", dann
könnten die Boxen so auseinander- oder zusammengeschoben werden, dass
es _keine_ over oder underfull line gibt.Im o.g. Beispiel ist sogar zufällig ein Teilstring mit Leerzeichen ("Project Reports\Web Reports") ;)
Das Problem ist also, dass Latex hier im standardmäßigen Blocksatz kein Dehnungsmaterial findet (wobei mir gerade auffällt, dass path und url meine Leerzeichen verschlucken, nur bei den listings bleiben diese sauber erhalten) und in Folge dessen immer über die voreingestellte Seitenbreite hinaus schreibt.
Gibt es neben der Variante, die entsprechenden Textabschnitte linksbündig zu gestalten, ggf. noch einen besseren Workaround, um mit den listings (konkreter lstinline) im Fließtext mit standardmäßigen Blocksatz nicht über das Zeilenende hinauszuschießen? Mein Dokument soll über 100 Seiten umfassen und wird eine hohe zweistellige Anzahl an Pfadangaben enthalten - jeden Zeilenumbruch in den Pfaden von Hand zu gestalten stellt keine echte (und schon gar keine professionelle) Alternative dar.
hallo,
in welche doku?
sorry aber ich arbeite noch nicht so lange/so viel mit latex
komme dann bei deinen aussagen nicht immer ganz mit...
könntets du mir das bitte etwas genauer beschreiben? danke!
lg
hallo, und wie siehts mit meinem problem aus? danke für eure hilfe!!!
Gibt es neben der Variante, die entsprechenden Textabschnitte linksbündig zu gestalten, ggf. noch einen besseren Workaround, um mit den listings (konkreter lstinline) im Fließtext mit standardmäßigen Blocksatz nicht über das Zeilenende hinauszuschießen? Mein Dokument soll über 100 Seiten umfassen und wird eine hohe zweistellige Anzahl an Pfadangaben enthalten - jeden Zeilenumbruch in den Pfaden von Hand zu gestalten stellt keine echte (und schon gar keine professionelle) Alternative dar.
Den Umbruch gibt es doch sowieso, es gibt nur keine Dehnung/Stauchung in der
Zeile, sodass die over- oder underfull boxen wegfallen. Normalerweise sollte
es ohnehin nur underfull geben, was dann letztlich kein Problem ist.
Herbert
Den Umbruch gibt es doch sowieso, es gibt nur keine Dehnung/Stauchung in der Zeile, sodass die over- oder underfull boxen wegfallen. Normalerweise sollte es ohnehin nur underfull geben, was dann letztlich kein Problem ist. es entstehen halt interessanterweise meist (immer?) nur overfull hboxes und das dauernde über das Zeilenende hinausgeschreiben ist halt wesentlich unschicker als wenn jeweils vor dem Zeilenende umgebrochen würde (wo wir fast wieder bei linksbündig wären, was allerdings bei lstinline nicht Sinn & Zweck der Sache ist und das Gesamtbild stört)
@Hette
hallo,in welche doku?
sorry aber ich arbeite noch nicht so lange/so viel mit latex
komme dann bei deinen aussagen nicht immer ganz mit...
könntets du mir das bitte etwas genauer beschreiben? danke!
Es gibt unendlich viele Dokus zum Thema - Google ist dein Freund ;)
Eine Suche nach "latex listings" ergibt z.B. folgende hilfreiche Treffer:
http://en.wikibooks.org/wiki/LaTeX/Packages/Listings
http://www.ctan.org/tex-archive/macros/latex/contrib/listings/
http://www.ifi.uio.no/it/latex-links/listings-1.3.pdf
es entstehen halt interessanterweise meist (immer?) nur overfull hboxes und das dauernde über das Zeilenende hinausgeschreiben ist halt wesentlich unschicker als wenn jeweils vor dem Zeilenende umgebrochen würde (wo wir fast wieder bei linksbündig wären, was allerdings bei lstinline nicht Sinn & Zweck der Sache ist und das Gesamtbild stört)
du musst natürlich einen Umbruch an allen möglichen Stellen erlauben, also auch
für Großbuchstaben ...
Herbert
du musst natürlich einen Umbruch an allen möglichen Stellen erlauben, also auch für Großbuchstaben ...falls du damit folgenden Teil meinst ...
\def\UrlBreaks{\do\a\do\b\do\c\do\d\do\e\do\f\do\g \do\h\do\i\do\j\do\k\do\l%
\do\m\do\n\do\o\do\p\do\q\do\r\do\s\do\t\do\u\do\v \do\w\do\x\do\y\do\z\do\0%
\do\1\do\2\do\3\do\4\do\5\do\6\do\7\do\8\do\9\do\-\do\_\do\A\do\B\do\C\do\D\do\E\do\F\do\G\do\H%
\do\I\do\J\do\K\do\L\do\M\do\N\do\O\do\P\do\Q\do\R \do\S\do\T\do\U\do\V\do\W\do\X\do\Y\do\Z}%
\urlstyle{same} ... denPart habe ich mittlerweile in meinem Header ergänzt (nur nicht das minibeispiel von oben aktualisiert) - an den overfull hboxes ändert dies jedoch nix
hallo,
in welche doku?
In die Doku vom Listings-Paket, z.B. hier: http://www.ctan.org/get/macros/latex/contrib/listings/listings.pdf
Nur das Einbinden des Pakets hilft dir nicht weiter.
mfG
Cas
... denPart habe ich mittlerweile in meinem Header ergänzt (nur nicht das minibeispiel von oben aktualisiert) - an den overfull hboxes ändert dies jedoch nix
das hier gibt nur eine overfull box wegen der Linie, was "texnisch" bedingt
ist.
\documentclass[a4paper,12pt,parskip]{scrreprt}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[hyphens,obeyspaces]{url}
\def\UrlBreaks{\do\a\do\b\do\c\do\d\do\e\do\f\do\g \do\h\do\i\do\j\do\k\do\l%
\do\m\do\n\do\o\do\p\do\q\do\r\do\s\do\t\do\u\do\v \do\w\do\x\do\y\do\z\do\0%
\do\1\do\2\do\3\do\4\do\5\do\6\do\7\do\8\do\9\do\-\do\_\do\A\do\B\do\C\do\D\do\E\do\F\do\G\do\H%
\do\I\do\J\do\K\do\L\do\M\do\N\do\O\do\P\do\Q\do\R \do\S\do\T\do\U\do\V\do\W\do\X\do\Y\do\Z\do\\}%
\urlstyle{same}
\begin{document}
\rule{\textwidth}{1pt}
\url{D:\IPS\Test\TestLogIPSDB\Projects\IPS\Project Reports\Web Reports\080812\IPS\Project Test Cases\IPS Test Suite\IPS\Test\TestLogIPSDB\Projects\IPS\Project Reports\Web Reports\080812\IPS\Project Test Cases\IPS Test Suite\IPS\Test\TestLogIPSDB\Projects\IPS\Project Reports\Web Reports\080812\IPS\Project Test Cases\IPS Test Suite\TC4120.html}
\end{document}
Herbert
cookie170
17-09-2008, 11:19
@ hette:
texdoc listings
auf der Kommandozeile sollte Dir die Doku öffnen. Bei neueren texdoc-Versionen kriegst Du mit
texdoc -s listings eine Liste, siehe
texdoc texdoc
Gruß,
Alexander
danke aber ich verwende texnic, da habe ich noch nie eine commadozeile gesehen....
oder finde ich das nur nicht?
ich schätze mal ich muß das package einfach normal wie alle anderen auch am anfang des dokumentes einbinden, oder?
\usepackage[listings]
aber was muß ich dann machen?
cookie170
17-09-2008, 11:53
danke aber ich verwende texnic, da habe ich noch nie eine commadozeile gesehen....
oder finde ich das nur nicht?
ich schätze mal ich muß das package einfach normal wie alle anderen auch am anfang des dokumentes einbinden, oder?
\usepackage[listings]
aber was muß ich dann machen?
1. Kauf Dir ein Buch zu LaTeX, das ist mein Standard-Ratschlag für alle Ein-, Um- und Aufsteiger.
2. Die Kommandozeile findest Du bei Windows unter Start, Ausführen, und dort nach "Öffnen" bitte eintragen "cmd" (ohne Anführungszeichen).
3. Bei LaTeX kommt's auf die Art der Klammer an, Pakete bindet man ein mit \usepackage{paketname}. Eckige Klammern bezeichnen i.d.R. optionale Argumente.
Gruß,
Alexander
danke für den tip
ich verwende latex nur für eine arbeit an der uni di ich gezwungenermaßen in latex schreiben mußte
bevorzuge da eher eine officeanwendung da ich das ganze eher selten brauche...
die arbeit ist auch schon ziemlich fertig, nur eben das "kleine" problem mit dem zeilenumbruch in den boxen bleibt noch :-(
wäre also super wenn mir jemand da einfach bei der lösung helfen könnte!!!
das problem besteht leider weiterhin... gibts da keine lösung bzw. kennt sich da keiner besser aus?
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.