为什么 ledmac 行号与最终项目不一致?

为什么 ledmac 行号与最终项目不一致?

以下是显示该问题的简单文档:

\documentclass{article}

\usepackage{ledmac}

\begin{document}

\firstlinenum{1}
\linenumincrement{1}
\beginnumbering
\pstart
\begin{itemize}
\item This item aligns with the line number...
\item ... but the line number is far below this item.
\end{itemize}
\pend
\endnumbering

\end{document}

该文件内容如下:

1 · This item aligns with the line number...
  · ... but the line number is far below this item.
2

注意:

a) 总是最后的列表中的项目,

b) 线\\如果在最后一项末尾添加换行符 ( ),则对齐(但会得到另一个行号,这看起来很奇怪),

c) 线如果您在\end{itemize}和之间添加文本\pend,则对齐

d) 这条线是不是如果只是在之后添加文本,则对齐\pend

那么为什么会发生这种情况?我该如何解决这个问题?

答案1

您可以使用

\beginnumbering
\pstart
...
\pend
\endnumbering

堵塞里面环境itemize

\documentclass{article}
\usepackage{ledmac}

\begin{document}

\firstlinenum{1}
\linenumincrement{1}
\begin{itemize}
\beginnumbering
\pstart
\item This item aligns with the line number...
\item ... but the line number is far below this item.
\pend
\endnumbering
\end{itemize}

\end{document}

编辑:我很惊讶;在阅读了我的回答的评论后,我做了一些测试,现在下面的示例代码(基本上与问题中的示例代码相同)编译成功并且表现符合预期!

\documentclass{article}
\usepackage{ledmac}

\begin{document}

text text text text text text text  text text text  text text text  text text text  text text text  text text text  text text text  text text text  text text text  text text text  text text text  text text text  text text text  text text text
\firstlinenum{1}
\linenumincrement{1}
\beginnumbering
\pstart
\begin{itemize}
\item This item aligns with the line number...
\item This item also aligns with the line number...
\end{itemize}
\pend
\endnumbering

\end{document}

结果如下:

我会调查发生了什么事!

EDIT2:我终于发现了发生了什么,但我不知道问题背后的原因……这似乎是 中的一个错误ledmac。问题与每个项目中文本的长度有关。您可以通过以下示例看到这一点:

\documentclass{article}
\usepackage{ledmac}

\begin{document}

\firstlinenum{1}
\linenumincrement{1}
\beginnumbering
\pstart
\begin{itemize}
\item This item aligns with the line number...
\item This item also aligns ...
\item This doesn't ... % but it will align if you add this text
\end{itemize}
\pend
\endnumbering

\end{document}

按原样编译该示例,您将看到问题中描述的奇怪行为;这是结果的图像:

现在,删除注释字符并再次编译,您将得到预期的结果:

如果在问题中的示例代码的第二项中添加足够的文本,就会观察到同样奇怪的结果。

我认为你应该给包装创建者写一张便条。

答案2

根据 Gonzalo Medina 的出色(并被接受)答案,我已向该ledmac软件包的作者 Peter Wilson 发送了一封电子邮件,解释了该问题。如果有错误修复,我会在此答案中更新详细信息。

此外,他的回答还为我提供了一个临时解决方案,无需打印虚假文本来延长行数,即可解决该问题中的测试用例。使用宏\phantom

\begin{itemize}
\item This item aligns with the line number...
\item ... and the line number is not below this item.\phantom{extra text to pad the line}
\end{itemize}

结果是:

1 · This item aligns with the line number...
2 · ... and the line number is not below this item.

相关内容