我正在用 reledmac、reledpar 和 LuaLaTeX 编辑双语评注版。左页是带评注装置的希腊文文本,右页是德文译文。
一切看起来都很好,但在第一个左侧页面上,msdata 出现了两次,而在接下来的左侧页面上没有出现。
\msdata
我目前所做的:我认为这与我直接接到许多命令(包括关键设备)有关,所以我\msdata
暂时转移到了其他地方。然而,这并没有奏效。
我希望有一个人可以帮助我。
这是我的新 MWE
\documentclass[headheight=8mm, paper=170mm:240mm, BCOR=20mm, open=any]{scrbook}
\usepackage[polutonikogreek, ngerman]{babel}
\usepackage{letterspace} % für Sperrungen
\usepackage{lipsum}
%% begin reledmac
\usepackage[%
series={A, B, C, D, E}, % A: Bezeugung, B: Wiedergabe, C: Querbezüge;
% D: Verwendeter Text, E: Apparat
noend, % keine Endnotenapparate
noeledsec, % keine eledsections et al.
noledgroup % keine ledgroups
]{reledmac}
\Xarrangement[]{paragraph} % Apparateinträge in Paragraph, nicht jeder in eigener Zeile
\setmsdatalabel{} % Standardlabel für Bezeugung "Ms." löschen
\lineation{page} % auf jeder Seite Zeilen neu zählen
\linenummargin{outer} % Zeilenzahlen außen
\Xnumberonlyfirstinline[][true] % Zeilennummern nur einmal
\Xnumberonlyfirstintwolines[][true]
\Xtwolines[]{\,f.} % bei zwei Zeilen zweite durch "f." ersetzen
\Xtwolinesbutnotmore[] % aber bei mehr als zwei Zeilen Begin und Ende nennen
\Xsymlinenum[]{$\parallel$} % Symbol zwischen Lesarten aus einer Zeile
\Xnotenumfont[]{\bfseries} % Zeilennummern fett
\Xnonbreakableafternumber[] % kein Zeilenumbruch nach Zeilennummer
\Xlemmaseparator[A, B, C, D]{:} % Zeichen nach Lemma
\Xnonumber[B, C, D] % nur Zeilennummern in Apparat E
\Xafterrule[]{4pt} % Anzahl Points nach den Apparatlinien
\rightnoteupfalse % sidenote beginnt rechts von Markierung
%% A: Bezeugung
\Xtxtbeforenotes[A]{\textls{Bezeugung}:}
\Xafternumber[A]{0pt}
\Xinplaceoflemmaseparator[A]{0pt}
%% B: Wiedergabe
\Xtxtbeforenotes[B]{\textls{Wiedergabe}:}
\Xafternumber[B]{0pt}
\Xinplaceoflemmaseparator[B]{0pt}
\newcommand\wiga[3][]{%
\edtext{#2}{%
\if$#1$#2\else\lemma{#1}\fi
\Bfootnote{#3}
}
}
%% end reledmac
\usepackage{reledpar} % für seitenweise parallele Darstellung von Griechisch und Deutsch
\firstlinenumR{10000000} % vermeidet Zeilennummerierung der rechten Seite
\begin{document}
\begin{pages}
\begin{Leftside}
\lineation{page}
\beginnumbering
\autopar
\pstart%
\msdata{L\,E\,S\,Lat.}%
\textbf{\large{Titel}}
\pend
\pstart
\noindent
\edtext{%
\lipsum
}
{%
\lemma{%
\textbf{§§\,1--5}
}
\Bfootnote{Text zu 1--5}
}
\pend
\pstart
%\wiga[\textbf{§§\,6\,f.}]{%
\lipsum
%} % Wiedergabe
%{Text}
\pend
\endnumbering
\stopmsdata
\end{Leftside}
\begin{Rightside}
% Deutsche Übersetzung
\selectlanguage{ngerman}
\lineation{page}
\beginnumbering
\autopar
\pstart
\textbf{\large{Titel}}
\pend
\pstart
\ledsidenote{2:1--5}
\lipsum
\pend
\pstart
\ledsidenote{2:6--9}
\lipsum
\pend
\endnumbering
\end{Rightside}
\end{pages}
\Pages
\end{document}
答案1
这听起来没什么帮助,但是……就你的例子被关注到,问题归结于你使用\lipsum
与关键脚注结合,具体来说,在 里面\edtext
。(并且您的自定义命令\wiga
不直接负责它。)
假设你的真实文件包含实际文本而不是\lipsum
,这个答案可能不令人满意、形式化且无用。但它有可能为你指明正确的方向——也许你的大脑内部发生了一些事情实际文件 \edtext
那不应该——所以我无论如何都要发布它。
我把你的代码提炼成真正的最小例子。
\documentclass{article}
\usepackage{lipsum}
\usepackage{reledmac}
\usepackage{reledpar}
%%% This custom definition has some issues, see below
\newcommand\wiga[3][]{%
\edtext{#2}{%
\if$#1$#2\else\lemma{#1}\fi
\Bfootnote{#3}
}
}
\begin{document}
\begin{pages}
\begin{Leftside}
\lineation{page}
\beginnumbering
\autopar
\pstart
\msdata{This text must appear only once!}%
Title
\pend
\pstart
\wiga[My lemma]{%
Some
%\lipsum % try uncommenting this
text%
}{My footnote}
\lipsum % try commenting this out
%
\edtext{Some
%\lipsum % try uncommenting this
text%
}{\lemma{My lemma}\Bfootnote{My footnote}}
\pend
\endnumbering
\stopmsdata
\end{Leftside}
\begin{Rightside}
\lineation{page}
\beginnumbering
\autopar
\pstart
Title
\pend
\pstart
\lipsum
\pend
\endnumbering
\end{Rightside}
\end{pages}
\Pages
\end{document}
请注意,我保留了\lipsum
严格在外面单个脚注的论点\edtext
,以及 的论点\wiga
,后者只是 的别名\edtext...\Bfootnote
。在这种情况下, 中的文本重复没有问题\msdata
。
但是,如果您使用\lipsum
内部\edtext
或第一个强制参数\wiga
(这是同一件事!),则\msdata
文本会被打印两次。
我不知道它能做什么\lipsum
,\edtext
不能消化——但如果我不得不猜的话,我会说它插入隐式段落分隔符(一次调用\lipsum
打印七段“Lorem ipsum”)。我们知道这\edtext
是一个“短”宏,即禁止分段在其参数中(如果您留下空行,甚至会抛出错误)。另一方面,似乎由 造成的任何中断都\lipsum
可以忽略不计\edtext
——只是它们会以不一致和重复的形式回来困扰您。
也许你会发现类似的东西在你的文档中这就是重复的根源。
为了找出罪魁祸首,减少(最小)是可行的方法:像我对上面的 MWE 所做的那样,精简你的代码,直到你有一个仍然会产生问题的简单配置。
自定义命令的改进\wiga
- 注意换行符:如果过多的换行符未受保护,文档中就会出现一些虚假空格(在正文和设备中)。对于
\wiga
所有reledmac
脚注来说都是如此:
\newcommand\wiga[3][]{%
\edtext{#2}{%
\if$#1$#2\else\lemma{#1}\fi
\Bfootnote{#3}
} % this should be: }%
}
\edtext{%
Some % this should be: Some%
}
{%
\lemma{%
\textbf{§§\,1--5} % this should be: }%
}
\Bfootnote{Text zu 1--5} % this should be: }%
}
Text
% or even better:
\edtext{Some}{%
\lemma{\textbf{§§\,1--5}}%
\Bfootnote{Text zu 1--5}}
Text
- 我不确定条件
\if$#1$#2\else\lemma{#1}\fi
是如何工作的(为什么是数学模式?),但实际上,它不起作用。当 #1 为空时,命令打印 #2 两次。
您似乎想要一个打印的命令\edtext{#2}{\lemma{#1}\Bfootnote{#3}
,其中 #1 是可选的,如果未定义,则默认为 #2。
使用任何最近的 TeX 发行版(>2020),执行此操作的规范(和有效)方法是下列:
\NewDocumentCommand{\wiga}{O{#2} m m}%
{\edtext{#2}{\lemma{#1}\Bfootnote{#3}}}