In meinem Dokument habe ich lange Adressen von Webseiten, die in den Rand hinein ragen. Beispiel:

Open in writeLaTeX
\documentclass{article}
\usepackage{url}
\begin{document}
Eine URL: \url{http://texwelt.de/wissen/fragen/5303/%
wie-kann-ich-mit-tikz-einen-text-am-seitenrand-von-unten-nach-oben-schreiben}
\end{document}

Wie kann ich erreichen, dass die Links umgebrochen werden?

Am Bindestrich könnte passen - kann man noch mehr einstellen, etwa an jedem Kleinbuchstaben? Randausgleich ist mir gerade wichtiger als ein Umbruch mitten im "Wort" einer Adresse - es sind ja eh nicht immer Worte, sondern können beliebige Zeichenfolgen sein.

gefragt 17 Mai '14, 08:51

Felix's gravatar image

Felix
1.3k225366
Akzeptiert: 89%

Die Frage ist zum Archivieren gedacht, kein Support benötigt. Antworten sind jedoch sehr willkommen! Evtl. antworte ich auch selbst, wenn ich fertig bin mit Quelltext-Lesen von url.sty.

(17 Mai '14, 08:52) Felix

@Felix Es gibt zum Paket url eine Anleitung, in der alles drinsteht, was ich in meiner Antwort verwendet habe. Man muss also eigentlich nicht den Quelltext lesen …

(18 Mai '14, 06:19) Bes

Das Paket url bietet diverse Möglichkeiten, um auf den Umbruch der URLs einzuwirken. So wird beispielsweise bereits mit Verwendung von Option hyphens der Umbruch nach einem Bindestrich aktiviert:

Open in writeLaTeX
\documentclass{article}
\usepackage[hyphens]{url}
\begin{document}
Eine URL: \url{http://texwelt.de/wissen/fragen/5303/%
wie-kann-ich-mit-tikz-einen-text-am-seitenrand-von-unten-nach-oben-schreiben}
\end{document}

mit Option klzzwxh:0003

Darüber hinaus speichert das Paket in \UrlBreaks und \UrlBigBreaks zwei Listen von Zeichen, nach denen ein Umbruch möglich ist. Der Unterschied zwischen beiden ist, dass bei einer Folge von BigBreak-Zeichen ein Umbruch nur am Ende erfolgen kann, während bei Break-Zeichen ein Umbruch jederzeit erfolgen kann. Beide Listen bestehen jedoch nicht einfach aus den jeweiligen Zeichen, sondern auch \do\c-Befehlsfolgen, wobei c (nicht \c) für das jeweilige Zeichen steht. Um also nach allen Kleinbuchstaben ebenfalls ein Umbruch zu erlauben könnte man wie folgt arbeiten:

Open in writeLaTeX
\documentclass{article}
\usepackage{url}
\usepackage{etoolbox}
\appto\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}
\begin{document}
\show\UrlBreaks

Eine URL: \url{http://texwelt.de/wissen/fragen/5303/%
wiekannichmittikzeinentextamseitenrandvonuntennachobenschreiben}
\end{document}

und bekommt dann:

umbruch nach kleinbuchstaben erlauben

Natürlich kann man das auch mit Option hyphens kombinieren, wenn man das möchte.

Verwendet man url indirekt über das Paket hyperref hängt übrigens die Umbruchmöglichkeit auch von den Verlinkungsmöglichkeiten des Backends ab. Gute Ergebnisse erzielt man dort, wenn man pdflatex, lualatex oder das Paket breakurl verwendet. In letzterem Fall ist auch dessen Anleitung zu beachten.

Permanenter link

beantwortet 18 Mai '14, 06:17

Bes's gravatar image

Bes
1411516

bearbeitet 21 Mai '14, 03:02

Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Aktuelle Buch-Infos

LaTeX Cookbook

LaTeX Beginners Guide

Limitierter Rabatt ebook
50% Coupon code tDRet6Y

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs füge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×109
×31
×5

Frage gestellt: 17 Mai '14, 08:51

Frage wurde angeschaut: 15,710 Mal

Zuletzt aktualisiert: 21 Mai '14, 03:02