用脚注挤压脚注标记和脚注文本之间的空间

用脚注挤压脚注标记和脚注文本之间的空间

我注意到使用该选项\usepackage[para]{footmisc}会稍微增加脚注标记和脚注文本之间的空间量。以下是用于创建效果的 MWE。

\documentclass{article}
\usepackage[para]{footmisc}
\begin{document}
Text\footnote{A footnote.}
\end{document}

如果没有footmisc,我得到这个: 无脚杂项

通过footmisc,我得到了这个: 带脚杂

请注意,我一点也不担心边距的变化。我不喜欢的是 1 和字母 A 之间的间距变大了。

有命令可以修复这个问题吗?各种footmisc选项似乎都不起作用,虽然添加\hskip-0.25em脚注文本似乎有帮助,但这不是一个理想的解决方案……

答案1

这里,我在每个脚注的开头使用了固定的负字距。我还注意到,这个问题似乎与软件包para的选项有关footmisc

\documentclass{article}
\usepackage[para]{footmisc}
\usepackage{lipsum}
\let\svfootnote\footnote
\renewcommand\footnote[2][\relax]{\ifx\relax#1%
  \svfootnote{\kern-4.5pt#2}\else\svfootnote[#1]{\kern-4.5pt#2}\fi}
\begin{document}

Text\footnote{This}
Text\footnote{is}
Text\footnote{a}
Text\footnote{test}
Text\footnote{of}
Text\footnote{the}
Text\footnote{emergency}
Text\footnote{broadcast}
Text\footnote{system}
Text\footnote{\lipsum[1]}
\end{document}

在此处输入图片描述

答案2

根据我的调查减少内联脚注之间的间距 style=verbose-inote

脚注标记和脚注文本之间的空格是footmisc使用para选项硬编码的,如下0.5em所示

\long\def\@makefntext#1{\leavevmode
  \@makefnmark\nobreak
  \hskip.5em\relax#1%
}

要删除空格,只需\hskip.5em\relax从定义中删除。当然,如果您想保留一些空间,您可以减少该值。\makeatletter...\makeatother如果您在序言中重新定义宏,请不要忘记。

\documentclass{article}
\usepackage[para]{footmisc}

\makeatletter
\long\def\@makefntext#1{\leavevmode
  \@makefnmark\nobreak
  #1%
}
\makeatother

\begin{document}
Lorem\footnote{lorem}
ipsum\footnote{ipsum}
dolor\footnote{dolor}
sit\footnote{sit}
\end{document}

脚注标记和文本之间没有空格。

相关内容