这就是我想使用 LuaLaTeX 2020 排版的书籍尾注所实现的目标。
- 左边距的尾注标记
- 悬挂缩进(尾注文本应始终缩进,而不仅仅是每个注释的第一行)
- 连续音符之间没有行距
- 尾注文本完全对齐
我从答案开始这里
\documentclass{book}
\usepackage{endnotes}
\usepackage{lipsum}
\renewcommand\enoteformat{%
\raggedright
\leftskip=1.8em
\makebox[0pt][r]{\theenmark. \rule{0pt}{\dimexpr\ht\strutbox+\baselineskip}}%
}
\begin{document}
\endnote{\lipsum[1]}\endnote{\lipsum[2]}
\theendnotes
\end{document}
并更改了代码,通过删除 来删除两个注释之间的空格+\baselineskip
。这有效,多余的空间消失了。然后我尝试使用justify
(我ragged2e
在我的书中使用)来对齐尾注文本。这是我现在的代码
\documentclass{book}
\usepackage{endnotes}
\usepackage{lipsum}
\usepackage{ragged2e}
\renewcommand\enoteformat{%
\justify
\leftskip=1.8em
\makebox[0pt][r]{\theenmark. \rule{0pt}{\dimexpr\ht\strutbox}}%
}
\begin{document}
\endnote{\lipsum[1]}\endnote{\lipsum[2]}
\theendnotes
\end{document}
但这又引入了尾注之间的空格。我尝试了一下,但不知道该如何消除这个空格。
答案1
终于成功了。诀窍是删除\raggedright
,而不是添加\justify
,而是在\noindent
之前添加\makebox
。这是我现在的代码。
\documentclass{book}
\usepackage{endnotes}
\usepackage{lipsum}
\usepackage{ragged2e}
\renewcommand\enoteformat{%
\justify
\leftskip=1.8em
\makebox[0pt][r]{\theenmark. \rule{0pt}{\dimexpr\ht\strutbox}}%
}
\begin{document}
\endnote{\lipsum[1]}\endnote{\lipsum[2]}
\theendnotes
\end{document}