Bigfoot 改变了复合词的“连字符”:
\documentclass{article}
\usepackage{bigfoot}
\listfiles
\DeclareNewFootnote[para]{foo}
\begin{document}
\footnotefoo{\rule{9.4cm}{1mm} xx compound-word}
\footnote{\rule{9.4cm}{1mm} xx compound-word}
\end{document}
\footnotefoo
常规连字符(破折号)保持不变。当在复合词中使用 bigfoot/ 和显式破折号时,如何获取破折号?是什么导致了这个问题?
*File List*
article.cls 2007/10/19 v1.4h Standard LaTeX document class
size10.clo 2007/10/19 v1.4h Standard LaTeX file (size option)
bigfoot.sty 2006/07/15 1.25 makes footnotes work
etex.sty 1998/03/26 v2.0 eTeX basic definition package (PEB)
manyfoot.sty 2005/09/11 v1.10 Many Footnote Levels Package (NCC)
nccfoots.sty 2005/02/03 v1.2 NCC Footnotes Package (NCC)
suffix.sty 2006/07/15 1.5 Variant command support
perpage.sty 2006/07/15 1.12 Reset/sort counters per page
***********
答案1
第一个是
....\OT1/cmr/m/n/8 c
....\OT1/cmr/m/n/8 o
....\OT1/cmr/m/n/8 m
....\OT1/cmr/m/n/8 p
....\kern0.23611
....\OT1/cmr/m/n/8 o
....\OT1/cmr/m/n/8 u
....\OT1/cmr/m/n/8 n
....\OT1/cmr/m/n/8 d
....\OT1/cmr/m/n/8 -
....\discretionary
....\glue(\rightskip) 0.0
但第二个是
....\OT1/cmr/m/n/8 c
....\OT1/cmr/m/n/8 o
....\OT1/cmr/m/n/8 m
....\discretionary
.....\OT1/cmr/m/n/8 -
....\OT1/cmr/m/n/8 p
....\kern0.23611
....\OT1/cmr/m/n/8 o
....\OT1/cmr/m/n/8 u
....\OT1/cmr/m/n/8 n
....\OT1/cmr/m/n/8 d
....\discretionary
....\OT1/cmr/m/n/8 { (ligature --)
....\glue(\rightskip) 0.0
注意 m 和 p 之间的自由裁量权,通常发生这种情况的情况是
f{}f
破坏连字符,但如果在考虑连字符后重新组成单词,则无法破坏连字符......
或者
- 材料被设置在水平盒子中(其中不幸的过早优化意味着未添加可自由支配项,然后被取消装箱).....
好像它是这两个中的第二个:
看到同样的景象,却没有bigfoot
\documentclass{article}
\begin{document}
\rule{9.4cm}{1mm} xxxxx compound-word
\rule{9.4cm}{1mm} xxxxx \setbox0\hbox{compound-word}\unhbox0
\end{document}
因为它基本上是 TeX 失败了,所以改变 bigfoot 有点困难(或者比我现在有的时间更难)但你可以明确添加自由裁量项来弥补 TeX 在装箱时没有添加它:
\documentclass{article}
\usepackage{bigfoot}
%\showoutput
\DeclareNewFootnote[para]{foo}
\begin{document}
\footnotefoo{\rule{9.4cm}{1mm} xx compound\discretionary{-}{}{-}word}
\footnote{\rule{9.4cm}{1mm} xx compound\discretionary{-}{}{-}word}
\end{document}
(或者因为我已经投入资金使用 luatex,所以您可以修复 lua 中的节点列表并将 -- 连字符替换为 - )