Я пытаюсь включить ссылку в свои ссылки. Ссылка содержит%характер в нем. Для того, чтобы%вести себя как нормальный персонаж я избегаю этого с\характер. Но я получаю
! Missing $ inserted.
<inserted text>
$
l.614 ...ia.org/wiki/Shamir\%27s_Secret_Sharing''}
ошибка.
Вот строка, которая выдает эту ошибку
\hyperref[shamir]{''http://en.wikipedia.org/wiki/Shamir\%27s_Secret_Sharing''}
Я использую hyperref
пакет для добавления ссылок.
решение1
Проблема не в %, а в подчеркивании! Используйте это
\hyperref[shamir]{''http://en.wikipedia.org/wiki/Shamir\%27s\_Secret\_Sharing''}
решение2
Символы подчеркивания требуют математического режима, они используются для нижних индексов там. Таким образом, вам нужно \_
здесь для символа подчеркивания.
В качестве альтернативы можно использовать \url
или \nolinkurl
. Последнее означает \url
отсутствие свойства ссылки.
Пример с некоторыми вариантами:
\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}
Экранирование символа комментария via \%
необходимо, если макросы URL используются внутри аргумента другого макроса.