如何自动对齐左脚注

如何自动对齐左脚注

我没有找到任何选项footmisc包将脚注左对齐(换句话说,某种自动对齐\raggedright)。我可以不使用任何包,即使用一些\newcommand\isFootnote技巧来做到这一点吗?或者也许使用另一个包?

我需要这个,因为我放在脚注中的一些网络参考资料在对齐时看起来非常奇怪,在不适当的位置增加了空格,例如http : //www...)。或者我应该使用另一个格式化功能来强制 URL 不被空格分隔?

更新:我现在明白这与我的其他脚部问题有关挂起和多个问题,现在重定向到另一篇帖子。所以这与 babel 包有关(顺序,无论是 [english,french] 还是 [french,english],都不会对 url 拆分/连字符问题产生影响,将 french 放在第一位只会修复挂起和多重问题!)。使用法语时,脚注上没有连字符,url 看起来非常丑陋(在 http 和 ://webaddress 之间添加一个空格)。链接到英文文本的脚注没有问题。

\documentclass{article}
\usepackage[hang,multiple]{footmisc}
\usepackage[hyperfootnotes=false]{hyperref}
\newcommand\ftnote[1]{\footnote{\raggedright#1}}
\usepackage[english,french]{babel}
\begin{document}
\selectlanguage{french}
\og texte en fran�ais \fg{} %
\footnote{celaaaaaaaaaaaaaaa <http://www.address.net/long/path/to/filename.html>
cellllllllllllllllllla%
}%
\footnote{v�rification%
}
\selectlanguage{english}
english text%
\footnote{thisssssssssssssss <http://www.address.net/long/path/to/filename.html>
thiiiiiiiiiiiiiiiiiiiiis%
}%
\footnote{multiple check%
}
\end{document}

处理这个问题的一种方法(不一定是最好的方法)就是左对齐。第一个答案中提供的 newcommand raggedright 技巧(我将其包含在代码中)似乎不起作用。

此外,这可能是新手 LaTeX 的问题,但如何在 url 周围写 < 和 > 符号(至少这是这里的标准)?当我执行 \lt 和 \gt 时,编译器说缺少 fontenc 包,然后,当添加时,它会抱怨未定义的控制序列。我在使用 LyX 时没有遇到这个问题,但我正在切换到 TeX 来解决那些脚注问题。

最后,虽然“hang”和“multiple”在这里确实能成功使用(不过,英语和法语文本需要在正文中分行),但由于我在同一页上混合使用法语和英语,所以这并不意味着它可以在只有法语作为语言的多个页面上正常工作。我应该在另一个主题中尝试一下。

感谢您的帮助!

第二次更新:感谢大家的反馈。现在又多了一个难题。我想将 para 选项与 footmisc 一起使用。此选项允许像段落一样一个接一个地添加多个脚注,这显然会影响 raggedright 的行为。顺便说一句,此选项与“ragged”footmisc 选项相冲突(该选项似乎默认启用?因为它在没有 para 的情况下也能工作……)。

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[french,english]{babel}
\frenchbsetup{FrenchFootnotes=false}
\usepackage[para,hang,multiple]{footmisc}
\renewcommand{\footnotelayout}{\raggedright} % for having raggedright footnotes
\usepackage[hyperfootnotes=false]{hyperref}

\begin{document}
\selectlanguage{french}
\og texte en français \fg{}%
\footnote{celaaaaaaaaaaaaaaa \url{http://www.address.net/long/path/to/filename.html}
cellllllllllllllllllla%
}%
\footnote{vérification%
}
\end{document}

注意。我检查了更常见的法语单词,现在连字符似乎可以正常工作了。注意。调用 babel 包时,如果首先出现英语,则需要 \frenchbsetup。不过,我需要先调用法语,否则小逗号(footmisc multiple)不会出现在正文中,然后再调用 \selectlanguage{french},所以我想我可以将其删除。

答案1

footmiscfrench启用作为主要语言的选项无效babel,除非发出

\frenchbsetup{FrenchFootnotes=false}

因为,否则,将使用“法语脚注”的代码,而该代码不受的影响footmisc

最好使用\url使分隔<...>符无用的命令。

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[english,french]{babel}
\frenchbsetup{FrenchFootnotes=false}

\usepackage[hang,multiple]{footmisc}

\renewcommand{\footnotelayout}{\raggedright} % for having raggedright footnotes

\usepackage[hyperfootnotes=false]{hyperref}

\begin{document}

\og texte en français \fg{}%
\footnote{celaaaaaaaaaaaaaaa \url{http://www.address.net/long/path/to/filename.html}
cellllllllllllllllllla%
}%
\footnote{vérification%
}

\selectlanguage{english}
english text%
\footnote{thisssssssssssssss \url{http://www.address.net/long/path/to/filename.html}
thiiiiiiiiiiiiiiiiiiiiis%
}%
\footnote{multiple check%
}
\end{document}

在此处输入图片描述

答案2

您可以创建一个单独的宏,将其\raggedright作为第一个命令插入到脚注中:

\documentclass{article}
\newcommand\ftnote[1]{\footnote{\raggedright#1}}
\begin{document}
A\ftnote{this this this this this this this this this this this this
this this this this this this this this this this this this this this
this this thi this this this this this this this this this this this
this this thisss this this this this this this this this this this this
this this this this this this this this this this this this this this
this this this}
\end{document}

相关内容