
Diese Frage hängt mit der Frage zusammenWie vermeidet man den Teil „http:“ in der \URL von Hyperref?und die Lösungenhttps://tex.stackexchange.com/a/139934/39306Undhttps://tex.stackexchange.com/a/139925/39306.
Ich möchte \url so neu definieren, dass das Folgende das gleiche Ergebnis liefert.
\url{ipython.org}
oder
\url{http://ipython.org}
(Die Verwendung der \rurl{http://ipython.org}
in der obigen Lösung angegebenen scheint nicht zu funktionieren. Tatsächlich wird nach der Kompilierung mit pdflatex und einem Klick aufhttp://ipython.orgauf PDF-Datei, führt zu der nicht vorhandenen Seitehttp://www.http.com//ipython.org) siehe das Beispiel unten basierend auf der Lösunghttps://tex.stackexchange.com/a/139934/39306:
\documentclass{article}
\usepackage{hyperref}
\newcommand\rurl[1]{%
\href{http://#1}{\nolinkurl{#1}}%
}
\begin{document}
\rurl{ipython.org}\\
\rurl{http://ipython.org}
\end{document}
Antwort1
\documentclass{article}
\usepackage{hyperref}
\newcommand\rurl[1]{\xurl#1\empty\empty\empty\empty\empty\xurl}
\def\xurl#1#2#3#4#5#6\xurl{%
\def\tmp{#1#2#3#4#5}%
\href{\ifx\tmp\xurlhttp \else http://\fi#1#2#3#4#5#6}%
{\nolinkurl{#1#2#3#4#5#6}}%
}
\def\xurlhttp{http:}
\begin{document}
\rurl{ipython.org}\\
\rurl{http://ipython.org}
\end{document}