PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Zeilenumbruch in \url



hallogerd
29-06-2011, 21:18
Hallo,

ich habe in einer Aufzählung (compactitem) eine url welche leider keinen Zeilenumbruch macht. Ich habe schon ein paar Sachen aus Foren probiert (leerzeichen einfügen, % und "Enter", breakurl, etc.)um einen manuellen Zeilenumbruch zu erreichen aber leider ohne Erfolg bisher.

\begin{compactitem}
\item Test 1\\
\url{http://www.sehr lange Adresse xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxx.de}
\item Test 2
\end{compactitem}

Hat noch jemand eine gute Idee wie ich die URL an einer gewünschten Stelle auf der nächsten Zeile vorsetzten kann und dabei auch nach wie vor PDFTexify nutzen kann und nicht erst über DVI oder so was gehen muss?
Viele Dank im voraus.

mechanicus
29-06-2011, 21:35
siehe Signatur.

Gruß
Marco

hallogerd
29-06-2011, 21:44
siehe Signatur.

Gruß
Marco

ich kann ja gerne alle Packete die ich eingebunden habe einfügen, das wird aber sehr lang, da es sich um eine große Arbeit handelt. Meintest du das?


\documentclass[a4paper, 12pt]{book}
\usepackage[ansinew,latin1]{inputenc}


\usepackage{mathptmx}
\usepackage{etex}
\usepackage{textcomp} %zur Darstellung von µ
\usepackage{units}
\usepackage{fmtcount} %fuer Kommentare in Tabellen
\usepackage{bbding} %fuer x und Hacken in Tabellen
\parindent=0pt %\noident fuer das gesamte Dokument
%\usepackage{acronym} %fuer Abkürzungsverzeichnis, [printonlyused] um nur benutze anzuzeigen



\usepackage{algorithm}
%Für Code Beispiele in PseudoCode

\floatname{algorithm}{Eingabe}

%\usepackage{algorithmic}
%Für Code Beispiele in PseudoCode

%\algsetup{indent=2em}
%\newcommand{\factorial}{\ensuremath{\mbox{\sc Factorial}}}

\usepackage[T1]{fontenc}
%T1, fontenc -> Worte mit ß richtig schreiben

\usepackage[ngerman]{babel}
%ngerman -> neue, deutsche Rechtschreibung
%babel -> bestimmte Titel auf deutsch, z.B. Inhaltsverzeichnis anstatt "table of contents"

\usepackage{geometry}
%geometry -> Seitenformat-Paket mit Definition der Seitenränder (tmargin - oben, bmargin - unten, ...)

%\usepackage{graphicx,subfigure}
\usepackage{graphicx}
%graphicx -> erweitertes Paket für Bilder-Einbindung, kann auch png einbinden bei pdf erstellung

\usepackage{cite}
%cite -> Literaturverweise z.B. 1,2,3 werden zusammengefasst: 1-3

\usepackage{wrapfig}
\usepackage{fancybox}

\usepackage{makeidx}
%makeidx -> Unterstützung der Indexerstellung

\usepackage{tabularx}
%Für größere Tabellen, Umbruch von Text in Spalte automatisch wenn X angegeben ist.

\usepackage[hyphens]{url} %hyphens von mir hinzu gefügt

\usepackage{paralist}

\usepackage{titlesec}
\usepackage{color}
\definecolor{fhrot}{rgb}{0.89411764705882352941176 470588235,0.34117647058823529411764705882353,0.411 76470588235294117647058823529}
\definecolor{fhblau}{rgb}{0.2470588235294117647058 8235294118,0.56862745098039215686274509803922,0.61 960784313725490196078431372549}
\definecolor{fhgruen}{rgb}{0.474509803921568627450 98039215686,0.77254901960784313725490196078431,0.6 3137254901960784313725490196078}
%Farbendefinition nach Farbschlüssel



\usepackage{listings}
\lstset{
numbers=left,
numberstyle=\tiny,
numbersep=5pt,
basicstyle=\ttfamily\fontsize{11}{11}\selectfont,
breaklines=true,
showspaces=false,
showstringspaces=false,
extendedchars=true, %Zeichensatz
captionpos=b %bottom
%commentstyle=\color{fhgruen},
%stringstyle=\itshape\color{fhrot},
%keywordstyle=\bfseries\color{fhblau},
}

%\usepackage{multind}
\usepackage{amssymb}

\usepackage{amsmath}
%amsmath -> Paket für Formeln

\usepackage{fancyhdr}
%fancyhdr -> Paket für Kopf- und Fusszeilen-Formatierung

\usepackage{tikz}
%Zur Erstellung von Grafiken in tex

\usepackage{dsfont}
%Für die Mengendarstellung der Zahlenmengen (natürliche Zahlen, reele Zahlen usw...)


\usepackage{float}
\usepackage{graphicx}
\usepackage{epstopdf}

\usepackage[right]{eurosym}
%Eurozeichen richtig darstellen

\usepackage{psboxit}
\usepackage{rotating}

%\usepackage{multicol}
\usepackage{multirow}
\usepackage{colortbl}

%\usepackage[dvipdfm,%
%pdftitle={xxxx},%
%pdfauthor={xxxx xxxxx},%
%colorlinks=true,%
%linkcolor=fhblau%
%]{hyperref}
%Zur .pdf Erstellung mit farbiger Verlinkung Farbschlüsselkonform

% Kapitelüberschriften bis zur ... Ebene durchnummeriert und im Inhaltsverzeichnis aufgeführt
\setcounter{secnumdepth}{4}
\setcounter{tocdepth}{4}

%\usepackage[hang]{caption}

%\renewcommand{\printindex}[2]{
% \chapter*{#2} \input{#1.ind}
% \markboth{#2}{#2}
% \addcontentsline{toc}{chapter}{#2}
%}

\geometry{a4paper,lmargin=2.5cm,rmargin=2.5cm, bindingoffset=1cm}
\geometry{includehead, includefoot, top=2cm, bottom=2cm}
%Seitenformat

%\hyphenation{}
%Trennungen, die Tex nicht kennt

\usepackage{remreset}
\makeatletter
\@removefromreset{footnote}{chapter}
\makeatother
%Fußnoten durchgängig nummerieren

\lhead{}
\rfoot{\thepage}\cfoot{}
\renewcommand{\footrulewidth}{0pt}
\renewcommand{\headrulewidth}{0.4pt}
\rhead{\nouppercase{\leftmark}}

\bibliographystyle{alphadin}

\usepackage{setspace}
\onehalfspacing
\usepackage{hyperref}
\hypersetup{
colorlinks,%
citecolor=black,%
filecolor=black,%
linkcolor=black,%
urlcolor=black
}

\begin{document}

\input{Kapitel1.tex}

\end{document}


In der Datei Kapitel1.tex steht nun folgendes:



\chapter{test}
\section{test}
Test Test
\begin{compactitem}
\item Test 1\\
\url{http://www.sehr lange Adresse xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxx.de}
\item Test 2
\end{compactitem}

mechanicus
29-06-2011, 21:54
Hi,

hast du den Link überhaupt benutzt? Bitte nutze zudem die Code-Umgebung zur Darstellung deines Codes (Raute-Symbol):

\documentclass{book}

\usepackage{paralist}

\usepackage[breaklinks=true]{hyperref}
\usepackage{showframe}
\begin{document}
\begin{compactitem}
\item Test 1 Test 1 Test 1 \url{http://www.mrunix.de/forums/showthread.php?t=71383}
\item Test 2
\end{compactitem}

\end{document}

hallogerd
29-06-2011, 22:43
Konnte es lösen:


\sloppy
\begin{compactitem}
\item Test 1\\
\url{http://www.sehr lange Adresse xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxx.de}
\item Test 2
\end{compactitem}
\fussy


Mit dem \sloppy ist Latex nicht mehr so strickt was Zeilenumbruch angeht, so wie ich gelesen habe, kann es aber dadurch oft zu großem Zeichenabstand kommen, weswegen ich es mit \fussy wieder umstelle.

psyman
30-06-2011, 00:35
Du kannst den Befehl \href{Ziel}{Angezeigter Text} verwenden. Mit "" kannst du dann Stellen angeben an denen die Zeile umgebrochen werden darf.
Bsp.



\begin{compactitem}
\item \href{http://wwww.nochnesehrlangeurl.de/hier/gehts/noch/weiter/im/Text/jetzt/faellt/mir/nichts/mehr/sinnvolles/ein.html}
{http://""wwww"".""noch""ne""sehr""lange""url"".""de/""hier/""gehts/""noch/""weiter/""im/""Text/""jetzt/""faellt/""mir/""nichts/""mehr/""sinnvolles/""ein.html}
\end{compactitem}

hallogerd
30-06-2011, 09:00
Okay danke, das wäre dann sicher auch eine gute Variante geweßen.

u_fischer
30-06-2011, 09:23
Okay danke, das wäre dann sicher auch eine gute Variante geweßen.

Eine Variante, die dir im Wesentlichen so auch gestern von Heiko in der Newsgroup de.comp.text.tex vorgeschlagen wurde. Dazu ein Tip: Wenn du über Google Nachrichten zu de.comp.text.tex schickst, musst du Geduld mitbringen. Wiederhole die Frage nicht, nur weil sie nicht sofort erscheint, das führt nur zu mehrfachen Nachrichten (derzeit hast du dort 5 Fragen laufen). Wenn es schneller gehe soll, benutze einen Newsserver und einen Newsclient.

hallogerd
30-06-2011, 09:40
das tut mir dann sehr leider, aber bei mir taucht immer noch keins der Themen auf. Deswegen hatte ich es dann wohl insgesamt auch 5 mal probiert. Aber in dem angehängten Screenshot kannst du sehen das da nichts bei mir auftaucht. Aber vielleicht liegt das am Browser (Opera).
Sorry

u_fischer
30-06-2011, 10:36
Aber vielleicht liegt das am Browser (Opera).

Nein es liegt am google-interface. de.comp.text.tex ist keine Google-Gruppe. Google bietet nur ein Web-Interface an, es sammelt die Nachrichten von Newsservern und bereitet sie "Foren"-mäßig auf – und das tut es manchmal sehr langsam. Google-Nutzer von de.comp.text.tex und anderen Usenetgruppen kann man immer daran erkennen, dass sie die Geduld verlieren und ihre Nachrichten mehrmals schicken.

Wenn du wie ich einen Newsreader (http://de.wikipedia.org/wiki/Newsreader) und einen Newsserver (ich benutze albasani http://www.albasani.net/) benutzen würdest, würdest du die Nachrichten in Sekunden sehen.

hakaze
30-06-2011, 11:34
ich kann ja gerne alle Packete die ich eingebunden habe einfügen, das wird aber sehr lang, da es sich um eine große Arbeit handelt. Meintest du das?

Wie Mechanicus schon sagte, ist das von einem Minimalbespiel weit entfernt. Mit dem url-Paket kannst du auch zusätzliche Zeichen für Zeilenumbrüche definieren, z.B. "x" (oder was auch immer in deinem Fall passt):
\documentclass[a4paper, 12pt]{book}
\usepackage[ansinew]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}

\usepackage[hyphens]{url} %hyphens von mir hinzu gefügt
\def\UrlBreaks{\do\x}

\usepackage{paralist}

\begin{document}

\chapter{test}
\section{test}
Test Test \url{http://www.sehr lange Adresse xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxx.de}
\begin{compactitem}
\item Test 1\\
\url{http://www.sehr lange Adresse xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxx.de}
\item Test 2
\end{compactitem}

\end{document}Ansonsten scheint mir die Idee von psyman auch sehr sinnvoll zu sein. Bei so langen "Unworten" muss man eben per Hand nacharbeiten.

hallogerd
30-06-2011, 12:32
@u_fischer Vielen Dank für die Erklärung. Tut mir echt Leid das ich - aus Unwissenheit - zu oft gepostet habe. Aber dank deiner Erklärung weiß ich jetzt wie ich beim nächsten mal mit Hilfe eines Newsreaders poste.
@hakaze Auch dir vielen Dank für die Erklärung aber wenn ich ein "x" einfüge steht das x mit im Link aber es findet kein Zeilenumbruch statt. Da aber die Variante mit \sloppy und \fussy schon funktioniert ist es auch okay.

hakaze
30-06-2011, 13:02
@hakaze Auch dir vielen Dank für die Erklärung aber wenn ich ein "x" einfüge steht das x mit im Link aber es findet kein Zeilenumbruch statt. Da aber die Variante mit \sloppy und \fussy schon funktioniert ist es auch okay.
So meinte ich das nicht (war vielleicht ungeschickt formuliert). Mit
\def\UrlBreaks{\do\x}
wird das x zu einem Zeichen, nach dem Umbrüche erfolgen können. In meinem Beispiel klappt das auch wie gewünscht (auch innerhalb der Aufzählung).

Dabei geht das auch für mehrere Zeichen. Hier ein extremes Beispiel (vom TeX-stackexchange (http://tex.stackexchange.com/questions/3033/forcing-linebreaks-in-url)):
\renewcommand{\UrlBreaks}{\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\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}