summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/eledmac/eledmac.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/eledmac/eledmac.dtx')
-rw-r--r--Master/texmf-dist/source/latex/eledmac/eledmac.dtx325
1 files changed, 256 insertions, 69 deletions
diff --git a/Master/texmf-dist/source/latex/eledmac/eledmac.dtx b/Master/texmf-dist/source/latex/eledmac/eledmac.dtx
index 92ece9ba6e0..ebbe1f397f7 100644
--- a/Master/texmf-dist/source/latex/eledmac/eledmac.dtx
+++ b/Master/texmf-dist/source/latex/eledmac/eledmac.dtx
@@ -51,7 +51,7 @@
%
% \fi
%
-% \CheckSum{9906}
+% \CheckSum{10051}
%
% \makeatletter
% \newcommand*{\DescribeIt}{\leavevmode\@bsphack\begingroup\MakePrivateLetters
@@ -202,6 +202,10 @@
% \changes{v1.11.1}{2014/05/29}{Correct a bug when a critical note starts with plus or minus.}
% \changes{v1.12.0}{2014/08/05}{Compatibility with \Lpack{musixtex}.}
% \changes{v1.12.0}{2014/08/05}{Debug eledmac sectioning command after using \cs{resumenumbering}.}
+% \changes{v1.12.3}{2014/08/15}{Underline lemma in \cs{eledxxx} when using draft mode.}
+% \changes{v1.12.3}{2014/08/15}{Correct bug with side and familiar notes in tabular environments.}
+% \changes{v1.12.3}{2014/08/15}{Debug left and side note (bugs added by 1.8.0)}
+% \changes{v1.12.3}{2014/08/15}{Debug \cs{eledxxx} with some paper size}
% \hyphenation{man-u-script man-u-scripts}
%
%
@@ -297,7 +301,7 @@
% \Lpack{poemscol} for poetical works.
%
% \Lpack{eledmac} provides many tools and options. Normally, they are all documented in this file.
-% However, to help people, a ``\href{examples/.}{examples}'' folder is provided, with example for some needs, but not for all.
+% Also provided is a help folder, ``\href{examples/.}{examples}''. The folder contains additional examples (although not for all cases)
%
% To report bugs, please go to ledmac's GitHub page and click ``New Issue'': \url{https://github.com/maieul/ledmac/issues/}. You must open an account with github.com to access my page (maieul/ledmac). GitHub accounts are free for open-source users. You can report bugs in English or in French (better).
%
@@ -683,9 +687,10 @@
% begins again.\par}
% \egend
%
-% \changes{v1.12.0}{2014/08/05}{Optional arguments for \cs{pstart} and \cs{pend}.}
+% \changes{v1.12.0}{2014/08/05}{Optional arguments for \cs{pstart} and \cs{pend}.}\label{pstart:optionalarg}
% Both \cs{pstart} and \cs{pend} can take a optional argument, in brackets.
% Its content will be printed before the beginning of the \cs{pstart} / after the end of the \cs{pend}.
+% If you need to start a \cs{pstart} by brackets, or to add brackets after a \cs{pend}, just add a \cs{\relax} between \cs{pstart}/\cs{pend} and the brackets.
%
% This feature is not needed for normal use of \Lpack{eledmac}, but it is needed when using verse (see~\ref{verse} p.~\pageref{verse}) or \Lpack{eledpar} (see~\ref{eledpar} p.~\pageref{eledpar}).
%
@@ -1389,7 +1394,7 @@
% \DescribeMacro{\parafootsep}
% For paragraphed footnotes (see below), you can chooce the separator between each note by \cs{parafootsep}\oarg{s}\marg{l}. A common separator is a double pipe (\verb+$||$+), which you can set by \cs{parafootsep}\verb+{$||$}+.
%
-% \changes{v1.12.0}{2014/08/05}{New options to ragg paragraphed notes.}
+% \changes{v1.12.0}{2014/08/05}{New options for ragged-paragraph notes}
% \DescribeMacro{\Xragged}
% Text in paragraphed critical notes is justified, but you can use \cs{Xragged}\oarg{s}+{L}+ if you want it to be ragged left, or \cs{Xragged}\oarg{s}+{R} if you want it to be ragged right.
@@ -1405,7 +1410,7 @@
% You can change the vertical space printed before the rule of the critical notes with \cs{beforeXnotes}\oarg{s}\marg{l}.
% The default value is \verb|1.2em plus .6em minus .6em|.
%
-% \textbf{Be careful, the standard \LaTeX\ footnote rule, which is used by \Lpack{eledmac}, decreases 3pt. These 3pt are not changed by this command.}
+% \textbf{Be careful, the standard \LaTeX\ footnote rule, which is used by \Lpack{eledmac}, decreases by 3pt. This 3pt decrease is not changed by this command..}
% \DescribeMacro{\beforenotesX}
%
% You can change the vertical space printed before the rule of the familiar notes with \cs{beforenotesX}\oarg{s}\marg{l}.
@@ -1952,6 +1957,7 @@
% puts \meta{text} in the outer margin.
%
% \changes{v1.12.0}{2014/08/05}{Add \cs{ledinnernote} and \cs{ledouternote} commands.}
+% \changes{v1.12.3}{2014/08/15}{Debug \cs{ledinnernote} and \cs{ledouternote} commands in the top of pages.}
% \DescribeMacro{\ledleftnote}
% \DescribeMacro{\ledrightnote}
% \changes{v1.0}{2012/09/15}{Possibility to have commands in sidenotes.}
@@ -2832,7 +2838,7 @@
% \begin{macrocode}
%<*code>
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{eledmac}[2014/08/07 v1.12.2 LaTeX port of EDMAC]%
+\ProvidesPackage{eledmac}[2014/08/15 v1.12.3 LaTeX port of EDMAC]%
% \end{macrocode}
%
% Generally, these are the modifications to the original.
@@ -2966,6 +2972,7 @@
% All the messages are grouped here as macros. This saves TeX's memory
% when the same message is repeated and also lets them be edited easily.
% \changes{v0.7}{2005/02/21}{Made macros of all messages}
+% \changes{v1.12.3}{2012/08/15}{Add macros for new messages since v0.7}
%
% \begin{macro}{\eledmac@warning}
% Write a warning message.
@@ -2977,6 +2984,7 @@
% \begin{macro}{\eledmac@error}
% Write an error message.
% \changes{v0.2}{2003/07/25}{Added \cs{eledmac@error} and replaced error messages}
+% \changes{v1.12.3}{2014/08/15}{Replaced error messages}
% \begin{macrocode}
\newcommand{\eledmac@error}[2]{\PackageError{eledmac}{#1}{#2}}
% \end{macrocode}
@@ -3142,7 +3150,66 @@
\eledmac@warning{Undefined index file #1}}
% \end{macrocode}
% \end{macro}
-%
+% \begin{macro}{\led@warn@AddfootinsXobsolete}
+% \begin{macro}{\led@warn@Addfootinsobsolete}
+% \begin{macrocode}
+\newcommand{\led@warn@AddfootinsXObsolete}{%
+ \eledmac@warning{AddfootinsX is obsolete in eledmac 1.0. Use newseries instead.}%
+}%
+\newcommand{\led@warn@AddfootinsObsolete}{%
+ \eledmac@warning{Addfootins is obsolete in eledmac 1.0. Use newseries instead.}%
+}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \begin{macro}{\led@warn@SeriesStillExist}
+% \begin{macrocode}
+\newcommand{\led@warn@SeriesStillExist}[1]{%
+ \eledmac@warning{Series #1 is still existing !}%
+}%
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\led@err@ManySidenotes}
+% \begin{macro}{\led@err@ManyLeftnotes}
+% \begin{macro}{\led@err@ManyRightnotes}
+% \begin{macrocode}
+\newcommand{\led@err@ManySidenotes}{%
+ \ifledRcol@%
+ \eledmac@warning{\itemcount@\space sidenotes on line \the\line@numR\space p. \the\page@numR}%
+ \else%
+ \eledmac@warning{\itemcount@\space sidenotes on line \the\line@num\space p. \the\page@num}%
+ \fi%
+}%
+\newcommand{\led@err@ManyLeftnotes}{%
+ \ifledRcol@%
+ \eledmac@warning{\itemcount@\space leftnotes on line \the\line@numR\space p. \the\page@numR}%
+ \else%
+ \eledmac@warning{\itemcount@\space leftnotes on line \the\line@num\space p. \the\page@num}%
+ \fi%
+}%
+\newcommand{\led@err@ManyRightnotes}{%
+ \ifledRcol@%
+ \eledmac@warning{\itemcount@\space rightnotes on line \the\line@numR\space p. \the\page@numR}%
+ \else%
+ \eledmac@warning{\itemcount@\space rightnotes on line \the\line@num\space p. \the\page@num}%
+ \fi%
+}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \begin{macro}{\led@war@FalseverseDeprecated}
+% \begin{macro}{\led@war@ledxxxDeprecated}
+% \begin{macrocode}
+\newcommand{\led@war@FalseverseDeprecated}{%
+ \eledmac@warning{\string\falseverse\space deprecated. Look at \string\newverse\space instead.}%
+}%
+\newcommand{\led@war@ledxxxDeprecated}[1]{%
+ \eledmac@warning{\string\led#1\space deprecated. Look at \string\e#1 instead.}%
+}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
% \begin{macro}{\led@err@TooManyColumns}
% \begin{macro}{\led@err@UnequalColumns}
% \begin{macro}{\led@err@LowStartColumn}
@@ -3167,6 +3234,20 @@
% \end{macro}
% \end{macro}
%
+% \begin{macro}{\led@err@EdtextWithoutFootnote}
+% \begin{macrocode}
+\newcommand{\led@err@EdtextWithoutFootnote}{%
+ \eledmac@error{edtext without Xfootnote. Check syntaxis.}{\@ehd}%
+}%
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\led@error@ImakeidxAfterEledmac}
+% \begin{macrocode}
+\newcommand{\led@error@ImakeidxAfterEledmac}{%
+ \eledmac@error{Imakeidx must be loaded before eledmac.}{\@ehd}%
+}%
+% \end{macrocode}
+% \end{macro}
%
%
% \section{Sectioning commands}
@@ -4847,6 +4928,8 @@
%
% \begin{macro}{\flag@start}
% \begin{macro}{\flag@end}
+% \changes{v1.12.3}{2014/08/15}{\cs{flag@start} and \cs{flag@end} are now defined only one time for eledmac and eledpar}
+% \changes{v1.12.3}{2014/08/15}{\cs{flag@start} send a error message when a \cs{edtext} is done without insert (note)}
% We enclose a lemma marked by \cs{edtext} in
% \cs{flag@start} and \cs{flag@end}: these send the \cs{@ref}
% command to the line-list file. \cs{edtext} is responsible for
@@ -4854,10 +4937,28 @@
% actually gets done by the various footnote macros.
% \begin{macrocode}
\newcommand*{\flag@start}{%
- \edef\next{\write\linenum@out{%
+ \ifledRcol%
+ \edef\next{\write\linenum@outR{%
+ \string\@ref[\the\insert@countR][}}%
+ \next%
+ \ifnum\insert@countR<1%
+ \led@err@EdtextWithoutFootnote%
+ \fi%
+ \else%
+ \edef\next{\write\linenum@out{%
\string\@ref[\the\insert@count][}}%
- \next}
-\newcommand*{\flag@end}{\write\linenum@out{]}}
+ \next%
+ \ifnum\insert@count<1%
+ \led@err@EdtextWithoutFootnote%
+ \fi%
+ \fi}%
+
+\newcommand*{\flag@end}{%
+ \ifledRcol%
+ \write\linenum@outR{]}%
+ \else%
+ \write\linenum@out{]}%
+ \fi}%
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -5145,13 +5246,19 @@
% \end{macro}
%
% \begin{macro}{\dummy@edtext}
-% LaTeX users are not used to delimited arguments, so I provide
+% \LaTeX\ users are not used to delimited arguments, so we provide
% a \cs{edtext} macro as well.
% \begin{macrocode}
\newcommand{\dummy@edtext}[2]{#1}
% \end{macrocode}
% \end{macro}
-%
+%
+% \begin{macro}{\dummy@edtext@showlemma}
+% Some time, we want to obtain only the first argument of \cs{edtext}, while also wrapping it in \cs{showlemma}. For example, when printing a \cs{eledsection}.
+% \begin{macrocode}
+\newcommand{\dummy@edtext@showlemma}[2]{\showlemma{#1}}%
+% \end{macrocode}
+% \end{macro}
%
% We're going to need another macro that takes one argument and ignores
% it entirely. This is supplied by the LaTeX \cs{@gobble}\marg{arg}.
@@ -5755,7 +5862,7 @@
% The \cs{do@line} macro is called by \cs{pend} to
% do all the processing for a single line of text.
% \changes{v1.6.1}{2013/10/27}{Move the call to \cs{inserthangingsymbol} to allow use \cs{hfill} inside.}
-% \changes{v1.12.2}{2014/08/07}{Fix a bug with critical notes a the begining of a page, added by v12.0.0.}
+% \changes{v1.12.2}{2014/08/07}{Fix a bug with critical notes at the tops of pages (added by v12.0.0)}
% \begin{macrocode}
\newcommand*{\l@dunhbox@line}[1]{\unhbox #1}
\newcommand*{\do@line}{%
@@ -5775,7 +5882,7 @@
\check@pb@in@verse
\affixline@num
% \end{macrocode}
-% \changes{v1.12.0}{2014/08/05}{\cs{do@line} is splitted in more little commands.}
+% \changes{v1.12.0}{2014/08/05}{\cs{do@line} is split in more little commands.}
% Depending wether a sectioning command is called at this pstart or not
% we print sectioning command or normal line,
% \begin{macrocode}
@@ -5805,7 +5912,7 @@
% \begin{macro}{\print@eledsection}
% \cs{print@eledsection} to print sectioning command with line number.
% It sets the correct spacing, depending whether a sectioning command was called at previous \cs{pstart}, calls the sectioning command, prints the normal line outside of the paper, to be able to have critical footnotes.
-% Because of this printing, a vertical spacing correction is added.
+% Because of how this prints, a vertical spacing correction is added.
% \begin{macrocode}
\def\print@eledsection{%
\add@inserts\affixside@note%
@@ -5816,10 +5923,10 @@
\@eled@sectioningfalse%
\global\csundef{eled@sectioning@\the\l@dnumpstartsL}%
\if@RTL%
- \hspace{-\paperwidth}%
+ \hspace{-3\paperwidth}%
{\hbox{\l@dunhbox@line{\one@line}}\new@line}%
\else%
- \hspace{\paperwidth}%
+ \hspace{3\paperwidth}%
{\new@line \hbox{\l@dunhbox@line{\one@line}}}%
\fi%
\vskip-\baselineskip%
@@ -8755,7 +8862,7 @@
% Juste for backward compatibility: print a warning message.
% \begin{macrocode}
\newcommand*{\addfootinsX}[1]{%
- \eledmac@warning{AddfootinsX is obsolete in eledmac 1.0. Use newseries instead.}%
+ \led@warn@AddfootinsXObsolete%
\footnormalX{#1}%
\g@addto@macro{\doxtrafeeti}{%
\setbox\@outputbox \vbox{%
@@ -8993,7 +9100,7 @@
% \end{macrocode}
% \subsection{Test if series is still existing}
% \begin{macrocode}
- \xifinlist{#1}{\@series}{\eledmac@warning{Series #1 is still existing !}}
+ \xifinlist{#1}{\@series}{\led@warn@SeriesStillExist{#1}}%
{%
% \end{macrocode}
% \subsection{Create all commands to memorize display options}
@@ -9236,7 +9343,7 @@
% \end{macrocode}
% \end{macro}
% \begin{macro}{\newhookcommand@series}
-% \cs{newhookcommand@series}\cs{command names} is a generic command to add new commands for new commands hook, like \cs{hsizetwocol}.
+% \cs{newhookcommand@series}\cs{command names} is a generic command to add new commands for hooks, like \cs{hsizetwocol}.
% \begin{macrocode}
\newcommand{\newhookcommand@series}[1]{%
\global\expandafter\newcommand\expandafter*\csname #1\endcsname[2][]{\csuse{setcommand@series}{##1}{#1}{##2}}%
@@ -9312,11 +9419,11 @@
% \end{macrocode}
% \end{macro}
% \begin{macro}{\newhookcommand@series@reload}
-% \changes{v1.8.0}{2013/11/24}{Debug \cs{beforenotesX} and \cs{maxhnotesX} which did'nt work.}
-% \changes{v1.12.0}{2014/08/05}{Debug \cs{beforenotesX} and \cs{maxhnotesX} which did'nt work when called after \cs{footparagraphX}.}
-% \changes{v1.12.0}{2014/08/05}{Debug \cs{beforeXnotes} and \cs{maxhXnotes} which did'nt work when called after \cs{footparagraph}.}
+% \changes{v1.8.0}{2013/11/24}{Debug \cs{beforenotesX} and \cs{maxhnotesX} which didn't work.}
+% \changes{v1.12.0}{2014/08/05}{Debug \cs{beforenotesX} and \cs{maxhnotesX} which didn't work when called after \cs{footparagraphX}.}
+% \changes{v1.12.0}{2014/08/05}{Debug \cs{beforeXnotes} and \cs{maxhXnotes} which didn't work when called after \cs{footparagraph}.}
% \cs{newhookcommand@series@reload} does the same thing as \cs{newhookcommand@series}
-% but the commands created by this macro also reload the series displaying (normal, paragraph, twocol)
+% but the commands created by this macro also reload the series displaying (normal, paragraph, twocol, threecol).
% \begin{macrocode}
\newcommand{\newhookcommand@series@reload}[1]{%
\global\expandafter\newcommand\expandafter*\csname #1\endcsname[2][]{%
@@ -9795,7 +9902,7 @@
% \cs{addfootins} is for backward compatibility, but should'nt be used anymore.
% \begin{macrocode}
\newcommand*{\addfootins}[1]{%
- \eledmac@warning{addfootins is deprecated, use newseries instead}
+ \led@warn@AddfootinsObsolete%
\footnormal{#1}
\g@addto@macro{\@opxtrafeetii}{%
\ifvoid\@nameuse{#1footins}\else
@@ -9976,8 +10083,6 @@
\advancelabel@refs
\fi
\fi
-% \edef\next{\write\@aux{\string\l@dmake@labels\label@refs|{#1}}}%
-% \next}
% \end{macrocode}
% Use code from the kernel \cs{label} command to write the correct
% page number (it seems possible that the original \edmac's \cs{page@num}
@@ -10077,7 +10182,7 @@
% \end{macro}
% \begin{macro}{\wrap@edcrossref}
% \changes{v1.12.1}{2014/08/06}{Fix spurious spaces.}
-% \cs{wrap@edcrossref} is called around all eledmac crossref command, except those which start by x. It adds the hyperlink.
+% \cs{wrap@edcrossref} is called around all eledmac crossref commands, except those which start with x. It adds the hyperlink.
% \begin{macrocode}
\newcommand{\wrap@edcrossref}[2]{%
\ifdef{\hyperlink}%
@@ -10395,7 +10500,7 @@
\newcommand*{\ledrightnote}[1]{\edtext{}{\l@drsnote{#1}}}
\newcommand*{\ledinnernote}[1]{%
- \ifodd\page@num%
+ \ifodd\c@page% Do not use \page@num, because not yet calculated when command is called
\ledleftnote{#1}%
\else%
\ledrightnote{#1}%
@@ -10403,7 +10508,7 @@
}
\newcommand*{\ledouternote}[1]{%
- \ifodd\page@num%
+ \ifodd\c@page% Do not use \page@num, because not yet calculated when command is called
\ledrightnote{#1}%
\else%
\ledleftnote{#1}%
@@ -10590,22 +10695,23 @@
% \begin{macrocode}
\newcommand*{\affixside@note}{%
\def\sidenotecontent@{}%
- \numdef{\itemcount@}{0}%
+ \numgdef{\itemcount@}{0}%
\def\do##1{%
\ifnumequal{\itemcount@}{0}%
{%
\appto\sidenotecontent@{##1}}% Not print not separator before the 1st note
{\appto\sidenotecontent@{\sidenotesep ##1}%
}%
- \numdef{\itemcount@}{\itemcount@+1}%
+ \numgdef{\itemcount@}{\itemcount@+1}%
}%
\dolistloop{\l@dcsnotetext}%
- \ifnumgreater{\itemcount@}{1}{\eledmac@warning{\itemcount@\space sidenotes on line \the\line@num\space p. \the\page@num,}}{}%
+ \ifnumgreater{\itemcount@}{1}{\led@err@ManySidenotes}{}%
% \end{macrocode}
% And we do the same for left and right notes (not movable).
% \begin{macrocode}
\gdef\@templ@d{}%
- \ifx\@templ@d\l@dcsnotetext \else%
+ \gdef\@templ@n{\l@dcsnotetext\l@dcsnotetext@l\l@dcsnotetext@r}%
+ \ifx\@templ@d\@templ@n \else%
\if@twocolumn%
\if@firstcolumn%
\setl@dlp@rbox{##1}{\sidenotecontent@}%
@@ -10620,16 +10726,16 @@
\ifodd\@l@dtempcntb%
\setl@drp@rbox{\sidenotecontent@}%
\gdef\sidenotecontent@{}%
- \numdef{\itemcount@}{0}%
+ \numgdef{\itemcount@}{0}%
\dolistloop{\l@dcsnotetext@l}%
- \ifnumgreater{\itemcount@}{1}{\eledmac@warning{\itemcount@\space leftnotes on line \the\line@num\space p. \the\page@num,}}{}%
+ \ifnumgreater{\itemcount@}{1}{\led@err@ManyLeftnotes}{}%
\setl@dlp@rbox{\sidenotecontent@}%
\else%
\setl@dlp@rbox{\sidenotecontent@}%
\gdef\sidenotecontent@{}%
- \numdef{\itemcount@}{0}%
+ \numgdef{\itemcount@}{0}%
\dolistloop{\l@dcsnotetext@r}%
- \ifnumgreater{\itemcount@}{1}{\eledmac@warning{\itemcount@\space rightnotes on line \the\line@num\space p. \the\page@num,}}{}%
+ \ifnumgreater{\itemcount@}{1}{\led@err@ManyRightnotes}{}%
\setl@drp@rbox{\sidenotecontent@}%
\fi%
\fi%
@@ -10901,7 +11007,7 @@
\@ifpackageloaded{imakeidx}{\eledmac@after@imakeidx@true}{}
\AtBeginDocument{%
\ifeledmac@after@imakeidx@\else%
- \@ifpackageloaded{imakeidx}{\eledmac@error{Imakeidx must be loaded before eledmac.}}{}%
+ \@ifpackageloaded{imakeidx}{\led@error@ImakeidxAfterEledmac}{}%
\fi
}
% \end{macrocode}
@@ -11263,7 +11369,8 @@
\begingroup
\expandafter\let\csname\@currenvir\endcsname\l@dcollect@@body
\edef\processl@denvbody{\expandafter\noexpand\csname\@currenvir\endcsname}%
- \processl@denvbody}
+ \processl@denvbody%
+ }%
% \end{macrocode}
% \end{macro}
@@ -11614,7 +11721,7 @@
\expandafter\noexpand\csname szp@0@\endcsname=\z@
\let\noexpand\sza@penalty\relax\noexpand\fi%
\def\noexpand\falseverse{%
- \noexpand\eledmac@warning{\string\falseverse\space deprecated. Look at \string\newverse\space instead.}
+ \noexpand\led@war@FalseverseDeprecated%
\global\advance\stanza@modulo-\@ne%
\global\advance\stanza@count-\@ne%
\relax\noexpand&\leavevmode\skipnumbering}
@@ -11732,7 +11839,65 @@
% \end{macrocode}
% \end{macro}
-%
+% \begin{macro}{\disable@familiarnotes}
+% \begin{macro}{\restore@familiarnotes}
+% Macros to disable and restore familiar notes, to prevent them from printing multiple times in edtabularx and edarrayx environments.
+% \begin{macrocode}
+\newcommand{\disable@familiarnotes}{%
+ \def\do##1{%
+ \csletcs{footnote@@##1}{footnote##1}%
+ \expandafter\renewcommand \csname footnote##1\endcsname[1]{%
+ \protected@csxdef{@thefnmark##1}{\csuse{thefootnote##1}}%
+ \csuse{@footnotemark##1}%
+ }%
+ }%
+ \dolistloop{\@series}%
+}%
+\newcommand{\restore@familiarnotes}{%
+ \def\do##1{%
+ \csletcs{footnote##1}{footnote@@##1}%
+ }%
+ \dolistloop{\@series}%
+}%
+
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \begin{macro}{\disable@sidenotes}
+% \begin{macro}{\restore@sidenotes}
+% The sames, for side notes.
+% \begin{macrocode}
+\newcommand{\disable@sidenotes}{%
+ \let\@@ledrightnote\ledrightnote%
+ \let\@@ledleftnote\ledleftnote%
+ \let\@@ledsidenote\ledsidenote%
+ \let\ledrightnote\@gobble%
+ \let\ledleftnote\@gobble%
+ \let\ledsidenote\@gobble%
+}%
+\newcommand{\restore@sidenotes}{%
+ \let\ledrightnote\@@ledrightnote%
+ \let\ledleftnote\@@ledleftnote%
+ \let\ledsidenote\@@ledsidenote%
+}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \begin{macro}{\disable@notes}
+% \begin{macro}{\restore@notes}
+% Disable/restore side and familiar notes.
+% \begin{macrocode}
+\newcommand{\disable@notes}{%
+ \disable@sidenotes%
+ \disable@familiarnotes%
+}%
+\newcommand{\restore@notes}{%
+ \restore@sidenotes%
+ \restore@familiarnotes%
+}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
% \begin{macro}{\l@dampcount}
% \begin{macro}{\l@dcolcount}
% |\l@dampcount| is a counter for the \& column dividers and
@@ -12155,7 +12320,7 @@
% Typeset (recursively) cells of display math right justified. (was |\rverteilen|)
% \begin{macrocode}
\def\setmcellright #1&{\def\edlabel##1{}%
- \let\edindex\nulledindex
+ \let\edindex\nulledindex
\ifx #1\\ \ifnum\l@dcolcount=0%\removelastskip
\let\Next\relax%
\else\l@dcolcount=0%
@@ -12164,7 +12329,9 @@
\else%
\disablel@dtabfeet%
\stepl@dcolcount%
+ \disable@notes%
\setbox\hilfsbox=\hbox{$\displaystyle{#1}$}%
+ \restore@notes%
\letsforverteilen%
\hskip\hilfsskip$\displaystyle{#1}$%
\hskip\edtabcolsep%
@@ -12178,7 +12345,7 @@
% Typeset (recursively) cells of text right justified. (was |\rverteilentext|)
% \begin{macrocode}
\def\settcellright #1&{\def\edlabel##1{}%
- \let\edindex\nulledindex
+ \let\edindex\nulledindex
\ifx #1\\ \ifnum\l@dcolcount=0%\removelastskip
\let\Next\relax%
\else\l@dcolcount=0%
@@ -12187,7 +12354,9 @@
\else%
\disablel@dtabfeet%
\stepl@dcolcount%
+ \disable@notes%
\setbox\hilfsbox=\hbox{#1}%
+ \restore@notes%
\letsforverteilen%
\hskip\hilfsskip#1%
\hskip\edtabcolsep%
@@ -12200,15 +12369,17 @@
% Typeset (recursively) cells of display math left justified. (was |\lverteilen|)
% \begin{macrocode}
\def\setmcellleft #1&{\def\edlabel##1{}%
- \let\edindex\nulledindex
+ \let\edindex\nulledindex
\ifx #1\\ \ifnum\l@dcolcount=0 \let\Next\relax%
\else\l@dcolcount=0%
\let\Next=\setmcellleft%
\fi%
\else \disablel@dtabfeet%
\stepl@dcolcount%
+ \disable@notes%
\setbox\hilfsbox=\hbox{$\displaystyle{#1}$}%
- \letsforverteilen
+ \restore@notes%
+ \letsforverteilen%
$\displaystyle{#1}$\hskip\hilfsskip\hskip\edtabcolsep%
\let\Next=\setmcellleft%
\fi\Next}
@@ -12220,15 +12391,17 @@
% Typeset (recursively) cells of text left justified. (was |\lverteilentext|)
% \begin{macrocode}
\def\settcellleft #1&{\def\edlabel##1{}%
- \let\edindex\nulledindex
+ \let\edindex\nulledindex
\ifx #1\\ \ifnum\l@dcolcount=0 \let\Next\relax%
\else\l@dcolcount=0%
\let\Next=\settcellleft%
\fi%
\else \disablel@dtabfeet%
\stepl@dcolcount%
+ \disable@notes%
\setbox\hilfsbox=\hbox{#1}%
- \letsforverteilen
+ \restore@notes%
+ \letsforverteilen%
#1\hskip\hilfsskip\hskip\edtabcolsep%
\let\Next=\settcellleft%
\fi\Next}
@@ -12239,14 +12412,16 @@
% Typeset (recursively) cells of display math centered. (was |\zverteilen|)
% \begin{macrocode}
\def\setmcellcenter #1&{\def\edlabel##1{}%
- \let\edindex\nulledindex
+ \let\edindex\nulledindex
\ifx #1\\ \ifnum\l@dcolcount=0\let\Next\relax%
\else\l@dcolcount=0%
\let\Next=\setmcellcenter%
\fi%
\else \disablel@dtabfeet%
\stepl@dcolcount%
+ \disable@notes%
\setbox\hilfsbox=\hbox{$\displaystyle{#1}$}%
+ \restore@notes%
\letsforverteilen%
\hskip 0.5\hilfsskip$\displaystyle{#1}$\hskip0.5\hilfsskip%
\hskip\edtabcolsep%
@@ -12260,14 +12435,16 @@
% Typeset (recursively) cells of text centered. (new)
% \begin{macrocode}
\def\settcellcenter #1&{\def\edlabel##1{}%
- \let\edindex\nulledindex
+ \let\edindex\nulledindex
\ifx #1\\ \ifnum\l@dcolcount=0 \let\Next\relax%
\else\l@dcolcount=0%
\let\Next=\settcellcenter%
\fi%
\else \disablel@dtabfeet%
\stepl@dcolcount%
+ \disable@notes%
\setbox\hilfsbox=\hbox{#1}%
+ \restore@notes%
\letsforverteilen%
\hskip 0.5\hilfsskip #1\hskip 0.5\hilfsskip%
\hskip\edtabcolsep%
@@ -12511,7 +12688,6 @@
\ifnum #1>#2\relax
\l@dstartendokfalse
\led@err@ReverseColumns
-%%% \eledmac@error{Start column is greater than end column}{\@ehc}%
\fi
}
@@ -12701,11 +12877,13 @@
% |\measuretbody|\marg{body} measures the tabular \meta{body}.
% \begin{macrocode}
\newcommand{\measuretbody}[1]{%
+ \disable@notes%
\disablel@dtabfeet%
\l@dcolcount=0%
\nullsetzen%
\l@dcolcount=0
\measuretrow #1\\&\\%
+ \restore@notes%
\global\l@dampcount=1}
% \end{macrocode}
@@ -13028,42 +13206,48 @@
% If he did, he should redefine \cs{initnumbering@sectcmd}.
% \begin{macrocode}
\newcommand{\initnumbering@sectcmd}{
- \newcommand{\ledsection}[2][]{\eledmac@warning{\string\ledsection\space deprecated}%
+ \newcommand{\ledsection}[2][]{%
+ \led@war@ledxxxDeprecated{section}%
\leavevmode\pend\vspace{3.5ex \@plus 1ex \@minus .2ex}\ifl@dpairing\else\skipnumbering\fi%%
\pstart%
\leavevmode\ifledsecnolinenumber\skipnumbering\fi\section[##1]{##2}\leavevmode\vspace{2.3ex \@plus.2ex}\skipnumbering\pend%
\vspace{-2\parskip}\vspace{-2\baselineskip}%
\ifautopar\else\pstart\fi
}
- \WithSuffix\newcommand\ledsection*[1]{\eledmac@warning{\string\ledsection*\space deprecated}%
+ \WithSuffix\newcommand\ledsection*[1]{%
+ \led@war@ledxxxDeprecated{section*}%
\leavevmode\pend\vspace{3.5ex \@plus 1ex \@minus .2ex}\ifl@dpairing\else\skipnumbering\fi%
\pstart%
\leavevmode\ifledsecnolinenumber\skipnumbering\fi\section*{##1}\leavevmode\vspace{2.3ex \@plus.2ex}\skipnumbering\pend%
\vspace{-2\parskip}\vspace{-2\baselineskip}%
\ifautopar\else\pstart\fi
}
- \newcommand{\ledsubsection}[2][]{\eledmac@warning{\string\ledsubsection*\space deprecated}%
+ \newcommand{\ledsubsection}[2][]{%
+ \led@war@ledxxxDeprecated{subsection}%
\leavevmode\pend\vspace{3.5ex \@plus 1ex \@minus .2ex}\ifl@dpairing\else\skipnumbering\fi%
\pstart%
\leavevmode\ifledsecnolinenumber\skipnumbering\fi\subsection[##1]{##2}\leavevmode\vspace{1.5ex \@plus .2ex}\skipnumbering\pend%
\vspace{-2\parskip}\vspace{-2\baselineskip}%
\ifautopar\else\pstart\fi
}
- \WithSuffix\newcommand\ledsubsection*[1]{\eledmac@warning{\string\ledsubsection*\space deprecated}%
+ \WithSuffix\newcommand\ledsubsection*[1]{%
+ \led@war@ledxxxDeprecated{subsection*}%
\leavevmode\pend\vspace{3.5ex \@plus 1ex \@minus .2ex}\ifl@dpairing\else\skipnumbering\fi%
\pstart%
\leavevmode\ifledsecnolinenumber\skipnumbering\fi\subsection*{##1}\leavevmode\vspace{1.5ex \@plus .2ex}\skipnumbering\pend%
\vspace{-2\parskip}\vspace{-2\baselineskip}%
\ifautopar\else\pstart\fi
}
- \newcommand{\ledsubsubsection}[2][]{\eledmac@warning{\string\ledsubsubsection*\space deprecated}%
+ \newcommand{\ledsubsubsection}[2][]{%
+ \led@war@ledxxxDeprecated{subsubsection}%
\leavevmode\pend\vspace{3.5ex \@plus 1ex \@minus .2ex}\ifl@dpairing\else\skipnumbering\fi%
\pstart%
\leavevmode\ifledsecnolinenumber\skipnumbering\fi\subsubsection[##1]{##2}\leavevmode\vspace{1.5ex \@plus .2ex}\skipnumbering\pend%
\vspace{-2\parskip}\vspace{-2\baselineskip}%
\ifautopar\else\pstart\fi
}
- \WithSuffix\newcommand\ledsubsubsection*[1]{\eledmac@warning{\string\ledsubsubsection*\space deprecated}%
+ \WithSuffix\newcommand\ledsubsubsection*[1]{%
+ \led@war@ledxxxDeprecated{subsubsection*}%
\leavevmode\pend\vspace{3.5ex \@plus 1ex \@minus .2ex}\ifl@dpairing\else\skipnumbering\fi%
\pstart%
\leavevmode\ifledsecnolinenumber\skipnumbering\fi\subsubsection*{##1}\leavevmode\vspace{1.5ex \@plus .2ex}\skipnumbering\pend%
@@ -13071,7 +13255,7 @@
\ifautopar\else\pstart\fi
}
\newcommand\ledchapter[2][]{%
- \eledmac@warning{\string\ledchapter\space deprecated}%
+ \led@war@ledxxxDeprecated{chapter}%
\ifl@dmemoir%
\gdef\ch@pt@c{##1}%
\fi%
@@ -13080,7 +13264,7 @@
\@patchforledchapter\chapter[##1]{##2}%
\pend\pstart}
\WithSuffix\newcommand\ledchapter*[1]{%
- \eledmac@warning{\string\ledchapter*\space deprecated}%
+ \led@war@ledxxxDeprecated{chapter*}%
~\pend\skipnumbering%
\pstart%
\@patchforledchapter\chapter*{##1}\pend%
@@ -13284,7 +13468,7 @@
\pretocmd{\M@sect}
{\let\old@edtext=\edtext%
- \let\edtext=\dummy@edtext%
+ \let\edtext=\dummy@edtext@showlemma%
}
{}
{}
@@ -13312,7 +13496,7 @@
\pretocmd{\@mem@old@ssect}
{\let\old@edtext=\edtext%
- \let\edtext=\dummy@edtext%
+ \let\edtext=\dummy@edtext@showlemma%
}
{}
{}
@@ -13340,7 +13524,7 @@
\patchcmd{\chapter}{\if@openright\cleardoublepage\else\clearpage\fi}{%
\if@eled@sectioning\else%
- \leavevmode\if@openright\cleardoublepage\else\clearpage\fi%No clearpage inside a \eledsection : will make the critical notes not in the same page than title.
+ \leavevmode\if@openright\cleardoublepage\else\clearpage\fi%No clearpage inside a \eledsection : will keep critical notes from printing on the title page.
\fi%
}%
{}%
@@ -13375,7 +13559,7 @@
\pretocmd{\@sect}
{\let\old@edtext=\edtext
- \let\edtext=\dummy@edtext%
+ \let\edtext=\dummy@edtext@showlemma%
}
{}
{}
@@ -13403,7 +13587,7 @@
\pretocmd{\@ssect}
{\let\old@edtext=\edtext%
- \let\edtext=\dummy@edtext%
+ \let\edtext=\dummy@edtext@showlemma%
}
{}
{}
@@ -13585,18 +13769,18 @@
{%
\ifstrempty{#1}%
{%
- \global\csdef{eled@sectioning@#3#5}{\let\edtext=\dummy@edtext\chapter{#2}}%
+ \global\csdef{eled@sectioning@#3#5}{\let\edtext=\dummy@edtext@showlemma\chapter{#2}}%
\global\csdef{eled@sectmark@#3#5}{\let\edtext=\dummy@edtext{}\chaptermark{#2}}%
}%Need for \pairs, because of using parbox.
{%
- \global\csdef{eled@sectioning@#3#5}{\let\edtext=\dummy@edtext\chapter[#1]{#2}}%
+ \global\csdef{eled@sectioning@#3#5}{\let\edtext=\dummy@edtext@showlemma\chapter[#1]{#2}}%
\global\csdef{eled@sectmark@#3#5}{\let\edtext=\dummy@edtext{}\chaptermark{#2}}%Need for \pairs, because of using parbox.
}%
}%
{%
\ifstrempty{#1}%
- {\global\csdef{eled@sectioning@#3#5}{\let\edtext=\dummy@edtext\chapter*{#2}}}
- {\global\csdef{eled@sectioning@#3#5}{\let\edtext=\dummy@edtext\chapter*[#1]{#2}}}%Bug in LaTeX!
+ {\global\csdef{eled@sectioning@#3#5}{\let\edtext=\dummy@edtext@showlemma\chapter*{#2}}}%
+ {\global\csdef{eled@sectioning@#3#5}{\let\edtext=\dummy@edtext@showlemma\chapter*[#1]{#2}}}%Bug in LaTeX!
}%
\listcsgadd{eled@sections#5@@}{#3}%
}
@@ -13810,7 +13994,7 @@
% \subsection{Migration to eledmac 1.5.1}\label{change151}
% The version 1.5.1 corrects a bug with \verb+stanzaindentsrepetition+ (cf. p.~\pageref{stanzaindentsrepetition}). This bug had two consequences:
% \begin{enumerate}
-% \item \verb+stanzaindentsrepetition+ did'nt work when its value was greater than 2.
+% \item \verb+stanzaindentsrepetition+ didn't work when its value was greater than 2.
% \item \verb+stanzaindentsrepetition+ worked wrong when its value was equal to 2.
% \end{enumerate}
%
@@ -13840,6 +14024,9 @@
% \item If you have modified \cs{l@reg}, which is not advisable, you must rename it to \cs{@nl@reg}.
% \end{itemize}
%
+% Anyway, there is another problem. If you have text in brackets just after \cs{pstart} or \cs{pend}, the text will be considered an optional argument of \cs{pstart} or \cs{pend} (see \ref{pstart:optionalarg}, p.~\pageref{pstart:optionalarg}).
+% In this case, just add a \cs{\relax} between \cs{pstart}/\cs{pend} and the brackets.
+
% The version 1.12.0 adds new best way to manage section title inside numbered text. Please read ยง~\ref{eledsection} (p.~\pageref{eledsection}).
% \clearpage
% \bibliographystyle{alpha}