我使用\url
不需要转义 URL 中的字符以使其适合 latex(特别是 LuaLaTex)的格式。但是,当脚注中包含相同的参考资料时,字符(尤其是_
和)%
似乎需要转义。我是否遗漏了什么?
这里是 MWE:
\documentclass[]{article}
\usepackage{url}
\begin{document}
Phoenizisch \url{https://de.wikipedia.org/wiki/Unicodeblock_Ph%C3%B6nizisch}
and more text
with the same ref in a footnote%
\footnote{some text with the same url
\url{{https://de.wikipedia.org/wiki/Unicodeblock_Ph%C3%B6nizisch}}
and a closing text.}%
. After the footnote
\end{document}
编译时出现错误
File ended while scanning use of \@footnotetext.
当然,如果删除了脚注中有问题的 URL,它确实可以编译并按预期生成输出。请注意,正文中的相同 URL 已正确处理。我假设\footnote
和之间存在交互\url
。
最好的解决方案或解决方法是什么?
答案1
好吧,您可以使用命令\urldef{\urlB}
来定义所需的 URL,然后将\urlB
其插入脚注中。这也可以在普通文本中使用...
请参阅此 mwe
\documentclass[]{article}
\usepackage{url}
\urldef{\urlA}\url{https://de.wikipedia.org/wiki/Unicodeblock_Ph%C3%B6nizisch} % <========
\urldef{\urlB}\url{https://de.wikipedia.org/wiki/Unicodeblock_Ph%C3%B6nizisch} % <========
\begin{document}
Phoenizisch \urlA\ % <=================================================
and more text
with the same ref in a footnote%
\footnote{some text with the same url
\urlB\ % <===================================================
and a closing text.}%
. After the footnote
\end{document}
及其结果:
和正常文本:
答案2
您可以在脚注中使用and/or\
等字符之前使用,例如_
,%
或。因此,您可以使用以下代码,#
\href
\url
\documentclass[]{article}
\usepackage{url}
\begin{document}
Phoenizisch \url{https://de.wikipedia.org/wiki/Unicodeblock_Ph%C3%B6nizisch}
and more text
with the same ref in a footnote% \footnote{some text with the same url
\url{{https://de.wikipedia.org/wiki/Unicodeblock\_Ph\%C3\%B6nizisch}}
and a closing text.}%
. After the footnote
\end{document}