summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex')
-rw-r--r--Master/texmf-dist/source/latex/reledmac/reledmac.dtx103
-rw-r--r--Master/texmf-dist/source/latex/reledmac/reledpar.dtx140
2 files changed, 172 insertions, 71 deletions
diff --git a/Master/texmf-dist/source/latex/reledmac/reledmac.dtx b/Master/texmf-dist/source/latex/reledmac/reledmac.dtx
index d47496b7602..24cb7ada17d 100644
--- a/Master/texmf-dist/source/latex/reledmac/reledmac.dtx
+++ b/Master/texmf-dist/source/latex/reledmac/reledmac.dtx
@@ -429,26 +429,28 @@
% \changes{v2.15.2}{2016/09/12}{Fix bug with \protect\package{fancyhdr} package 3.8 and later.}
% \changes{v2.15.3}{2016/09/26}{Fix bug with \protect\cs{section} in optional argument of \protect\cs{pstart} and empty line before \protect\cs{pend} (bug added in v2.8.2).}
% \changes{v2.15.3}{2016/09/26}{Simplification of the sectioning command code.}
-% \changes{v2.16.0}{2016/10/02}{Display warning message if using a version of \protect\LaTeX that is too old.}
-% \changes{v2.16.0}{2016/10/02}{Deleting dead code.}
-% \changes{v2.16.0}{2016/10/02}{New options of \protect\cs{fnpos} and \protect\cs{mpfnpos} to set a customized order for familiar and critical footnotes.}
+% \changes{v2.16.0}{2016/10/02}{Display a warning message if using a version of \protect\LaTeX that is too old.}
+% \changes{v2.16.0}{2016/10/02}{Deleted dead code.}
+% \changes{v2.16.0}{2016/10/02}{New options for \protect\cs{fnpos} and \protect\cs{mpfnpos} to set a customized order for familiar and critical footnotes.}
% \changes{v2.16.0}{2016/10/02}{Compatibility with new features of \protect\reledpar}
% \changes{v2.16.0}{2016/10/02}{Fix bug with \protect\cs{Xtxtbeforenotes} for notes in three or two columns}
% \changes{v2.16.0}{2016/10/02}{Fix bug with \protect\cs{Xgroupbylines} for notes in two columns}
% \changes{v2.16.0}{2016/10/02}{Fix bug with `notenumber' option of \protect\package{indextools} package when indexing texts in familiar footnotes.}
-% \changes{v2.16.0}{2016/10/02}{When indexing texts in familiar footnotes with \protect\cs{edtext}, referring to the line number where the footnote is called.}
-% \changes{v2.16.0}{2016/10/02}{When indexing texts in sidenotes with \protect\cs{edtext}, referring to the line number where the sidenote is called.}
+% \changes{v2.16.0}{2016/10/02}{When indexing texts in familiar footnotes with \protect\cs{edtext}, refer to the line number where the footnote is called.}
+% \changes{v2.16.0}{2016/10/02}{When indexing texts in sidenotes with \protect\cs{edtext}, refer to the line number where the sidenote is called.}
% \changes{v2.16.0}{2016/10/02}{Fix potential bug when using \protect\cs{edindex} in critical footnotes.}
% \changes{v2.16.0}{2016/10/02}{Add \protect\cs{Xendpagenumberonlyfirst}, \protect\cs{Xendpagenumberonlyfirstifsingle}, \protect\cs{Xendpagenumberonlyfirstintwo}, \protect\cs{Xendinplaceofpagenumber} and \protect\cs{Xendsympagenum} hooks.}
% \changes{v2.16.0}{2016/10/02}{When \protect\cs{edindex} is called outside of a \protect\cs{beginnumbering}\protect\ldots\protect\cs{endnumbering} structure, it is automatically switched to \protect\cs{index}, with a warning message.}
% \changes{v2.16.1}{2016/10/04}{Fix bug with redefinition of the style of the footnote number (bug added in v2.12.0)}
% \changes{v2.16.2}{2016/10/07}{Error message if \protect\package{footmisc} is loaded after \protect\package{reledmac}.}
-% \changes{v2.16.2}{2016/10/07}{Fix bug introduced by v2.16.1 when using not expandable control sequence, like \protect\cs{normalfont}, in the footnote number style.}
+% \changes{v2.16.2}{2016/10/07}{Fix bug introduced by v2.16.1 when using non-expandable control sequence, like \protect\cs{normalfont}, in the footnote number style.}
% \changes{v2.16.3}{2016/10/12}{Fix bug with \protect\cs{SEref} (bug added in v2.7.0).}
% \changes{v2.16.4}{2016/10/16}{Fix bug with vertical space before sectioning command in optional argument of \protect\cs{pstart} (bug added in v2.15.3).}
% \changes{v2.16.5}{2016/10/20}{Fix potential spurious spaces in endnotes.}
-% \changes{v2.16.6}{2016/11/14}{Take account of \protect\cs{linenumberstyle} when using \protect\cs{edlineref}.}
+% \changes{v2.16.6}{2016/11/14}{Take into account \protect\cs{linenumberstyle} when using \protect\cs{edlineref}.}
% \changes{v2.16.6}{2016/11/14}{Fix bug with the line number style in \protect\cs{doennotes} when referring to right side line in parallel typesetting.}
+% \changes{v2.16.7}{2016/12/12}{Fix bug with \protect\cs{numberpstarttrue} when using multiple \protect\cs{beginnumbering}…\protect\cs{endnumbering}}
+% \changes{v2.16.7}{2016/12/12}{Fix bug with \protect\cs{msdata} when using multiple \protect\cs{beginnumbering}…\protect\cs{endnumbering}}
% \title{\Macpackage \\
% Typeset scholarly editions with \LaTeX\thanks{This file (\dtxfilename)
% has version number \fileversion, last revised \filedate.}}
@@ -1157,7 +1159,7 @@
% \DescribeMacro{\dolinehook}\DescribeMacro{\doinsidelinehook}
% The argument passed to \protect\cs{dolinehook}\marg{arg} will be executed
% before slicing a new line in the paragraph.
-% The argument passed to \protect\cs{doinsidelinehook}\marg{arg} will be executed before printing a new line, when the line number have already been fixed.
+% The argument passed to \protect\cs{doinsidelinehook}\marg{arg} will be executed before printing a new line, when the line number has already been fixed.
% In many cases, the latter is more useful than the former.
% The file \href{examples/2-line_numbers_in_header.tex}{examples/2-line\_numbers\_in\_header.tex} provides
% an example for printing the first and last line numbers of a page in the header.
@@ -1898,28 +1900,28 @@
% \\ \cs{Xnumberonlyfirstinline}; \cs{Xnumberonlyfirstintwolines} and \cs{Xsymlinenum}.
%
% \subsubsection{Print page number only at first time}
-% For endnotes, \reledmac provides tools to print the page number only the first time it is seen.
-% However, when a lemma spans over two pages, the line numbers are normally printed following this pattern: start page number - start line number - end page number - end line number.
-% Consequently, what is the `page number' is not obvious. So:
-% \DescribeMacro{\Xendpagenumberonlyfirst} \cs{Xendpagenumberonlyfirst}\oarg{s} can be called to tell that the start page number of a lemma is not printed if it is equal to the end page number of the previous lemma.
-% You can use \emph{as complement} one (and only one) of the following commands:
+% For endnotes, \reledmac\ provides a mechanism for printing the page number only the first time it is seen.
+% However, when a lemma spans over two pages, the line numbers are normally printed in the following pattern: starting page number - starting line number - ending page number - ending line number.
+% It follows that what corresponds to the actual `page number' may not be self-evident. So:
+% \DescribeMacro{\Xendpagenumberonlyfirst} \cs{Xendpagenumberonlyfirst}\oarg{s} can be called to ensure that the starting page number of a lemma be not printed if it is the same as the ending page number of the preceding lemma.
+% You can use \emph{additionally} one (and only one) of the following commands:
% \begin{itemize}
% \item \cs{Xendpagenumberonlyfirstifsingle}\oarg{s}:
% the first page number of the lemma will not be printed only if the following conditions are true:
% \begin{enumerate}
-% \item The start page number of the lemma is equal to the end page number of the previous lemma.
-% \item The end page number of the lemma is equal to the start page number of the lemma.
+% \item The starting page number of the lemma is the same as the ending page number of the preceding lemma.
+% \item The ending page number of the lemma is the same as the starting page number of the lemma.
% \end{enumerate}
-% In this case the end page number will always be printed if differing from the start page number.
-% \item \cs{Xendpagenumberonlyfirstintwo}\oarg{s}: both the start page number and the end page number of a lemma are not printed if they are both equal to respectively the start page number and the end page number of the previous lemma.
+% In this case the ending page number will always be printed if it is different from the starting page number.
+% \item \cs{Xendpagenumberonlyfirstintwo}\oarg{s}: both the starting page number and the ending page number of a lemma are not printed if they are both the same as the starting page number and the ending page number of the preceding lemma respectively.
%
% \end{itemize}
%
% In any case, you can use:
% \begin{itemize}
-% \item \DescribeMacro{\Xendsympagenum} \cs{Xendsympagenum}\oarg{series}\marg{c} to tell to print \meta{c} when the page number is not printed.
-% \item \DescribeMacro{\Xendinplaceofpagenumber} \cs{Xendinplaceofpagenumber}\oarg{series}\marg{l} to tell to print a horizontal space of \meta{l} if no symbol is printed instead of page number.
+% \item \DescribeMacro{\Xendsympagenum} \cs{Xendsympagenum}\oarg{series}\marg{c} to print \meta{c} when the page number is not printed.
+% \item \DescribeMacro{\Xendinplaceofpagenumber} \cs{Xendinplaceofpagenumber}\oarg{series}\marg{l} to print a \meta{l} length horizontal space in case no symbol is printed instead of the page number.
%
% \end{itemize}
%
@@ -2788,8 +2790,9 @@
% \DescribeMacro{\sublineref}
% \DescribeMacro{\pstartref}
% Elsewhere in the text, either before or after the \protect\cs{edlabel},
-% you can refer to its location via \protect\cs{edpageref}\marg{lab}, or
-% \protect\cs{edlineref}\marg{lab}%
+% you can refer to its location with \protect\cs{edpageref}\marg{lab},
+% \protect\cs{edlineref}\marg{lab}, \cs{edsublineref}\marg{lab} or \cs{pstartref}\marg{lab},
+% that
% will produce, respectively, the page, line, sub-line and pstart on which
% the \protect\cs{edlabel}\marg{lab} command occurred.
%
@@ -3120,7 +3123,7 @@
% \item Declare the index with the macro \cs{makeindex} of \package{imakeidx} and \package{indextools}.
% \end{enumerate}
%
-% Also note that using \cs{edtext} in familiar footnotes refer to the line the footnotes are called
+% Also note that using \cs{edtext} in familiar footnotes refers to the line where the footnotes are called
% \subsection{Referring to critical notes}
% If you want to refer to a word inside an
% \protect\cs{edtext}\marg{lemma}\marg{app} command, \protect\cs{edindex} should be defined inside
@@ -3844,7 +3847,7 @@
% \begin{macrocode}
%<*code>
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{reledmac}[2016/11/14 v2.16.6 typesetting critical editions]%
+\ProvidesPackage{reledmac}[2016/12/12 v2.16.7 typesetting critical editions]%
% \end{macrocode}
%
% \subsection{Package options}
@@ -4037,7 +4040,7 @@
%False is the default value. We consider \protect\package{indextools} as a variant of \protect\package{imakeidx}. That is why we set \protect\cs{ifl@imakeidx} to true. We also let \protect\cs{imki@wrindexentry} to \protect\cs{indtl@wrindexentry}.
% \end{macro}
% \begin{macro}{\ifl@footmisc}
-% Define a flag for if the \protect\package{footmisc} package has been used.
+% Define a flag if the \protect\package{footmisc} package has been loaded.
% \begin{macrocode}
\newif\ifl@footmisc
\@ifpackageloaded{footmisc}{\l@footmisctrue}{}%False is the default value
@@ -4286,7 +4289,7 @@
% \begin{macro}{\led@err@BadAction}
% \begin{macrocode}
\newcommand*{\led@err@StanzaIndentNotDefined}{%
- \reledmac@error{You have not defined indentation for the line of verse \number\stanza@count}{\@ehc}}%
+ \reledmac@error{You have not defined the indentation for the line \number\stanza@count}{\@ehc}}%
% \end{macrocode}
% \end{macro}
% \begin{macro}{\led@err@ManySidenotes}
@@ -4402,14 +4405,14 @@
% \begin{macro}{\led@error@fail@patch@endminipage}
% \begin{macrocode}
\newcommand{\led@error@fail@patch@endminipage}{%
- \reledmac@error{Fail to patch \string\endminipage\space command.}{\@ehc}%
+ \reledmac@error{Failed to patch the \string\endminipage\space command.}{\@ehc}%
}%
% \end{macrocode}
% \end{macro}
% \begin{macro}{\led@error@fail@patch@endminipage}
% \begin{macrocode}
\newcommand{\led@error@fail@patch@makeindex}{%
- \reledmac@error{Fail to patch \string\makeindex\space command.}{\@ehc}%
+ \reledmac@error{Failed to patch the \string\makeindex\space command.}{\@ehc}%
}%
% \end{macrocode}
% \end{macro}
@@ -4702,6 +4705,8 @@
\resetprevline@
\resetprevpage@num
\global\stopmsdata@inserted@true%
+ \global\let\@msdata@list\relax%
+ \global\csundef{@msdata@\add@msd@c @data}%
}
% \end{macrocode}
@@ -7912,7 +7917,7 @@
% Increase pstart counter.
% \begin{macrocode}
\ifnumberpstart%
- \pstartnumtrue%
+ \global\pstartnumtrue%
\fi%
\addtocounter{pstart}{1}%
% \end{macrocode}
@@ -7921,8 +7926,8 @@
\normal@pars%
\ifstrempty{#1}{\at@every@pend}{\noindent#1}%
% \end{macrocode}
-% Restore standard nobreak setting and autopar setting.
-% Normally, \cs{if@nobreak} is equal to true only immediately after a sectioning command (read latex.ltx file). As a \cs{pstart}…\cs{pend} structure can't contain any sectioning command, we set \cs{if@nobreak} to false.
+% Restore standard \enquote{nobreak} and \enquote{autopar} settings.
+% Normally, \cs{if@nobreak} is true only immediately after a sectioning command (see latex.ltx file). As a \cs{pstart}…\cs{pend} structure can't contain any sectioning command, we set \cs{if@nobreak} to false.
% \begin{macrocode}
\@nobreakfalse%
\ifautopar%
@@ -8741,7 +8746,7 @@
\gdef\l@drd@ta{\rlap{{\rightpstartnum}}}%
\fi
\else
- \@l@dtempcntb=\line@margin
+ \@l@dtempcntb=\line@margin%
\ifnum\@l@dtempcntb>\@ne
\advance\@l@dtempcntb \page@num
\fi
@@ -12752,13 +12757,13 @@
% sub-line number (in which case we want only the dash) or after an
% ending line number (in which case we need to insert a period).
%
-% So, first, start the start line box, if required.
+% So, first, start the starting line box, if needed.
% \begin{macrocode}
\ifdimequal{\csuse{Xendboxstartlinenum@\@currentseries}}{0pt}%
{\bgroup}%
{\leavevmode\hbox to \csuse{Xendboxstartlinenum@\@currentseries}\bgroup\hfill}%
% \end{macrocode}
-% Then, print the start page-
+% Then, print the starting page number-
% \begin{macrocode}
\ifboolexpr{%
(%
@@ -12794,7 +12799,7 @@
\csuse{Xendlineprefixsingle@\@currentseries}%
\fi%
% \end{macrocode}
-% The print the start line, following, if required, by the side flag and the start sub line.
+% The print the starting line, followed, if needed, by the side flag and the starting sub line number.
% \begin{macrocode}
\wrap@edcrossref{\@this@crossref@start}{%
\ifledRcol@%
@@ -12819,13 +12824,13 @@
% \begin{macrocode}
\egroup%
% \end{macrocode}
-% Open the box for the end line.
+% Open the box for the ending line number.
% \begin{macrocode}
\ifdimequal{\csuse{Xendboxendlinenum@\@currentseries}}{0pt}%
{\bgroup}%
{\hbox to \csuse{Xendboxendlinenum@\@currentseries}\bgroup}%
% \end{macrocode}
-% Print the dash + the end line number, or the line number range symbol.
+% Print the dash + the ending line number, or the line number range symbol.
% \begin{macrocode}
\ifl@d@Xtwolines%
\ifl@d@Xmorethantwolines%
@@ -12842,7 +12847,7 @@
\fi%
\fi%
% \end{macrocode}
-% Print the end page number.
+% Print the ending page number.
% \begin{macrocode}
\ifl@d@pnum%
\ifcsstring{prevpagerange@\@currentseries}{#1-#4}%
@@ -12856,7 +12861,7 @@
}%
\fi%
% \end{macrocode}
-% Print the end line number, with if required the line prefix, and followed by the side flag and the subline number.
+% Print the ending line number, with, if needed, the line prefix, and followed by the side flag and the subline number.
% \begin{macrocode}
\ifl@d@elin%
\ifl@d@pnum\csuse{Xendlineprefixsingle@\@currentseries}\fi%
@@ -12883,7 +12888,7 @@
\fi%
\fi%
% \end{macrocode}
-% Close the end line box.
+% Close the ending line box.
% \begin{macrocode}
\ifdimequal{\csuse{Xendboxendlinenum@\@currentseries}}{0pt}%
{}%
@@ -13306,7 +13311,7 @@
\newcommand{\content}{##2}%
\stepcounter{labidx}%
\expandafter\immediate\expandafter\write\csname l@d@#1end\endcsname{%
- \unexpanded{\def\sw@list@inedtext}{\expandafter\unexpanded\expandafter{\sw@inthisedtext}}\@percentchar\space%Volountary space, to add linebreak in the output file
+ \unexpanded{\def\sw@list@inedtext}{\expandafter\unexpanded\expandafter{\sw@inthisedtext}}\@percentchar\space%Explicit space, to add a linebreak in the output file
\expandafter\string\csname #1end\endcsname%
{\ifnumberedpar@\l@d@nums\fi}%
{\ifnumberedpar@\expandonce\@tag\fi}%
@@ -14104,7 +14109,7 @@
% \protect\cs{doreinxtrafeetii} becomes \protect\cs{X@doreinfeet};
% \protect\cs{doreinxtrafeeti} becomes \protect\cs{@doreinfeetX}.}
% \changes{v2.16.0}{2016/10/02}{\protect\cs{Xdo@feet} becomes \protect\cs{do@Xfeet}}
-% \changes{v2.16.0}{2016/10/02}{More explicit error message when missing to define stanza indent.}
+% \changes{v2.16.0}{2016/10/02}{More explicit error message in case the stanza indentation is not defined.}
% \begin{macrocode}
\@ifclassloaded{memoir}{%
% \end{macrocode}
@@ -14567,7 +14572,7 @@
\newcommand*{\edlineref}[1]{%
\l@dref@undefined{#1}%
\wrap@edcrossref{#1}{%
- \providetoggle{label@#1@ledRcol}%Required for the first run, when the label has not been yet parsed on the .aux file
+ \providetoggle{label@#1@ledRcol}%Required for the first run, when the label has not yet been parsed on the .aux file
\iftoggle{label@#1@ledRcol}%
{\linenumrepR{\l@dgetref@num{2}{#1}}}%
{\linenumrep{\l@dgetref@num{2}{#1}}}%
@@ -14587,7 +14592,7 @@
\newcommand*{\sublineref}[1]{%
\l@dref@undefined{#1}%
\wrap@edcrossref{#1}{%
- \providetoggle{label@#1@ledRcol}%Required for the first run, when the label has not been yet parsed on the .aux file
+ \providetoggle{label@#1@ledRcol}%Required for the first run, when the label has not yet been parsed on the .aux file
\iftoggle{label@#1@ledRcol}%
{\sublinenumrepR{\l@dgetref@num{3}{#1}}}%
{\sublinenumrep{\l@dgetref@num{3}{#1}}}%
@@ -15862,7 +15867,7 @@
%
% \subsection{Code specific to \cs{edindex} in critical footnotes}
% \begin{macro}{\@edindex@fornote@}
-% This counter is increased at the beginning of every notes (footnote and and sidenotes), and decreased at the end of every notes.
+% This counter is incremented at the beginning of each note (either a footnote or a sidenote), and decremented at the end of each note.
% If its value is greater than 0, that means we are inside a note.
% \begin{macrocode}
\newcount\@edindex@fornote@
@@ -16781,7 +16786,7 @@
\numdef{\@msd@cR}{0}
% \end{macrocode}
% \end{macro}
-% \begin{macro}{\@msd@c}
+% \begin{macro}{\add@msd@}
% \cs{add@msd@} is a counter incremented at each \cs{add@msddata}, that is at each time we prepare the insertion of manuscripts data footnote.
% \begin{macrocode}
\numdef{\add@msd@c}{0}%
@@ -16804,14 +16809,14 @@
% \begin{macrocode}
\newcommand{\@msd}[1]{%
\unless\ifledRcol%
- \numdef{\@msd@c}{\@msd@c+\@ne}%
+ \global\numdef{\@msd@c}{\@msd@c+\@ne}%
\csgdef{@msdata@\@msd@c @data}{#1}%
\csxdef{@msdata@\@msd@c @linenumber}{\the\line@num}%
\csxdef{@msdata@\@msd@c @abslinenumber}{\the\absline@num}%
\xright@appenditem{\the\absline@num}\to\actionlines@list%
\xright@appenditem{-1010}\to\actions@list%
\else%
- \numdef{\@msd@cR}{\@msd@cR+\@ne}%
+ \global\numdef{\@msd@cR}{\@msd@cR+\@ne}%
\csgdef{@msdata@\@msd@cR @dataR}{#1}%
\csxdef{@msdata@\@msd@cR @linenumberR}{\the\line@numR}%
\csxdef{@msdata@\@msd@cR @abslinenumberR}{\the\absline@numR}%
@@ -16821,7 +16826,7 @@
}%
% \end{macrocode}
% \end{macro}
-% \begin{macro}{\@endmsd}
+% \begin{macro}{\@stopmsd}
% Inserted in the auxiliary file by \cs{stopmsd}, the \cs{@stopmsd} macro will store in two commands the line number and the absolute line number on which it is called.
% \begin{macrocode}
\newcommand{\@stopmsd}[0]{%
@@ -16844,7 +16849,7 @@
% \begin{macro}{\add@msdata}
% \cs{add@msdata} is executed on each line when action code $1010$ is seen.
% It will not insert immediately the manuscript data footnote, as action code are executed before the line be typeset, and, consequently, could be on the previous page.
-% So it just store the manuscript data footnote to \cs{@msdata@list}.
+% So it just stores the manuscript data footnote to \cs{@msdata@list}.
% \begin{macrocode}
\newcommand{\add@msdata}{%
\bgroup%
diff --git a/Master/texmf-dist/source/latex/reledmac/reledpar.dtx b/Master/texmf-dist/source/latex/reledmac/reledpar.dtx
index bf7b1e101d9..004444aaa54 100644
--- a/Master/texmf-dist/source/latex/reledmac/reledpar.dtx
+++ b/Master/texmf-dist/source/latex/reledmac/reledpar.dtx
@@ -280,16 +280,21 @@
% \changes{v2.12.0}{2016/07/01}{Fix bug with \protect\cs{AtBeginPairs}.}
% \changes{v2.13.0}{2016/07/22}{Compatibility with the new features of \protect\macpackage 2.15.0}
% \changes{v2.13.1}{2016/09/26}{Simplification of the code concerning the sectioning command}
-% \changes{v2.14.0}{2016/10/02}{New commands to have specific line margins for text in parallel columns}
+% \changes{v2.14.0}{2016/10/02}{New commands to have specific line margins for text running in parallel columns}
% \changes{v2.14.0}{2016/10/02}{Add \protect\cs{linenumberlistR}, equivalent to \protect\cs{linenumberlist} for the right side.}
% \changes{v2.14.0}{2016/10/02}{When indexing texts in sidenotes with \protect\cs{edtext}, referring to the line number where the sidenote is called.}
-% \changes{v2.14.0}{2016/10/02}{More explicit error message when missing to define stanza indent.}
-% \changes{v2.14.0}{2016/10/02}{Error message when missing to define left / right side.}
+% \changes{v2.14.0}{2016/10/02}{More explicit error message when the stanza indentation is not defined.}
+% \changes{v2.14.0}{2016/10/02}{Error message when left / right side are not defined.}
% \changes{v2.14.1}{2016/10/16}{Fix bug with vertical space before sectioning command in optional argument of \protect\cs{pstart} (bug added in v2.13.1).}
% \changes{v2.14.1}{2016/10/16}{Fix bug when using \protect\cs{markboth} on \protect\cs{doinsidelineLhook} and \protect\cs{doinsidelineRhook}.}
% \changes{v2.14.2}{2016/10/31}{Fix spurious space with \protect\cs{edtextlater}.}
% \changes{v2.14.3}{2016/11/04}{Fix bug in \protect\cs{edtextnow}.}
-% \changes{v2.14.4}{2016/11/14}{Take account of \protect\cs{linenumberstyle} when using \protect\cs{edlineref}.}
+% \changes{v2.14.4}{2016/11/14}{Take into account \protect\cs{linenumberstyle} when using \protect\cs{edlineref}.}
+% \changes{v2.15.0}{2016/12/12}{Add \protect\option{movecolumnspositiononrightpage} option.}
+% \changes{v2.15.0}{2016/12/12}{New macro \protect\cs{sidenotemarginR}, fix default value to right.}
+% \changes{v.2.15.0}{2016/12/12}{Fix bug with \protect\cs{msdata} when using multiple \protect\cs{beginnumbering}…\protect\cs{endnumbering}}
+% \changes{v2.15.0}{2016/12/12}{Fix bug about space before sectioning commands after a pairs environment (bug added in v.~2.14.4).}
+% \changes{v2.15.0}{2016/12/12}{Fix bug with page break when using \protect\cs{columns} (bug added in v.~2.14.1).}
% ^^A PW added following as the definitions are at some unknown elsewhere
%
% \newcommand{\egstart}{%
@@ -406,6 +411,8 @@
% \item [prevpgnotnumbered] enables that the page before facing pages (the one
% automatically inserted to start parallel pages on a left page) is not
% counted. This applies only if the page is empty.
+% \item[movecolumnspositiononrightpage] make the left column on the right page become the right column, and the left column become the right column.
+% It allows to have a text running on the inner column, and an other one on the outer column.
% \end{description}
%
%
@@ -569,7 +576,13 @@
% If you want to have continuous line numbers between multiple columns and single columns, use the \option{continuousnumberingwithcolumns} option when loading \macpackage or \parpackage.
% You will need to use \cs{pausenumbering}\ldots\cs{resumenumbering} instead of \cs{endnumbering}\ldots{endnumbering} (see \reff{reledmac-pause}).
%
+% \section{Keeping translation in the outside/inside column}
+% By default, \parpackage works with left and right columns.
+% However, it is possible to work with inner and outer column.
+% In this case, use the \option{movecolumnspositiononrightpage} at loading time of the package.
%
+% The \env{Leftside} environment will correspond to the inner column, and the \env{Rightside} environment will correspond to the outer column.
+%
% \section{Facing pages}\label{pages}
% \subsection{Basic usage}
% \DescribeEnv{pages}
@@ -1060,7 +1073,7 @@
%
% \DescribeMacro{\doinsidelineLhook}
% \DescribeMacro{\doinsidelineRhook}
-% \cs{doinsidelineLhook} and \cs{doinsidelineRhook} are the equivalent to the \macpackage \cs{doinsidelinehook}, respectively for left and right side.
+% \cs{doinsidelineLhook} and \cs{doinsidelineRhook} are the equivalent to the \macpackage \cs{doinsidelinehook}, for the left and the right sides respectively.
%
% About these two hooks, read \macpackage's handbook (\reff{reledmac-linehook}).
%
@@ -1121,6 +1134,9 @@
% As in \macpackage, you must use one of the following commands to add side notes: \protect\cs{ledsidenote}, \protect\cs{ledleftnote}, \protect\cs{ledrightnote}, \protect\cs{ledouterote}, \protect\cs{ledinnerrote}.
%
% The \protect\cs{sidenotemargin} defines the margin of the sidenote for either left or right side, depending on the current environment.
+%
+% The \cs{sidenotemarginR} defines the margin of the sidenote for the right side.
+%
% You can use \protect\cs{sidenotemargin*} to define it for both sides.
% \section{Parallel ledgroups}
% \subsection{General}
@@ -1234,7 +1250,7 @@
% \begin{macrocode}
%<*code>
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{reledpar}[2016/11/14 v2.14.4 reledmac extension for parallel texts]%
+\ProvidesPackage{reledpar}[2016/12/12 v2.15.0 reledmac extension for parallel texts]%
% \end{macrocode}
% \subsection{Package's requirement}
@@ -1301,6 +1317,16 @@
}%
% \end{macrocode}
% \end{macro}
+% \subsubsection{Position option}
+% \begin{macro}{\ifmovecolumnspositiononrightpage}
+% The \cs{ifmovecolumnspositiononrightpage} boolean is set to true if, for a right page, we want the left column become a right column and the right column become a left column.
+% \begin{macrocode}
+\newif\ifmovecolumnspositiononrightpage%
+\DeclareOptionX{movecolumnspositiononrightpage}{%
+ \movecolumnspositiononrightpagetrue%
+}%
+% \end{macrocode}
+% \end{macro}
% \subsubsection{Other options}
% The \verb+parledgroup+ can be called either on \macpackage or \parpackage.
% \begin{macrocode}
@@ -1455,13 +1481,13 @@
% \begin{macro}{\led@err@Columns@WithoutLeftside}
% \begin{macrocode}
\newcommand*{\led@err@Pages@WithoutRightside}{%
- \reledpar@error{\string\Pages\space called without previous `Rightside` environment (or environment without content)}{\@ehc}}%
+ \reledpar@error{\string\Pages\space called without any preceding `Rightside` environment (or environment without content)}{\@ehc}}%
\newcommand*{\led@err@Pages@WithoutLeftside}{%
- \reledpar@error{\string\Pages\space called without previous `Leftside` environment (or environment without content)}{\@ehc}}%
+ \reledpar@error{\string\Pages\space called without any preceding `Leftside` environment (or environment without content)}{\@ehc}}%
\newcommand*{\led@err@Columns@WithoutRightside}{%
- \reledpar@error{\string\Columns\space called without previous `Rightside` environment (or environment without content)}{\@ehc}}%
+ \reledpar@error{\string\Columns\space called without any preceding `Rightside` environment (or environment without content)}{\@ehc}}%
\newcommand*{\led@err@Columns@WithoutLeftside}{%
- \reledpar@error{\string\Columns\space called without previous `Leftside` environment (or environment without content)}{\@ehc}}%
+ \reledpar@error{\string\Columns\space called without any preceding `Leftside` environment (or environment without content)}{\@ehc}}%
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1571,9 +1597,9 @@
% \end{macro}
% \end{macro}
% \begin{macro}{\ifcsboxvoid}
-% The \cs{ifcsboxvoid} is a complement to the \package{etoolbox} package.
-% The first argument is a box name, the second is a the \meta{true} value, the third the \meta{false} value.
-% If the first argument refers to a not existing box, or if it refers to a void box, the \meta{true} value is returned. In other case, the \meta{false} is returned.
+% The \cs{ifcsboxvoid} command comes on top of the \package{etoolbox} package.
+% The first argument is a box name, the second is the \meta{true} value, the third the \meta{false} value.
+% If the first argument refers to a non-existing box, or if it refers to a box that is void, the \meta{true} value is returned. otherwise, \meta{false} is returned.
% \begin{macrocode}
\newcommand*{\ifcsboxvoid}[1]{%
\ifcsname#1\endcsname%
@@ -1662,6 +1688,8 @@
\global\let\next@page@numR\relax
\global\let\sub@change\relax
\global\stopmsdata@inserted@true%
+ \global\let\@msdata@list\relax%
+ \global\csundef{@msdata@\add@msd@cR @dataR}%
\set@continuousnumberingforR%
\message{Section \the\section@numR R }%
\line@list@stuffR{\jobname.\extensionchars\the\section@numR R}%
@@ -1952,6 +1980,10 @@
\global\line@margin=\@l@dtempcntb%
\fi%
}
+\ifmovecolumnspositiononrightpage%
+ \linenummargin{inner}%
+ \linenummarginR{outer}%
+\fi%
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -3466,6 +3498,7 @@
% \begin{macrocode}
\endgroup%
\ignorespaces%
+ \@oldnobreak%
\dump@pstartL@pc%
\ifnumberpstart%
\addtocounter{pstartL}{1}%
@@ -3498,6 +3531,7 @@
\global\par@lineR=0%
\endgroup%
\ignorespaces%
+ \@oldnobreak%
\dump@pstartR@pc%
\ifnumberpstart%
\addtocounter{pstartR}{1}%
@@ -4706,6 +4740,7 @@
% the text.
% \begin{macro}{\sidenote@marginR}
% \begin{macro}{\sidenotemargin*}
+% \begin{macro}{\sidenotemarginR}
% \changes{v1.8.0}{2014/08/05}{\protect\cs{sidenotemargin} is now directly defined in \protect\package{eledmac} to be able to manage \protect\package{eledpar}.}
% \changes{v1.8.0}{2014/08/05}{Add \protect\cs{sidenotemargin*}}
% Specifies which margin sidenotes can be in.
@@ -4715,12 +4750,22 @@
\global\sidenote@marginR=\@l@dtempcntb
\global\sidenote@margin=\@l@dtempcntb
}
+\newcommand{\sidenotemarginR}[1]{%
+ \l@dgetsidenote@margin{#1}%
+ \global\sidenote@marginR=\@l@dtempcntb%
+}%
\newcount\sidenote@marginR
-\global\sidenote@margin=\@ne
+\global\sidenote@marginR=\@ne%
+
+\ifmovecolumnspositiononrightpage%
+ \sidenotemargin{inner}%
+ \sidenotemarginR{outer}%
+\fi%
% \end{macrocode}
% \end{macro}
% \end{macro}
+% \end{macro}
%
% \changes{v1.3.3}{2012/12/19}{Debugging the left notes of the right column.}
@@ -5362,15 +5407,9 @@
{}%
\hb@xt@ \hsize{%
\ifdefstring{\columns@position}{L}{}{\hfill }%
- \unhbox\l@dleftbox%
- \ifhbox\@eledsectionL%
- \usebox{\@eledsectionL}%
- \fi%
+ \print@leftcolumn%
\print@columnseparator%
- \unhbox\l@drightbox%
- \ifhbox\@eledsectionR%
- \usebox{\@eledsectionR}%
- \fi%
+ \print@rightcolumn%
\ifdefstring{\columns@position}{R}{}{\hfill}%
}%
\checkraw@text
@@ -5440,6 +5479,63 @@
}%
%\end{macrocode}
% \end{macro}
+% \begin{macro}{\print@leftcolumn}
+% \begin{macro}{\print@rightcolumn}
+% \cs{print@leftcolumn} and \cs{print@rightcolumn} print the line number of the left or right column respectively.
+% Normally, it is defined by the content of the \env{Leftside} or \env{Rightside} environments.
+% But if \cs{movecolumnspositiononrightpage} is set to TRUE, it also depends on the page number.
+% \begin{macrocode}
+\newcommand{\print@leftcolumn}{%
+ \if\page@num>\page@numR%
+ \@l@dtempcntb=\page@num%
+ \else%
+ \@l@dtempcntb=\page@numR%
+ \fi%
+ \ifboolexpr{%
+ not bool {movecolumnspositiononrightpage}%
+ or test {\ifnumodd{\@l@dtempcntb}}%
+ }%
+ {%
+ \unhbox\l@dleftbox%
+ \ifhbox\@eledsectionL%
+ \usebox{\@eledsectionL}%
+ \fi%
+ }%
+ {%
+ \unhbox\l@drightbox%
+ \ifhbox\@eledsectionR%
+ \usebox{\@eledsectionR}%
+ \fi%
+ }%
+}%
+
+
+\newcommand{\print@rightcolumn}{%
+ \if\page@num>\page@numR%
+ \@l@dtempcntb=\page@num%
+ \else%
+ \@l@dtempcntb=\page@numR%
+ \fi%
+ \ifboolexpr{%
+ not bool {movecolumnspositiononrightpage}%
+ or test {\ifnumodd{\@l@dtempcntb}}%
+ }%
+ {%
+ \unhbox\l@drightbox%
+ \ifhbox\@eledsectionR%
+ \usebox{\@eledsectionR}%
+ \fi%
+ }%
+ {%
+ \unhbox\l@dleftbox%
+ \ifhbox\@eledsectionL%
+ \usebox{\@eledsectionL}%
+ \fi%
+ }%
+}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
% \begin{macro}{\checkpb@columns}
% \protect\cs{checkpb@columns} prevent or make pagebreaking in columns, depending of the use of \protect\cs{ledpb} or \protect\cs{lednopb}.
% \begin{macrocode}