对多语现象的一些质疑

对多语现象的一些质疑

这是可以看到错误的 mwe。如果\begin{otherlanguage}{french}\end{otherlanguage},我得到Extra }, or forgotten \endgroup error

没有\selectlanguage{french}错误,也不需要结束命令,所以在这种情况下,我不知道在块的正确部分是否选择了意大利语。

没有\textfrench{......}错误,但我认为这不是正确的命令,因为手册上说:“该命令可用于插入该语言的简短文本”。

鉴于我有数百个reledmac块,并且我已经用“开始语言”、“结束语言”这两个词设置了所有块的左侧部分,我想知道这是我的错还是polyglossia错。

\documentclass[a4paper,twoside,openright,10pt,final]{memoir}
\usepackage{polyglossia}
\usepackage[series={A,B},noledgroup,noend,noquotation,noeledsec]{reledmac}
\usepackage[]{reledpar}
\setgoalfraction{.95}
\linenumincrement*{1}
\firstlinenum*{0}
\setRlineflag{d}
\setlength{\Lcolwidth}{66mm} 
\setlength{\Rcolwidth}{66mm} 
\AtBeginPairs{\sloppy}
\usepackage{fontspec}
\setmainlanguage{italian}
\setotherlanguage[automaticspacesaroundguillemets=false]{french}
\setotherlanguage{hebrew}
\setstocksize{303mm}{216mm}
\setpagecc{297mm}{210mm}{*}
\settypeblocksize{220mm}{136mm}{*}
\setlrmargins{35mm}{*}{1}
\setulmargins{30mm}{*}{1.4142}
\setheadfoot{10mm}{10mm}
\setmarginnotes{8mm}{25mm}{10pt}
\checkandfixthelayout

\begin{document}

    \begin{pairs}
        \begin{Leftside} 
            \beginnumbering
                \pstart
%\selectlanguage{french}
\begin{otherlanguage}{french}
%\textfrench{
Le français est une langue indo-européenne de la famille des langues romanes. Le français s'est formé en France (variété de la « langue d’oïl », qui est la langue de la partie septentrionale du pays). Le français est déclaré langue officielle en France en 1539.
%}
\end{otherlanguage}
                \pend
            \pausenumbering
        \end{Leftside}

        \begin{Rightside} 
            \beginnumbering
                \pstart
%\selectlanguage{italian}
Il francese è una lingua indo--europea appartenente alla famiglia delle lingue neo--latine. Il francese si è formato in Francia (varietà della lingua d'oil, che è la lingua della parte settentrionale del paese). Il francese è stato dichiarato lingua ufficiale in Francia nel 1539.
                \pend
            \pausenumbering
        \end{Rightside}
    \end{pairs}
\Columns

\end{document}

答案1

随着最近的更新polyglossiaotherlanguage环境发生了些许变化。

reledmac软件包改变了相同环境的定义以便做其他必要的事情,但尚未更新以适应这一变化。

解决方案:修补版本reledmac以添加所需代码。

\documentclass[a4paper,twoside,openright,10pt,final]{memoir}
\usepackage{polyglossia}
\usepackage[series={A,B},noledgroup,noend,noquotation,noeledsec]{reledmac}
\usepackage[]{reledpar}
\usepackage{xpatch}

\setgoalfraction{.95}
\linenumincrement*{1}
\firstlinenum*{0}
\setRlineflag{d}
\setlength{\Lcolwidth}{66mm} 
\setlength{\Rcolwidth}{66mm} 
\AtBeginPairs{\sloppy}
\usepackage{fontspec}
\setmainlanguage{italian}
\setotherlanguage[automaticspacesaroundguillemets=false]{french}
\setotherlanguage{hebrew}
\setstocksize{303mm}{216mm}
\setpagecc{297mm}{210mm}{*}
\settypeblocksize{220mm}{136mm}{*}
\setlrmargins{35mm}{*}{1}
\setulmargins{30mm}{*}{1.4142}
\setheadfoot{10mm}{10mm}
\setmarginnotes{8mm}{25mm}{10pt}
\checkandfixthelayout

\makeatletter
\AtBeginDocument{%
  \xpretocmd{\otherlanguage}{\xpg@set@group@aux}{}{}% \xpg@set@group@aux is missing in reledmac
}
\makeatother

\begin{document}

    \begin{pairs}
        \begin{Leftside} 
            \beginnumbering
                \pstart
\begin{otherlanguage}{french}
Le français est une langue indo-européenne de la famille des langues romanes. 
Le français s'est formé en France (variété de la « langue d’oïl », qui est la 
langue de la partie septentrionale du pays). Le français est déclaré langue 
officielle en France en 1539.
\end{otherlanguage}
                \pend
            \pausenumbering
        \end{Leftside}

        \begin{Rightside} 
            \beginnumbering
                \pstart
Il francese è una lingua indo--europea appartenente alla famiglia delle lingue 
neo--latine. Il francese si è formato in Francia (varietà della lingua d'oil, 
che è la lingua della parte settentrionale del paese). Il francese è stato 
dichiarato lingua ufficiale in Francia nel 1539.
                \pend
            \pausenumbering
        \end{Rightside}
    \end{pairs}
\Columns

\end{document}

相关内容