这个问题是reledpar (& thalie):选项 advancedshiftedpstarts 会打乱段落开头和行号
我正在尝试使\stanza
的环境eledmac
(以及astanza
的环境eledpar
)适合戏剧诗的设置。目前,我保留了该thalie
包中用于管理剧中角色的功能。以下 MWE 显示了缺少以下内容的戏剧台词示例:
根本没有显示行号。诗的最后一行应该是剧本中的第 5 行。我是不是忘记了“简单”的设置?
虽然一般的悬挂缩进适用于第一行之后的所有行,但演讲的第一行应该在角色的名字和他的第一个单词之间留出空格,以反映“分割诗句”的韵律性质。由于这种情况总是发生在配置中
\startlock
\endlock
,我猜这两个命令将是确定所需空白长度并设置它的关键。然而,我不知道如何实现这一点。
梅威瑟:
\documentclass [12pt, a4paper, pagesize] {scrbook}
\usepackage [UKenglish] {babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{microtype}
\usepackage[characterstyle=imprimerie-prose]{thalie}
\usepackage{reledmac}
%%retained from the thalie package, modifies the way a character's name is given in the first line of speech
\renewcommand*{\speakswithoutdirection}[1]{%
\noindent\textsc{#1}\xspace.%
}
%%line numbers for broken half lines on last bit of line
\lockdisp{last}
\begin{document}
\begin{dramatis}[hidden]
\character[cmd={Buckingham}]{Buckingham}
\character[cmd={Norfolk}]{Norfolk}
\end{dramatis}
%sets indent for stanza at 2\parindent for all lines following the first in a stanza
\setlength\stanzaindentbase{2\parindent}
\setstanzaindents{0,1}
\setcounter{stanzaindentsrepetition}{1}
\beginnumbering
\selectlanguage{UKenglish}
\stanza\Buckingham Good morrow and well met. How have ye done&Since last we saw in France?\startlock\&
\stanza\Norfolk\endlock I thank your grace,&Healthful, and ever since a fresh admirer&Of what I saw there.\startlock\&
\stanza\Buckingham\endlock An untimely ague&Stayed me a prisoner in my chamber when\&
\endnumbering
\end{document}
这就是“分割诗句”的排列方式(尽管字体不同)。
非常感谢您的帮助。
线划的附加示例:
即使有了\firstlinenum{1}
,\linenumincrement{1}
和,\linenummargin{right}
我的 MWE 中也无法显示任何行号 >1,所以我自己添加了它们来展示如果显示每个行号应该是什么样子(请原谅我糟糕的绘图技巧)
抱歉,我编辑得不完整。我创建了另一个示例,展示了这两个问题(分节诗句中的水平间距和行距)应该是什么样子。这个示例是由环境thalie
中的函数创建的\pstart
\pend
(由于垂直跳跃,无法在ledpar
并行设置中使用advancedshiftedpstarts
选项,如顶部提到的相关问题中所述)。
答案1
您的问题要求提供一些 reledmac 上不存在的功能。在 github 上询问后,我在 reledmac 2.33.1 / reledpar 2.24.0 上实现了这些功能。
此版本将尽快在 CTAN 上发布。
对于 SE 的其他用户,这里是该问题的答案。
1. 将一行诗分成两行
新版本的 reledmac 实现了 antilabe 机制(由于说话者的变化,一行诗句被一分为二)。
你只需要
- 使用该选项加载包
antilabe
。 - 添加
\antilabe
在诗行后半部分的开头。 - 或者,
\afterantilabe
如果您想添加更多空间,您可以重新定义,例如\renewcommand{\afterantilabe}{\hspace{1em}
。
2. 不要将前半部分算入总行数中
用来\skipnumbering
代替\start
...\endlock
3. 设置缩进
这不是您最初问题的一部分,但是如果您希望节的第一行不缩进并且所有其他行都缩进 1,则可以使用以下设置:
\setstanzaindents{1,0,1}
\setcounter{stanzaindentsrepetition}{1}
\setcounter{startstanzaindentsrepetition}{2}
startstanzaindentsrepetition
是 reledmac 2.33.0 的新功能
4 一些评论
为了代码清晰,所有关于缩进的设置,以及一般所有 reledmac/reledpar 设置都应该在序言中。
5 最终代码
这是最终的代码,现在是 reledmac 文档的一部分,谢谢 :)
\documentclass{article}
\usepackage[osf,p]{libertinus}
\usepackage[english]{babel}
\babeltags{english = english}
\usepackage[characterstyle=imprimerie-prose]{thalie}
\usepackage[noeledsec,noend,noledgroup,nofamiliar,nocritical,antilabe]{reledmac}
\setstanzaindents{1,0,1}
\setcounter{stanzaindentsrepetition}{1}
\setcounter{startstanzaindentsrepetition}{2}
\linenumincrement{1}
\firstlinenum{1}
%%retained from the thalie package, modifies the way a character's name is given in the first line of speech
\renewcommand*{\speakswithoutdirection}[1]{%
\noindent\textsc{#1}\xspace.%
}
% Space after \antilabe macro
\renewcommand{\afterantilabe}{\hspace{1em}}
\begin{document}
\begin{abstract}
This file provides an example of typesetting verse for a dramatic text with reledmac and thalie packages.
We use the thalie features to manage characters.
We use the following features of reledmac to typeset the verses:
\begin{itemize}
\item \verb+\antilabe+ to show correctly the second half of a split line of verse (antilabe);
\item \verb+\afterantilabe+ to add more space after \verb+\antilabe+;
\item \verb+\setcounter{stanzaindentsrepetition}+ and \\ \verb+\setcounter{startstanzaindentsrepetition}+ to have the first line of a reply/stanza indented, but not the following ones;
\item \verb+\skipnumbering+ to avoid counting the first half of an antilabe in the line counting.
\end{itemize}
\end{abstract}
ddd
%%part of thalie's management of characters
\begin{dramatis}
\character[cmd={Buckingham}]{Buckingham}
\character[cmd={Norfolk}]{Norfolk}
\end{dramatis}
% Normal typesetting
\beginnumbering
\stanza\Buckingham Good morrow and well met. How have ye done&
\skipnumbering Since last we saw in France?\&
\stanza\antilabe\Norfolk I thank your grace,&
Healthful, and ever since a fresh admirer&
\skipnumbering Of what I saw there.\&
\stanza\antilabe\Buckingham An untimely ague&
Stayed me a prisoner in my chamber when\&
\endnumbering
\end{document}