继续关于批判版脚注布局的问题,我来报告我面临的最后一个问题。我正在para
使用bigfoot
来排版脚注。问题是这个选项不能像我希望的那样工作。我遇到了一个解决方案当注释不能完全容纳一行时,不会强制换行:
\expandafter\def\csname @makefnbreak\endcsname{\unskip\linebreak[0]\quad}
但我仍然遇到下图所示的情况。当注释从新行开始时(因为前一行已经满了),它会以缩进形式打印。这种缩进是不必要的。
图像中的第二个红色圆圈显示了所需的行为。第一个红色圆圈指向实际问题。我提供了一个 MWE:
\documentclass[12pt]{book}
\usepackage{polyglossia}
\usepackage{verse}
\usepackage[showframe]{geometry}
\setdefaultlanguage{greek}
\setotherlanguage{english}
\newfontfamily\greekfont[Script=Greek,Ligatures=TeX]{Times New Roman}
\usepackage[para]{bigfoot}
\def\extrafootnoterule{\defaultfootnoterule}
\interfootnotelinepenalty=10000
\DeclareNewFootnote[para]{A}
\DeclareNewFootnote[para]{B}
\def \mylinespacing {1.05}
\expandafter\def\csname @makefnbreak\endcsname{\unskip\linebreak[0]\quad}
\renewcommand{\thefootnoteA}{}
\renewcommand{\thefootnoteB}{}
\newcommand{\foota}[1]{%
\begingroup%
\linespread{\mylinespacing}%
\footnoteA{\textbf{\arabic{poemline}} #1}
\endgroup}
\newcommand{\footb}[1]{%
\begingroup%
\linespread{\mylinespacing}%
\footnoteB{\textbf{\arabic{poemline}} #1}
\endgroup}
\newcommand{\footheirm}[1]{%
\begingroup%
\linespread{\mylinespacing}%
\footnoteA+{#1}
\endgroup}
\hyphenpenalty = 10000
\exhyphenpenalty = 10000
\begin{document}
\verselinenumbersleft
\settowidth{\versewidth}{ααααααααααααααααααααααααααααααααααααααααα}
\chapter*{CANON I}
\poemlines{5}
\begin{verse}[\versewidth]
\vin ᾠδὴ . \textit{Θαυμαστὸς ἐνδόξως ποιῶν τέρατα}\footheirm{heirm. α΄ EE 76, n. 108, Andreae}
\vin Τὴν πύρινην γλῶτταν,\foota{Τὴν πύρινην γλῶτταν}\\*
τὸν νοῦν τὸν ἄϋλον,\foota{Τὴν πύρινην γλῶτταν}\\
τῶν θεωριῶν\foota{Τὴν πύρινην γλῶτταν}\\
τὴν σάλπιγγα τὴν θείαν,\footb{Τὴν πύρινην}\footb{Τὴν πύρινην γλῶτταν}\\
τὸ στόμα τῆς σοφίας,\foota{Τὴν πύρινην γλῶτταν}\\
τὸν μέγαν θεολόγον\\*
θείοις ὕμνοις ἀνευφημήσωμεν.\foota{Τὴν πύρινην γλῶτταν}\\!
\vin Τὴν πύρινην γλῶτταν,\foota{Τὴν πύρινην γλῶτταν}\\*
τὸν νοῦν τὸν ἄϋλον,\footb{Τὴν πύρινην γλῶτταν}\\
τῶν \footb{Τὴν πύρινην γλῶτταν}θεωριῶν\footb{Τὴν πύρινην γλῶτταν}\\
τὴν σάλπιγγα τὴν θείαν,\\
τὸ στόμα τῆς σοφίας,\foota{Τὴν πύρινην γλῶτταν}\\
τὸν μέγαν θεολόγον\footb{Τὴν πύρινην γλῶτταν}\\*
θείοις ὕμνοις ἀνευφημήσωμεν.\\!
\vin Τὴν πύρινην γλῶτταν,\\*
τὸν νοῦν τὸν ἄϋλον,\\
τῶν θεωριῶν \footb{Τὴν πύρινην γλῶτταν}\\
τὴν σάλπιγγα τὴν θείαν,\footb{Τὴν πύρινην γλῶτταν}\\
τὸ στόμα τῆς σοφίας,\\
τὸν μέγαν θεολόγον\footb{Τὴν πύρινην γλῶτταν}\\*
θείοις ὕμνοις ἀνευφημήσωμεν.\foota{Τὴν πύρινην γλῶτταν}\\!
\end{verse}
\end{document}
答案1
bigfoot
实际上所做的只不过是使用当前的脚注样式,并在水平块中格式化脚注时进行一些重新解释。
最简单的方法可能是使用脚注重塑包,例如
\usepackage[flushmargin]{footmisc}
在加载之前bigfoot
。使用它可以很明显地看出,您的\foota
和\footb
命令最好使用不可中断的空格~
而不是在之前
#1
。
答案2
这个解决方案可能对你来说可以接受,也可能不可以接受。它的作用是防止脚注在行末结束(通过强制过早换行)。它通过修改\footnoteA
以下内容来实现这一点
\footnoteA{\textbf{\arabic{poemline}} #1\makebox[\mykern]{}%
\setbox0=\hbox{\ }\ \kern-\wd0\kern-\mykern}
\mykern
此重新定义的作用是在脚注末尾放置一个空的-width 框,添加一个空格,然后将空格加 向左对齐\mykern
。因此,\mykern
距离行尾距离内的任何脚注都会换行。这样做的目的是防止第一个脚注之后的任何脚注从行首开始。
的值\mykern
可能需要调整才能达到最佳效果。我目前将其设置为 40pt。
\documentclass[12pt]{book}
\usepackage{polyglossia}
\usepackage{verse}
\usepackage[showframe]{geometry}
\setdefaultlanguage{greek}
\setotherlanguage{english}
\newfontfamily\greekfont[Script=Greek,Ligatures=TeX]{Times New Roman}
\usepackage[para]{bigfoot}
\def\extrafootnoterule{\defaultfootnoterule}
\interfootnotelinepenalty=10000
\DeclareNewFootnote[para]{A}
\DeclareNewFootnote[para]{B}
\def \mylinespacing {1.05}
\newlength\mykern
\setlength\mykern{40pt}%MUST BE LARGE ENOUGH TO FORCE AT-END LINE TO LINEBREAK
\expandafter\def\csname @makefnbreak\endcsname{\unskip\linebreak[0]\quad}
\renewcommand{\thefootnoteA}{}
\renewcommand{\thefootnoteB}{}
\newcommand{\foota}[1]{%
\begingroup%
\linespread{\mylinespacing}%
\footnoteA{\textbf{\arabic{poemline}} #1\makebox[\mykern]{}%
\setbox0=\hbox{\ }\ \kern-\wd0\kern-\mykern}
\endgroup%
}
\newcommand{\footb}[1]{%
\begingroup%
\linespread{\mylinespacing}%
\footnoteB{\textbf{\arabic{poemline}} #1}
\endgroup}
\newcommand{\footheirm}[1]{%
\begingroup%
\linespread{\mylinespacing}%
\footnoteA+{#1}
\endgroup}
\hyphenpenalty = 10000
\exhyphenpenalty = 10000
\begin{document}
\verselinenumbersleft
\settowidth{\versewidth}{ααααααααααααααααααααααααααααααααααααααααα}
\chapter*{CANON I}
\poemlines{5}
\begin{verse}[\versewidth]
\vin ᾠδὴ . \textit{Θαυμαστὸς ἐνδόξως ποιῶν τέρατα}\footheirm{heirm. α΄ EE 76, n. 108, Andreae}
\vin Τὴν πύρινην γλῶτταν,\foota{Τὴν πύρινην γλῶτταν}\\*
τὸν νοῦν τὸν ἄϋλον,\foota{Τὴν πύρινην γλῶτταν}\\
τῶν θεωριῶν\foota{Τὴν πύρινην γλῶτταν}\\
τὴν σάλπιγγα τὴν θείαν,\footb{Τὴν πύρινην}\footb{Τὴν πύρινην γλῶτταν}\\
τὸ στόμα τῆς σοφίας,\foota{Τὴν πύρινην γλῶτταν}\\
τὸν μέγαν θεολόγον\\*
θείοις ὕμνοις ἀνευφημήσωμεν.\foota{Τὴν πύρινην γλῶτταν}\\!
\vin Τὴν πύρινην γλῶτταν,\foota{Τὴν πύρινην γλῶτταν}\\*
τὸν νοῦν τὸν ἄϋλον,\footb{Τὴν πύρινην γλῶτταν}\\
τῶν \footb{Τὴν πύρινην γλῶτταν}θεωριῶν\footb{Τὴν πύρινην γλῶτταν}\\
τὴν σάλπιγγα τὴν θείαν,\\
τὸ στόμα τῆς σοφίας,\foota{Τὴν πύρινην γλῶτταν}\\
τὸν μέγαν θεολόγον\footb{Τὴν πύρινην γλῶτταν}\\*
θείοις ὕμνοις ἀνευφημήσωμεν.\\!
\vin Τὴν πύρινην γλῶτταν,\\*
τὸν νοῦν τὸν ἄϋλον,\\
τῶν θεωριῶν \footb{Τὴν πύρινην γλῶτταν}\\
τὴν σάλπιγγα τὴν θείαν,\footb{Τὴν πύρινην γλῶτταν}\\
τὸ στόμα τῆς σοφίας,\\
τὸν μέγαν θεολόγον\footb{Τὴν πύρινην γλῶτταν}\\*
θείοις ὕμνοις ἀνευφημήσωμεν.\foota{Τὴν πύρινην γλῶτταν}\\!
\end{verse}
\end{document}