我使用的脚注的 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
通常,不允许在“-”字符后换行,因为这会导致混淆。(“-”是地址的一部分还是只是一个连字符?)包选项
[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}