summaryrefslogtreecommitdiff
path: root/Master
diff options
context:
space:
mode:
Diffstat (limited to 'Master')
-rw-r--r--Master/texmf-dist/doc/latex/eledmac/eledmac.pdfbin853967 -> 861005 bytes
-rw-r--r--Master/texmf-dist/doc/latex/eledmac/eledpar.pdfbin472411 -> 472564 bytes
-rw-r--r--Master/texmf-dist/source/latex/eledmac/eledmac.dtx201
-rw-r--r--Master/texmf-dist/source/latex/eledmac/eledpar.dtx24
-rw-r--r--Master/texmf-dist/tex/latex/eledmac/eledmac.sty104
-rw-r--r--Master/texmf-dist/tex/latex/eledmac/eledpar.sty8
6 files changed, 269 insertions, 68 deletions
diff --git a/Master/texmf-dist/doc/latex/eledmac/eledmac.pdf b/Master/texmf-dist/doc/latex/eledmac/eledmac.pdf
index 10393660ac1..cd416337fec 100644
--- a/Master/texmf-dist/doc/latex/eledmac/eledmac.pdf
+++ b/Master/texmf-dist/doc/latex/eledmac/eledmac.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/eledmac/eledpar.pdf b/Master/texmf-dist/doc/latex/eledmac/eledpar.pdf
index 69b5c4fcc47..bae2aced207 100644
--- a/Master/texmf-dist/doc/latex/eledmac/eledpar.pdf
+++ b/Master/texmf-dist/doc/latex/eledmac/eledpar.pdf
Binary files differ
diff --git a/Master/texmf-dist/source/latex/eledmac/eledmac.dtx b/Master/texmf-dist/source/latex/eledmac/eledmac.dtx
index 7729c61ce78..2132ec053d2 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{8217}
+% \CheckSum{8406}
%
% \makeatletter
% \newcommand*{\DescribeIt}{\leavevmode\@bsphack\begingroup\MakePrivateLetters
@@ -121,8 +121,8 @@
% ^^A To put the changes in the right order : see http://tex.stackexchange.com/a/74113/7712
%\makeatletter
% \let\org@changes@\changes@
-% \def\my@changes v#1.#2#3\@nil{%
-% \org@changes@{v#1.\six@digits{#2}#3=v#1.#2#3}%
+% \def\my@changes v#1.#2.#3\@nil{%
+% \org@changes@{v#1.\six@digits{#2}.#3=v#1.#2.#3}%
% }%
% \newcommand*{\six@digits}[1]{%
% \ifnum#1<100000 0\fi
@@ -132,7 +132,7 @@
% \two@digits{#1}%
% }%
% \renewcommand*{\changes@}[1]{%
-% \my@changes#1\@nil
+% \my@changes#1.\@nil
% }%
%\makeatother
% \changes{v0.1}{2003/03/25}{First public release}
@@ -175,7 +175,7 @@
% \changes{v1.4.4}{2013/02/18}{Label inside familiar footnotes.}
% \changes{v1.4.5}{2013/03/02}{Bug with komasscript + eledpar + chapter.}
% \changes{v1.4.6}{2013/04/15}{Bug with memoir class introduced by 1.4.5.}
-% \changes{v1.4.8}{2013/07/02}{Correct a bug whith parallel texts introduced by 1.1}
+% \changes{v1.4.8}{2013/07/02}{Correct a bug with parallel texts introduced by 1.1.}
% \hyphenation{man-u-script man-u-scripts}
%
% \newcommand{\Lpack}[1]{\textsf{#1}}
@@ -1243,7 +1243,7 @@
% With \cs{afternumberinfootnote}\oarg{s}\marg{l} you can add some space after the line number in a footnote. If the line number is not printed, the space is not either. The default value is 0.5~em.
%
%\DescribeMacro{\nonbreakableafternumber}\changes{v1.4.3}{2012/12/18}{Add \cs{nonbreakableafternumber}.}
-%By default, the space defined by \cs{afternumberinfootnote} is breakeable. With \cs{afternumberinfootnote}\oarg{s} it becomes non breakable. Use \cs{afternumberinfootnote}\oarg{s}\oarg{false} to cancel it (\verb|<s>| can be empty if you want to disable it for every series).
+%By default, the space defined by \cs{afternumberinfootnote} is breakable. With \cs{afternumberinfootnote}\oarg{s} it becomes non breakable. Use \cs{afternumberinfootnote}\oarg{s}\oarg{false} to cancel it (\verb|<s>| can be empty if you want to disable it for every series).
%
% \DescribeMacro{\beforesymlinenum}
% With \cs{beforesymlinenum}\oarg{s}\marg{l} you can add some space before the line symbol in a footnote. The default value is value set by \cs{beforenumberinfootnote}.
@@ -1570,7 +1570,7 @@
%\setstanzaindents{0,1,0,1,0,1,0,1,0,1,0}
% \end{verbatim}
%
-%If you don't use the \verb+stanzaindentsrepetition+ counter,make sure you have at least one more numerical
+%If you don't use the \verb+stanzaindentsrepetition+ counter, make sure you have at least one more numerical
% entry in \verb+\setstanzavalues+ than the number of lines in the stanza.
% The macros make no restriction on the number of lines in a stanza.
% Stanza indentation values (and penalty values) obey \TeX's grouping
@@ -1870,8 +1870,8 @@
%
% \DescribeMacro{\rightnoteupfalse}
% \DescribeMacro{\leftnoteupfalse}
-% By defaut, left and right sidenotes have their \emph{end} at the line they are called.
-% If you want they to have their \emph{start} at the line they are called, use \cs{leftnoteupfalse} (for left note) and/or \cs{rightnoteupfalse} (for right note).
+% By default, Sidenotes are placed to align with the last line of the note to which it refers.
+% If you want they to be placed to align with the first line of the note to which it refers, use \cs{leftnoteupfalse} (for left note) and/or \cs{rightnoteupfalse} (for right note).
%
% \DescribeMacro{\ledlsnotesep}
% \DescribeMacro{\ledrsnotesep}
@@ -1962,11 +1962,19 @@
% that \meta{item} and the current page \& linenumber should be added to
% the raw index file.
%
-% If the \Lclass{memoir} class is used then the macro takes an optional
+% If the \Lclass{memoir} class or the \Lpack{imakeidx} package is used then the macro takes an optional
% argument, which is the name of a raw index file. For example
% |\edindex[line]{item}| will use |line.idx| as the raw file instead of
% |\jobname.idx|.
%
+% The minimal version of \Lpack{imakeidx} package to be used is the version 1.3a uploaded on CTAN on 2013/07/11.
+%
+% Be careful with the order of package loading and index declaration. You must use this order:
+% \begin{enumerate}
+% \item Load \Lpack{imakeidx}.
+% \item Load \Lpack{eledmac}.
+% \item Declare the index with the macro \cs{makeindex} of \Lpack{imakeidx}.
+% \end{enumerate}
% \DescribeMacro{\pagelinesep}
% The page \& linenumber combination is written as |page\pagelinesep line|,
% where the default definition is |\newcommand{\pagelinesep}{-}| so that
@@ -2423,6 +2431,9 @@
% changes many LaTeX internals and \Lpack{eledmac} does things that are
% not normally seen in LaTeX.
%
+% If you want to use the option \emph{bottom} of the \Lpack{footmisc} package,
+% you must load this package \emph{before} the \Eledmac\ package.
+%
% \DescribeMacro{\morenoexpands}
% You can define the macro \cs{morenoexpands} to modify macros that you
% call within \cs{edtext}. Because of the way \Eledmac{} numbers the lines
@@ -2666,10 +2677,10 @@
% \begin{macrocode}
%<*code>
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{eledmac}[2013/07/10 v1.4.9 LaTeX port of EDMAC]
+\ProvidesPackage{eledmac}[2013/07/11 v1.5 LaTeX port of EDMAC]
% \end{macrocode}
%
-% In general there is the following modifications to the original
+% Generally, these are the modifications to the original.
% \edmac{} code:
% \begin{itemize}
% \item Replace as many \cs{def}'s by \cs{newcommand}'s as possible
@@ -2713,13 +2724,14 @@
% \end{macro}
% Loading package \emph{xargs} to declare commands with optional arguments.
% \emph {Etoolbox} is also used to make code clearer - for example, in dynamic command names (which can replace \cs{csname} etc.).
-% Use \emph{suffix} to declare commands with starred versions/a starred version, and \emph{iflutex} to test if LuaLaTeX is running.
+% Use \emph{suffix} to declare commands with a starred version, \Lpack{xstring} to work with strings and \emph{iflutex} to test if LuaLaTeX is running.
% \changes{v1.4}{2012/11/16}{Compatibility with LuaTeX of RTL notes.}
% \begin{macrocode}
\RequirePackage{xargs}
\RequirePackage{etoolbox}
\reserveinserts{32}
\RequirePackage{suffix}
+\RequirePackage{xstring}
\RequirePackage{ifluatex}
% \end{macrocode}
% \begin{macro}{\if@RTL}
@@ -2781,6 +2793,13 @@
% \end{macro}
%
%
+% \begin{macro}{\ifl@imakeidx}
+% Define a flag for if the \Lpack{imakeidx} package has been used.
+% \begin{macrocode}
+\newif\ifl@imakeidx
+\@ifpackageloaded{imakeidx}{\l@imakeidxtrue}{\l@imakeidxfalse}
+% \end{macrocode}
+% \end{macro}
% \subsection{Messages}
%
% All the messages are grouped here as macros. This saves TeX's memory
@@ -3150,7 +3169,7 @@
% \changes{v1.4.7}{2012/06/07}{Compatibility of sectionning commands with \cs{autopar}.}
% \cs{initnumbering@sectcmd} defines sectioning commands inside numbered section.
% It also defines quotation environment.
-% Note that it's suppose user didn't change \cs{chapter}.
+% Note: this supposes that the user didn't change \cs{chapter}.
% If he did, he should redefine \cs{initnumbering@sectcmd}.
% \begin{macrocode}
\newcommand{\initnumbering@sectcmd}{
@@ -5643,7 +5662,7 @@
\fi
\affixline@num
\affixpstart@num
- \hb@xt@ \linewidth{\inserthangingsymbol\l@dld@ta\add@inserts\affixside@note
+ \hb@xt@ \linewidth{\do@insidelinehook\inserthangingsymbol\l@dld@ta\add@inserts\affixside@note
\l@dlsn@te
{\ledllfill\hb@xt@ \wd\one@line{\new@line\l@dunhbox@line{\one@line}}\ledrlfill\l@drd@ta%
\l@drsn@te
@@ -5653,12 +5672,17 @@
% \end{macro}
%
% \begin{macro}{\do@linehook}
-% A hook into \cs{do@line}.
+% \begin{macro}{\do@insidelinehook}
+% Two hooks into \cs{do@line}. The first is called at the begining of \cs{do@line}, the secund is called in the line box.
+% The secund can, for example, have a \cs{markboth} command inside, the first can't.
% \changes{v0.7}{2005/02/18}{Added \cs{do@linehook} for use in \cs{do@line}}
+% \changes{v1.5}{2013/07/11}{Added \cs{do@insidelinehook} for use in \cs{do@line}}
% \begin{macrocode}
\newcommand*{\do@linehook}{}
+\newcommand*{\do@insidelinehook}{}
% \end{macrocode}
% \end{macro}
+% \end{macro}
%
% \begin{macro}{\l@demptyd@ta}
% \begin{macro}{\l@dld@ta}
@@ -7715,9 +7739,9 @@
% % \section{Familiar footnotes}
%
% \subsection{Generality}
-% The original \edmac{} provided the five series of critical footnotes,
+% The original \edmac{} provided users with five series of critical footnotes (\cs{Afootnote} \cs{Bfootnote} \cs{Cfootnote} \cs{Dfootnote} \cs{Efootnote}),
% and LaTeX provides a single numbered footnote. The \Eledmac{} package
-% uses the \edmac{} mechanism to provide a few series of numbered footnotes.
+% uses the \edmac{} mechanism to provide five series of numbered footnotes.
%
% First, though, the \Lpack{footmisc} package has an option whereby
% two or more consecutive \cs{footnote}s have their marks separated
@@ -7825,7 +7849,7 @@
% \verb?\vl@dbfnote? calls the original \verb?\@footnotetext?.
% \changes{v0.6}{2004/11/23}{Changed \cs{l@dbfnote} and \cs{vl@dbfnote} as
% originals could give incorrect markers in the footnotes}
-% \changes{v1.4.1}{2012/11/16}{Compatibility of standard footnotes with eledmac when theses footnotes contain any commands.}
+% \changes{v1.4.1}{2012/11/16}{Compatibility of standard footnotes with eledmac when these footnotes contain any commands.}
% \begin{macrocode}
\newcommand{\l@dbfnote}[1]{%
\ifnumberedpar@
@@ -8537,7 +8561,8 @@
{}%
{\footnotelang@poly[R]}%
\footnoteoptions@[R]{##1}{true}%
- \xright@appenditem{\noexpand\csuse{v#1footnote}{#1}%
+ \xright@appenditem{\noexpand\prepare@edindex@fornote{\l@d@nums}%
+\noexpand\csuse{v#1footnote}{#1}%
{{\l@d@nums}{\csexpandonce{@tag}}{\csexpandonce{content}}}}\to\inserts@listR
\footnoteoptions@[R]{##1}{false}%
\global\advance\insert@countR \@ne%
@@ -8549,7 +8574,8 @@
{}%
{\footnotelang@poly}%
\footnoteoptions@{##1}{true}%
- \xright@appenditem{\noexpand\csuse{v#1footnote}{#1}%
+ \xright@appenditem{\noexpand\prepare@edindex@fornote{\l@d@nums}%
+\noexpand\csuse{v#1footnote}{#1}%
{{\l@d@nums}{\csexpandonce{@tag}}{\csexpandonce{content}}}}\to\inserts@list
\global\advance\insert@count \@ne%
\footnoteoptions@{##1}{false}%
@@ -9088,7 +9114,13 @@
% \end{macrocode}
% \end{macro}
-%
+% \begin{macro}{\ifFN@bottom}
+% \changes{v1.5}{2013/07/11}{Use the bottom option of \Lpack{footmisc} package.}
+% The \cs{ifFN@bottom} macro is defined by the \Lpack{footmisc} package. If this package is not loaded, we define it.
+% \begin{macrocode}
+\AtBeginDocument{\@ifpackageloaded{footmisc}{}{\newif\ifFN@bottom}}
+% \end{macrocode}
+% \end{macro}
% \begin{macro}{\l@ddofootinsert}
% This macro essentially holds the initial portion of the kernel
% \cs{@makecol} code.
@@ -9104,7 +9136,7 @@
\boxmaxdepth \@maxdepth
\@tempdima\dp\@cclv
\unvbox \@cclv
- \vskip \skip\footins
+ \ifFN@bottom\vfill\fi\vskip \skip\footins%%% If the option bottom of loadmisc package is loaded
\color@begingroup
\normalcolor
\footnoterule
@@ -10333,6 +10365,7 @@
%
% \section{Indexing}
%
+% \changes{v1.5}{2013/07/11}{Correct indexing when the call is made in critical notes.}
% Here's some code for indexing using page \& line numbers.
%
% \begin{macro}{\pagelinesep}
@@ -10365,10 +10398,52 @@
% \begin{macrocode}
\newcommand{\thepageline}{%
\thepage\pagelinesep\lineref{\edindexlab\thelabidx}}
-
% \end{macrocode}
% \end{macro}
+%
+% \begin{macro}{\thestartpageline}
+% \begin{macro}{\theendpageline}
+% These macros make up the page/line start/end number when the \cs{edindex} command is call in critical notes.
+% \begin{macrocode}
+\newcommand{\thestartpageline}{\l@dparsedstartpage\pagelinesep\l@dparsedstartline}
+\newcommand{\theendpageline}{\l@dparsedendpage\pagelinesep\l@dparsedendline}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
%
+% \begin{macro}{\if@edindex@fornote@true}
+% This boolean test is switching at the begining of each critical note,
+% to allow indexing in this note.
+% \begin{macrocode}
+\newif\if@edindex@fornote@
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\prepare@edindex@fornote}
+% This macro is called at the begining of each critical note.
+% It switches some parameters,
+% to allow indexing in this note, with reference to page and line number.
+% \begin{macrocode}
+\newcommand{\prepare@edindex@fornote}[1]{%
+ \l@dp@rsefootspec#1|%
+ \@edindex@fornote@true
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\get@index@command}
+% This macro is used to analyse if a text to be indexed have a command after an \verb+|+.
+% \begin{macrocode}
+\def\get@index@command#1|#2{\gdef\@index@command{#2}\gdef\@index@txt{#1}}
+% \end{macro}
+% \end{macrocode}
+% \begin{macro}{\ledinnote}
+% \begin{macro}{\ledinnotehyperpage}
+% These macros are used to precise that an index reference point to a note.
+% \begin{macrocode}
+\newcommand{\ledinnote}[2]{\csuse{#1}{#2\emph{n}}}
+\newcommand{\ledinnotehyperpage}[2]{\csuse{#1}{\hyperpage{#2}\emph{n}}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
% The \Lpack{memoir} class provides more flexible indexing than the
% standard classes. We need different code if the \Lpack{memoir}
% class is being used.
@@ -10381,6 +10456,7 @@
%
% \begin{macro}{\makeindex}
% \begin{macro}{\edindex}
+% \changes{v1.5}{2013/07/11}{Compatibility with \Lpack{imakeidx} package, and possibility to use multiple index with \cs{edindex}.}
% Need to add the definition of |\edindex| to |\makeindex|, and initialise
% |\edindex| to do nothing. In this case |\edindex| has an optional
% argument. We use the hook provided in \Lpack{memoir} v1.61.
@@ -10424,16 +10500,37 @@
\def\l@d@@wrindexhyp#1|#2|#3\\{%
\ifshowindexmark\@showidx{#1}\fi
\ifx\\#2\\%
- \protected@write\@auxout{}%
- {\string\@@wrindexm@m{\@idxfile}{#1|hyperpage}{\thepageline}}%
+ \if@edindex@fornote@%
+ \protected@write\@auxout{}%
+ {\string\@@wrindexm@m{\@idxfile}{#1|(ledinnotehyperpage}{\thestartpageline}}%
+ \protected@write\@auxout{}%
+ {\string\@@wrindexm@m{\@idxfile}{#1|)ledinnotehyperpage}{\theendpageline}}%
+ \else%
+ \protected@write\@auxout{}%
+ {\string\@@wrindexm@m{\@idxfile}{#1|hyperpage}{\thepageline}}%
+ \fi%
\else
\def\Hy@temp@A{#2}%
\ifx\Hy@temp@A\HyInd@ParenLeft
- \protected@write\@auxout{}%
- {\string\@@wrindexm@m{\@idxfile}{#1|#2hyperpage}{\thepageline}}%
+ \if@edindex@fornote@%
+ \protected@write\@auxout{}%
+ {\string\@@wrindexm@m{\@idxfile}{#1|(ledinnotehyperpage{#2}}{\thestartpageline}}%
+ \protected@write\@auxout{}%
+ {\string\@@wrindexm@m{\@idxfile}{#1|)ledinnotehyperpage{#2}}{\theendpageline}}%
+ \else%
+ \protected@write\@auxout{}%
+ {\string\@@wrindexm@m{\@idxfile}{#1|#2hyperpage}{\thepageline}}%
+ \fi%
\else
- \protected@write\@auxout{}%
- {\string\@@wrindexm@m{\@idxfile}{#1|#2}{\thepageline}}%
+ \if@edindex@fornote@%
+ \protected@write\@auxout{}%
+ {\string\@@wrindexm@m{\@idxfile}{#1|(ledinnote{#2}}{\thestartpageline}}%
+ \protected@write\@auxout{}%
+ {\string\@@wrindexm@m{\@idxfile}{#1|)ledinnote{#2}}{\theendpageline}}%
+ \else%
+ \protected@write\@auxout{}%
+ {\string\@@wrindexm@m{\@idxfile}{#1|#2}{\thepageline}}%
+ \fi%
\fi
\fi
\endgroup
@@ -10453,12 +10550,12 @@
% Need to add the definition of |\edindex| to |\makeindex|, and initialise
% |\edindex| to do nothing.
% \begin{macrocode}
- \g@addto@macro{\makeindex}{%
+ \pretocmd{\makeindex}{%
\def\edindex{\@bsphack
\doedindexlabel
\begingroup
\@sanitize
- \@wredindex}}
+ \@wredindex}}{}{}
\newcommand{\edindex}[1]{\@bsphack\@esphack}
% \end{macrocode}
% \end{macro}
@@ -10467,9 +10564,30 @@
% \begin{macro}{\@wredindex}
% Write the index information to the \file{idx} file.
% \begin{macrocode}
- \newcommand{\@wredindex}[1]{%
- \protected@write\@indexfile{}%
- {\string\indexentry{#1}{\thepageline}}%
+ \newcommandx{\@wredindex}[2][1=\jobname,usedefault]{%#1 = the index name, #2 = the text
+ \ifl@imakeidx%
+ \if@edindex@fornote@%
+ \IfSubStr[1]{#2}{|}{\get@index@command#2}{\get@index@command#2|}%
+ \expandafter\imki@wrindexentry{#1}{\@index@txt|(ledinnote{\@index@command}}{\thestartpageline}%
+ \expandafter\imki@wrindexentry{#1}{\@index@txt|)ledinnote{\@index@command}}{\theendpageline}%
+ \else%
+ \imki@wrindexentry{#1}{#2}{\thepageline}%
+ \fi%
+ \else%
+ \if@edindex@fornote@%
+ \IfSubStr[1]{#2}{|}{\get@index@command#2}{\get@index@command#2|}%
+ \expandafter\protected@write\@indexfile{}%
+ {\string\indexentry{\@index@txt|(ledinnote{\@index@command}}{\thestartpageline}
+ }%
+ \expandafter\protected@write\@indexfile{}%
+ {\string\indexentry{\@index@txt|)ledinnote{\@index@command}}{\theendpageline}
+ }%
+ \else%
+ \protected@write\@indexfile{}%
+ {\string\indexentry{#2}{\thepageline}
+ }%
+ \fi%
+ \fi%
\endgroup
\@esphack}
% \end{macrocode}
@@ -10488,11 +10606,20 @@
\AtBeginDocument{\@ifpackageloaded{hyperref}{}{%
\def\l@d@@wrindexhyp#1||\\{%
\ifshowindexmark\@showidx{#1}\fi
- \protected@write\@auxout{}%
- {\string\@@wrindexm@m{\@idxfile}{#1}{\thepageline}}%
+ \IfSubStr[1]{#1}{|}{\get@index@command#1}{\get@index@command#1|}%
+ \if@edindex@fornote@%
+ \protected@write\@auxout{}%
+ {\string\@@wrindexm@m{\@idxfile}{\@index@txt|(ledinnote{\@index@command}}{\thestartpageline}}%
+ \protected@write\@auxout{}%
+ {\string\@@wrindexm@m{\@idxfile}{\@index@txt|)ledinnote{\@index@command}}{\theendpageline}}%
+ \else%
+ \protected@write\@auxout{}%
+ {\string\@@wrindexm@m{\@idxfile}{#1}{\thepageline}}%
+ \fi%
\endgroup
\@esphack}}}
+
% \end{macrocode}
% \end{macro}
%
diff --git a/Master/texmf-dist/source/latex/eledmac/eledpar.dtx b/Master/texmf-dist/source/latex/eledmac/eledpar.dtx
index b52573ee7a2..5e8a6d8c5da 100644
--- a/Master/texmf-dist/source/latex/eledmac/eledpar.dtx
+++ b/Master/texmf-dist/source/latex/eledmac/eledpar.dtx
@@ -51,7 +51,7 @@
%
% \fi
%
-% \CheckSum{3958}
+% \CheckSum{3964}
%
% \makeatletter
% \newcommand*{\DescribeIt}{\leavevmode\@bsphack\begingroup\MakePrivateLetters
@@ -137,9 +137,9 @@
% \changes{v0.1}{2004/12/10}{First public release}
% \changes{v0.2}{2005/01/01}{Fix babel problems}
% \changes{v0.3}{2005/03/24}{Reorganize for ledarab}
-% \changes{v0.3a}{2005/03/30}{Minor \cs{linenummargin} fix}
-% \changes{v0.3b}{2005/04/08}{Improved parallel page balancing}
-% \changes{v0.3c}{2011/06/16}{Compatibilty with Polyglossia}
+% \changes{v0.3.a}{2005/03/30}{Minor \cs{linenummargin} fix}
+% \changes{v0.3.b}{2005/04/08}{Improved parallel page balancing}
+% \changes{v0.3.c}{2011/06/16}{Compatibilty with Polyglossia}
% \changes{v0.4}{2011/08/03}{No more ledparpatch. All patches are now in the main file.}
% \changes{v0.5}{2011/08/21}{Corrections about \cs{section} and other titles in numbered sections}
% \changes{v0.6}{2011/08/22}{Be able to us \cs{chapter} in parallel pages.}
@@ -719,7 +719,7 @@
% \begin{macrocode}
%<*code>
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{eledpar}[2013/07/10 v1.3.5 eledmac extension for parallel texts]
+\ProvidesPackage{eledpar}[2013/07/11 v1.4 eledmac extension for parallel texts]
% \end{macrocode}
% With the option `shiftedpstarts' a long pstart one the left side (or in the right side) don't make a blank on the corresponding pstart, but the blank is put on the bottom of the page. Consequently, the pstarts on the parallel pages are shifted, but the shifted stop at every end of pages.
@@ -2571,7 +2571,7 @@
\add@inserts
\affixside@note
\l@dlsn@te
- {\ledllfill\hb@xt@ \wd\one@line{\inserthangingsymbolL\new@line\l@dunhbox@line{\one@line}}\correcthangingL\ledrlfill\l@drd@ta%
+ {\ledllfill\hb@xt@ \wd\one@line{\do@insidelineLhook\inserthangingsymbolL\new@line\l@dunhbox@line{\one@line}}\correcthangingL\ledrlfill\l@drd@ta%
\l@drsn@te
}}%
\add@penaltiesL
@@ -2586,18 +2586,24 @@
% \end{macrocode}
% \end{macro}
%
+% \changes{v0.3}{2005/02/10}{Added \cs{do@lineLhook} and \cs{do@lineRhook}}
+% \changes{v1.4}{2013/07/11}{Added \cs{do@insidelineLhook} and \cs{do@insidelineRhook}}
% \begin{macro}{\do@lineLhook}
% \begin{macro}{\do@lineRhook}
+% \begin{macro}{\do@insidelineLhook}
+% \begin{macro}{\do@insidelineRhook}
% Hooks, initially empty, into the respective \cs{do@line(L/R)} macros.
-% \changes{v0.3}{2005/02/10}{Added \cs{do@lineLhook} and \cs{do@lineRhook}}
% \begin{macrocode}
\newcommand*{\do@lineLhook}{}
\newcommand*{\do@lineRhook}{}
+\newcommand*{\do@insidelineLhook}{}
+\newcommand*{\do@insidelineRhook}{}
% \end{macrocode}
% \end{macro}
% \end{macro}
-%
+% \end{macro}
+% \end{macro}
% \begin{macro}{\do@lineR}
% The \cs{do@lineR} macro is called to
% do all the processing for a single line of right text.
@@ -2623,7 +2629,7 @@
\add@insertsR
\affixside@noteR
\l@dlsn@te
- {\correcthangingR\ledllfill\hb@xt@ \wd\one@lineR{\inserthangingsymbolR\new@lineR\l@dunhbox@line{\one@lineR}}\ledrlfill\l@drd@ta%
+ {\correcthangingR\ledllfill\hb@xt@ \wd\one@lineR{\do@insidelineRhook\inserthangingsymbolR\new@lineR\l@dunhbox@line{\one@lineR}}\ledrlfill\l@drd@ta%
\l@drsn@te
}}%
\add@penaltiesR
diff --git a/Master/texmf-dist/tex/latex/eledmac/eledmac.sty b/Master/texmf-dist/tex/latex/eledmac/eledmac.sty
index fa13d48314c..96cc735df4d 100644
--- a/Master/texmf-dist/tex/latex/eledmac/eledmac.sty
+++ b/Master/texmf-dist/tex/latex/eledmac/eledmac.sty
@@ -24,7 +24,7 @@
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{eledmac}[2013/07/10 v1.4.9 LaTeX port of EDMAC]
+\ProvidesPackage{eledmac}[2013/07/11 v1.5 LaTeX port of EDMAC]
\newif\ifledfinal
\newif\ifparapparatus@
\newif\ifnoquotation@
@@ -40,6 +40,7 @@
\RequirePackage{etoolbox}
\reserveinserts{32}
\RequirePackage{suffix}
+\RequirePackage{xstring}
\RequirePackage{ifluatex}
\ifcsdef{if@RTL}{}{\newif\if@RTL}
\ifledfinal
@@ -54,6 +55,8 @@
\newif\ifl@dmemoir
\@ifclassloaded{memoir}{\l@dmemoirtrue}{\l@dmemoirfalse}
+\newif\ifl@imakeidx
+\@ifpackageloaded{imakeidx}{\l@imakeidxtrue}{\l@imakeidxfalse}
\newcommand{\eledmac@warning}[1]{\PackageWarning{eledmac}{#1}}
\newcommand{\eledmac@error}[2]{\PackageError{eledmac}{#1}{#2}}
\newcommand*{\led@err@NumberingStarted}{%
@@ -980,12 +983,13 @@
\fi
\affixline@num
\affixpstart@num
- \hb@xt@ \linewidth{\inserthangingsymbol\l@dld@ta\add@inserts\affixside@note
+ \hb@xt@ \linewidth{\do@insidelinehook\inserthangingsymbol\l@dld@ta\add@inserts\affixside@note
\l@dlsn@te
{\ledllfill\hb@xt@ \wd\one@line{\new@line\l@dunhbox@line{\one@line}}\ledrlfill\l@drd@ta%
\l@drsn@te
}}}%
\newcommand*{\do@linehook}{}
+\newcommand*{\do@insidelinehook}{}
\newcommand*{\l@demptyd@ta}{%
\gdef\l@dld@ta{}%
\gdef\l@drd@ta{}%
@@ -2212,7 +2216,8 @@
{}%
{\footnotelang@poly[R]}%
\footnoteoptions@[R]{##1}{true}%
- \xright@appenditem{\noexpand\csuse{v#1footnote}{#1}%
+ \xright@appenditem{\noexpand\prepare@edindex@fornote{\l@d@nums}%
+\noexpand\csuse{v#1footnote}{#1}%
{{\l@d@nums}{\csexpandonce{@tag}}{\csexpandonce{content}}}}\to\inserts@listR
\footnoteoptions@[R]{##1}{false}%
\global\advance\insert@countR \@ne%
@@ -2224,7 +2229,8 @@
{}%
{\footnotelang@poly}%
\footnoteoptions@{##1}{true}%
- \xright@appenditem{\noexpand\csuse{v#1footnote}{#1}%
+ \xright@appenditem{\noexpand\prepare@edindex@fornote{\l@d@nums}%
+\noexpand\csuse{v#1footnote}{#1}%
{{\l@d@nums}{\csexpandonce{@tag}}{\csexpandonce{content}}}}\to\inserts@list
\global\advance\insert@count \@ne%
\footnoteoptions@{##1}{false}%
@@ -2512,6 +2518,7 @@
\m@m@makecoltext
\global \maxdepth \@maxdepth}
+\AtBeginDocument{\@ifpackageloaded{footmisc}{}{\newif\ifFN@bottom}}
\newcommand*{\l@ddofootinsert}{%
%%% \page@start
\ifvoid\footins
@@ -2521,7 +2528,7 @@
\boxmaxdepth \@maxdepth
\@tempdima\dp\@cclv
\unvbox \@cclv
- \vskip \skip\footins
+ \ifFN@bottom\vfill\fi\vskip \skip\footins%%% If the option bottom of loadmisc package is loaded
\color@begingroup
\normalcolor
\footnoterule
@@ -3034,7 +3041,16 @@
\newcommand{\thepageline}{%
\thepage\pagelinesep\lineref{\edindexlab\thelabidx}}
-
+\newcommand{\thestartpageline}{\l@dparsedstartpage\pagelinesep\l@dparsedstartline}
+\newcommand{\theendpageline}{\l@dparsedendpage\pagelinesep\l@dparsedendline}
+\newif\if@edindex@fornote@
+\newcommand{\prepare@edindex@fornote}[1]{%
+ \l@dp@rsefootspec#1|%
+ \@edindex@fornote@true
+}
+\def\get@index@command#1|#2{\gdef\@index@command{#2}\gdef\@index@txt{#1}}
+\newcommand{\ledinnote}[2]{\csuse{#1}{#2\emph{n}}}
+\newcommand{\ledinnotehyperpage}[2]{\csuse{#1}{\hyperpage{#2}\emph{n}}}
\@ifclassloaded{memoir}{%
\g@addto@macro{\makememindexhook}{%
\def\edindex{\@bsphack%
@@ -3057,31 +3073,73 @@
\def\l@d@@wrindexhyp#1|#2|#3\\{%
\ifshowindexmark\@showidx{#1}\fi
\ifx\\#2\\%
- \protected@write\@auxout{}%
- {\string\@@wrindexm@m{\@idxfile}{#1|hyperpage}{\thepageline}}%
+ \if@edindex@fornote@%
+ \protected@write\@auxout{}%
+ {\string\@@wrindexm@m{\@idxfile}{#1|(ledinnotehyperpage}{\thestartpageline}}%
+ \protected@write\@auxout{}%
+ {\string\@@wrindexm@m{\@idxfile}{#1|)ledinnotehyperpage}{\theendpageline}}%
+ \else%
+ \protected@write\@auxout{}%
+ {\string\@@wrindexm@m{\@idxfile}{#1|hyperpage}{\thepageline}}%
+ \fi%
\else
\def\Hy@temp@A{#2}%
\ifx\Hy@temp@A\HyInd@ParenLeft
- \protected@write\@auxout{}%
- {\string\@@wrindexm@m{\@idxfile}{#1|#2hyperpage}{\thepageline}}%
+ \if@edindex@fornote@%
+ \protected@write\@auxout{}%
+ {\string\@@wrindexm@m{\@idxfile}{#1|(ledinnotehyperpage{#2}}{\thestartpageline}}%
+ \protected@write\@auxout{}%
+ {\string\@@wrindexm@m{\@idxfile}{#1|)ledinnotehyperpage{#2}}{\theendpageline}}%
+ \else%
+ \protected@write\@auxout{}%
+ {\string\@@wrindexm@m{\@idxfile}{#1|#2hyperpage}{\thepageline}}%
+ \fi%
\else
- \protected@write\@auxout{}%
- {\string\@@wrindexm@m{\@idxfile}{#1|#2}{\thepageline}}%
+ \if@edindex@fornote@%
+ \protected@write\@auxout{}%
+ {\string\@@wrindexm@m{\@idxfile}{#1|(ledinnote{#2}}{\thestartpageline}}%
+ \protected@write\@auxout{}%
+ {\string\@@wrindexm@m{\@idxfile}{#1|)ledinnote{#2}}{\theendpageline}}%
+ \else%
+ \protected@write\@auxout{}%
+ {\string\@@wrindexm@m{\@idxfile}{#1|#2}{\thepageline}}%
+ \fi%
\fi
\fi
\endgroup
\@esphack}
}{%
- \g@addto@macro{\makeindex}{%
+ \pretocmd{\makeindex}{%
\def\edindex{\@bsphack
\doedindexlabel
\begingroup
\@sanitize
- \@wredindex}}
+ \@wredindex}}{}{}
\newcommand{\edindex}[1]{\@bsphack\@esphack}
- \newcommand{\@wredindex}[1]{%
- \protected@write\@indexfile{}%
- {\string\indexentry{#1}{\thepageline}}%
+ \newcommandx{\@wredindex}[2][1=\jobname,usedefault]{%#1 = the index name, #2 = the text
+ \ifl@imakeidx%
+ \if@edindex@fornote@%
+ \IfSubStr[1]{#2}{|}{\get@index@command#2}{\get@index@command#2|}%
+ \expandafter\imki@wrindexentry{#1}{\@index@txt|(ledinnote{\@index@command}}{\thestartpageline}%
+ \expandafter\imki@wrindexentry{#1}{\@index@txt|)ledinnote{\@index@command}}{\theendpageline}%
+ \else%
+ \imki@wrindexentry{#1}{#2}{\thepageline}%
+ \fi%
+ \else%
+ \if@edindex@fornote@%
+ \IfSubStr[1]{#2}{|}{\get@index@command#2}{\get@index@command#2|}%
+ \expandafter\protected@write\@indexfile{}%
+ {\string\indexentry{\@index@txt|(ledinnote{\@index@command}}{\thestartpageline}
+ }%
+ \expandafter\protected@write\@indexfile{}%
+ {\string\indexentry{\@index@txt|)ledinnote{\@index@command}}{\theendpageline}
+ }%
+ \else%
+ \protected@write\@indexfile{}%
+ {\string\indexentry{#2}{\thepageline}
+ }%
+ \fi%
+ \fi%
\endgroup
\@esphack}
}
@@ -3089,8 +3147,16 @@
\AtBeginDocument{\@ifpackageloaded{hyperref}{}{%
\def\l@d@@wrindexhyp#1||\\{%
\ifshowindexmark\@showidx{#1}\fi
- \protected@write\@auxout{}%
- {\string\@@wrindexm@m{\@idxfile}{#1}{\thepageline}}%
+ \IfSubStr[1]{#1}{|}{\get@index@command#1}{\get@index@command#1|}%
+ \if@edindex@fornote@%
+ \protected@write\@auxout{}%
+ {\string\@@wrindexm@m{\@idxfile}{\@index@txt|(ledinnote{\@index@command}}{\thestartpageline}}%
+ \protected@write\@auxout{}%
+ {\string\@@wrindexm@m{\@idxfile}{\@index@txt|)ledinnote{\@index@command}}{\theendpageline}}%
+ \else%
+ \protected@write\@auxout{}%
+ {\string\@@wrindexm@m{\@idxfile}{#1}{\thepageline}}%
+ \fi%
\endgroup
\@esphack}}}
diff --git a/Master/texmf-dist/tex/latex/eledmac/eledpar.sty b/Master/texmf-dist/tex/latex/eledmac/eledpar.sty
index 4ceb2e8c41a..61a56ae8df0 100644
--- a/Master/texmf-dist/tex/latex/eledmac/eledpar.sty
+++ b/Master/texmf-dist/tex/latex/eledmac/eledpar.sty
@@ -24,7 +24,7 @@
%%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{eledpar}[2013/07/10 v1.3.5 eledmac extension for parallel texts]
+\ProvidesPackage{eledpar}[2013/07/11 v1.4 eledmac extension for parallel texts]
\newif\ifshiftedpstarts
\let\shiftedversestrue\shiftedpstartstrue
@@ -951,7 +951,7 @@
\add@inserts
\affixside@note
\l@dlsn@te
- {\ledllfill\hb@xt@ \wd\one@line{\inserthangingsymbolL\new@line\l@dunhbox@line{\one@line}}\correcthangingL\ledrlfill\l@drd@ta%
+ {\ledllfill\hb@xt@ \wd\one@line{\do@insidelineLhook\inserthangingsymbolL\new@line\l@dunhbox@line{\one@line}}\correcthangingL\ledrlfill\l@drd@ta%
\l@drsn@te
}}%
\add@penaltiesL
@@ -964,6 +964,8 @@
\newcommand*{\do@lineLhook}{}
\newcommand*{\do@lineRhook}{}
+\newcommand*{\do@insidelineLhook}{}
+\newcommand*{\do@insidelineRhook}{}
\newcommand*{\do@lineR}{%
\advance\countRline \@ne
@@ -985,7 +987,7 @@
\add@insertsR
\affixside@noteR
\l@dlsn@te
- {\correcthangingR\ledllfill\hb@xt@ \wd\one@lineR{\inserthangingsymbolR\new@lineR\l@dunhbox@line{\one@lineR}}\ledrlfill\l@drd@ta%
+ {\correcthangingR\ledllfill\hb@xt@ \wd\one@lineR{\do@insidelineRhook\inserthangingsymbolR\new@lineR\l@dunhbox@line{\one@lineR}}\ledrlfill\l@drd@ta%
\l@drsn@te
}}%
\add@penaltiesR