脚注中的 URL 换行符

脚注中的 URL 换行符

我使用的脚注的 URL 太长,所以我想看到换行符。据我所知,url 包会自动换行,但在脚注中它不会这样做。有人有解决方案吗?

\footnote{\url{http://www.this-is-a-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-long.url/}}

答案1

url包裹 文档建议如下:

通常,不允许在“-”字符后换行,因为这会导致混淆。(“-”是地址的一部分还是只是一个连字符?)包选项[hyphens]允许在显式连字符后换行。该\url命令永远不会对单词进行连字符处理。

如果您的原始示例包含具有该特定结构的 URL,那么\usepackage[hyphens]{url}将解决您的问题。

\documentclass{article}
\usepackage[hyphens]{url}
\begin{document}
This is text\footnote{\url{http://www.this-is-a-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-long.url/}}.
\end{document}​

答案2

url 包会自动换行(在长 URL 字符串中),但在脚注中它不会这样做。

主要问题(之前发布的答案没有涉及)是\url宏很“脆弱”(在 LaTeX 特定意义上)。这就是为什么在脚注中排版 URL 字符串(尤其是长 URL 字符串)会很棘手。

对于这种情况,该url软件包的用户指南推荐使用“定义 URL”方法,因为它是“强大的”——再次强调,这是 LaTeX 特有的词义。使用宏\urldef来创建定义的 URL。

在此处输入图片描述

\documentclass{article}
\usepackage[hyphens,spaces,obeyspaces]{url}
\urldef{\footurl}\url{http://www.this-is-a-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-long.url/}
\usepackage[colorlinks]{hyperref} % optional

\begin{document}
\footnote{\footurl} % use the "defined URL" in the argument of "\footnote"
\end{document} 

答案3

或者——虽然不是很花哨,但很有效——只需将 URL 中的连字符替换为“\%2D”。它看起来不如连字符好看,但这样可以正确断开,并且仍然可以作为链接正常工作。

例如

\url{http://www.whysomanyhyphens.com/content/this-article-has-its-whole-title-as-the-url-that-will-never-fit-in-your-puny-footnote}

变成

\url{http://www.whysomanyhyphens.com/content/this\%2Darticle\%2Dhas\%2Dits\%2Dwhole\%2Dtitle\%2Das\%2Dthe\%2Durl\%2Dthat\%2Dwill\%2Dnever\%2Dfit\%2Din\%2Dyour\%2Dpuny\%2Dfootnote}

特别是当 URL 很长而且很神秘(=丑陋)时,我就会这样做。

答案4

尝试使用以下包:

\usepackage{xurl}

相关内容