Ich versuche, einen Link in meine Referenzen aufzunehmen. Der Link enthält%Charakter darin. Damit%um mich wie ein normaler Charakter zu verhalten, entkomme ich ihm mit\Charakter. Aber ich bekomme eine
! Missing $ inserted.
<inserted text>
$
l.614 ...ia.org/wiki/Shamir\%27s_Secret_Sharing''}
Fehler.
Hier ist die Zeile, die diesen Fehler erzeugt
\hyperref[shamir]{''http://en.wikipedia.org/wiki/Shamir\%27s_Secret_Sharing''}
Ich verwende hyperref
ein Paket zum Hinzufügen von Links.
Antwort1
Das Problem liegt nicht beim % sondern beim Unterstrich! Verwenden Sie dies
\hyperref[shamir]{''http://en.wikipedia.org/wiki/Shamir\%27s\_Secret\_Sharing''}
Antwort2
Die Unterstriche erfordern den Mathematikmodus, da sie dort für tiefgestellte Zeichen verwendet werden. Daher benötigen Sie \_
hier einen Unterstrich.
Alternativ kann \url
oder \nolinkurl
verwendet werden. Bei Letzterem ist \url
die Link-Eigenschaft abgezogen.
Ein Beispiel mit einigen Varianten:
\documentclass{article}
\usepackage[colorlinks]{hyperref}
\begin{document}
\url{http://en.wikipedia.org/wiki/Shamir%27s_Secret_Sharing}
\href{http://en.wikipedia.org/wiki/Shamir%27s_Secret_Sharing}{%
\nolinkurl{http://en.wikipedia.org/wiki/Shamir\%27s_Secret_Sharing}}
\urlstyle{same}
\href{http://en.wikipedia.org/wiki/Shamir%27s_Secret_Sharing}{%
\nolinkurl{http://en.wikipedia.org/wiki/Shamir\%27s_Secret_Sharing}}
\href{http://en.wikipedia.org/wiki/Shamir\%27s_Secret_Sharing}{shamir}
\end{document}
Das Escapen des Kommentarzeichens via \%
ist erforderlich, wenn die URL-Makros innerhalb des Arguments eines anderen Makros verwendet werden.