[XeTeX] Two footnote bugs in Memoir with Bidi

Rik ribaldhacker at rik.users.panix.com
Tue Sep 28 19:45:38 CEST 2010


This was posted to c.t.t on 14 September but drew no responses.

I have been using Memoir with XeLaTeX and Bidi (brought in by
Polyglossia to support RTL languages). Two footnote problems have
arisen.

The first is that memoir's \multfootsep does not get inserted between
consecutive \footnote commands when the default footnote environment
(\plainfootnotes and arabic markers) is active. It works between
consecutive \footnotemark commands in that environment, and it works
with alph, fnsymbol, and roman markers. It also works with
\paragraphfootnotes and the columnar footnotes.

The second problem is that footnotes do not get printed in the
minipage environment when \plainfootnotes is not in effect.

Both of these issues occur only when an RTL language has been
specified via \setotherlanguage (but is not active). Without an RTL
language set, everything is fine.

The example between the dash lines demonstrates all of this.
%----------------------------------------------------------------------
\documentclass{memoir}
\settypeblocksize{12cm}{10cm}{*}
 \usepackage{fontspec}
 \setmainfont{Linux Libertine O}
 \usepackage{polyglossia}
  \setdefaultlanguage{english}
  \setotherlanguage{arabic}
\MakeShortVerb{\|}
\begin{document}

Here is an example of an unfortunate interaction between the
\emph{Memoir} class and the \emph{Polyglossia} and \emph{Bidi}
packages when an RTL language is active (but not currently selected)
and |\plainfootnotes| is in effect with the default numeric
markers.\footnote{%
  MiKTeX 2.8, XeTeX 3.1415926-2.2-0.9995, Memoir 2010/08/22 v3.6f,
  Polyglossia 1.2.0a, Bidi 1.1.4c.%
}\footnote{%

  Plainfootnotes are active by default.%
} The separator between footnote markers generated by memoir for

consecutive |\footnote| commands (as in this paragraph) is suppressed.

If the preamble command |\setotherlanguage{arabic}| is removed, the
separator between the footnote marks will appear as it should. The
problem occurs with |hebrew| or |farsi| set as the RTL language, and I
expect with others as well.

The issue does not occur when if one uses the |\footnotemark| and
|\footnotetext|\footnotemark \footnotemark\ commands to generate
footnotes, as this paragraph demonstrates. The problem is independent
of
the \emph{xltxtra} package and it's |no-sscript| option.

\footnotetext[3]{Memoir commands}
\footnotetext{for footnote placement}

When \emph{memoir}'s |\paragraphfootnotes|, |\twocolumnfootnotes|, or
|\threecolumnfootnotes| is active, the problem does not occur. The
next
page shows that behavior.

The problem does not occur when |\plainfootnotes| is active and |
alph|,
|Alph|, |fnsymbol|, |roman|, or |Roman| markers are used, as shown on
page three.

A possibly-related problem occurs in the |minipage| environment, in
which, with an RTL language activated, footnotes do not appear at all
if
|\plainfootnotes| is not active. Page four shows that.

\newpage
\paragraphfootnotes

Now |\paragraphfootnotes| is active.\footnote{%
  Paragraph footnote.%
}\footnote{%

  Paragraph footnote.%
}\footnote{%

  Paragraph footnote.%
}\footnote{%

  Paragraph footnote.%

}

The same behavior as this is seen when |\twocolumnfootnotes| or
|\threecolumnfootnotes| is active.

The next page shows the behavior with |alph| and |roman| markers when
|\plainfootnotes| is active.

\newpage
\plainfootnotes
\renewcommand*{\thefootnote}{\fnsymbol{footnote}}\setcounter{footnote}
{0}

Now |\plainfootnotes| is active with |fnsymbol| markers.\footnote{%
  Plain fnsymbol footnote.%
}\footnote{%

  Plain fnsymbol footnote.%

}

\renewcommand*{\thefootnote}{\roman{footnote}}

Now |\plainfootnotes| is active with |roman| markers.\footnote{%
  Plain roman footnote.%
}\footnote{%

  Plain roman footnote.%

}

\renewcommand*{\thefootnote}{\alph{footnote}}

Now |\plainfootnotes| is active with |alph| markers.\footnote{%
  Plain alph footnote.%
}\footnote{%

  Plain alph footnote.%

}

\renewcommand*{\thefootnote}{\Roman{footnote}}

Now |\plainfootnotes| is active with |Roman| markers.\footnote{%
  Plain Roman footnote.%
}\footnote{%

  Plain Roman footnote.%

}

\renewcommand*{\thefootnote}{\Alph{footnote}}

Now |\plainfootnotes| is active with |Alph| markers.\footnote{%
  Plain Alph footnote.%
}\footnote{%

  Plain Alph footnote.%

}

Symbol footnote markers behave the same as alph and roman markers when
the font has the appropriate glyphs.

\newpage

With an RTL language active, but not selected, if |\plainfootnotes|
is active, all is well (as shown above); but, if |
\paragraphfootnotes|,
|\twocolumnfootnotes|, or |\threecolumnfootnotes| is active, the
minipage's footnotes are not shown, as the example below demonstrates.

\begin{figure}[t]
\centering
\begin{minipage}{0.6\textwidth}\raggedright
There is no problem in the \emph{minipage} environment when
|\plainfootnotes| is active.\footnote{%
  First footnote in the minipage.%
}\footnote{%

  Second footnote in the minipage.%
}

\end{minipage}
\caption{OK in a minipage}
\end{figure}

\paragraphfootnotes

\begin{figure}[b]
\centering
\begin{minipage}{0.6\textwidth}\raggedright
But there is a problem in the \emph{minipage} environment with
|\paragraphfootnotes|.\footnote{%
  First footnote in the minipage.%
}\footnote{%

  Second footnote in the minipage.%
}

\end{minipage}
\caption{Where did the footnotes go?}
\end{figure}

\end{document}
%---------------------------------------------------------------------- 

-- 
Rik



More information about the XeTeX mailing list