bikarrayでエラー

bikarrayでエラー

- 浮亭 夢介 の投稿
返信数: 3
ソースファイルは次の通りです.
------
\documentclass{jsarticle}
\usepackage{blkarray}
\begin{document}
\BAtablenotesfalse % footnoteを脚注部に表示する
%\BAtablenotestrue % footnoteを表直下に表示する
\begin{blockarray}{lrr}
\hline
品名 & 単価(円) & 個数 \\ \hline
りんご\footnote{青森産} & 100 & 5 \\
みかん\footnote{愛媛産} & 50 & 10 \\ \hline
\end{blockarray}
\end{document}
------

(1) 4行目の \BAtablenotesfalse を有効にして実行すると正しく処理され,footnoteが脚注部に
表示されます.

(2) 4行目をコメントアウトして,5行目の \BAtablenotestrue を有効(dafult)にして実行すると
次のエラーが出ます.
! TeX capacity exceeded, sorry [input stack size=5000]
size を大きくすると,今度は
! TeX capacity exceeded, sorry [parameter stack size=10000]となり,失敗します.

(3) 記憶があいまいですが,windows2000 を使っていた時は問題なく処理できていました.
(今はwindows10)

処方箋よろしくお願いします.

浮亭 夢介 への返信

Re: bikarrayでエラー

- aminophen の投稿
LaTeX 2015/01/01 で入った互換性のない変更の中のどれかが壊してしまったようです。

\RequirePackage[2014/12/31]{platexrelease}
\documentclass{jsarticle}
\usepackage{blkarray}
\begin{document}
%\BAtablenotesfalse % footnoteを脚注部に表示する
\BAtablenotestrue % footnoteを表直下に表示する
\begin{blockarray}{lrr}
\hline
品名 & 単価(円) & 個数 \\ \hline
りんご\footnote{青森産} & 100 & 5 \\
みかん\footnote{愛媛産} & 50 & 10 \\ \hline
\end{blockarray}
\end{document}

だとエラーになりませんが

\RequirePackage[2015/01/01]{platexrelease}
\documentclass{jsarticle}
\usepackage{blkarray}
\begin{document}
%\BAtablenotesfalse % footnoteを脚注部に表示する
\BAtablenotestrue % footnoteを表直下に表示する
\begin{blockarray}{lrr}
\hline
品名 & 単価(円) & 個数 \\ \hline
りんご\footnote{青森産} & 100 & 5 \\
みかん\footnote{愛媛産} & 50 & 10 \\ \hline
\end{blockarray}
\end{document}

だとおっしゃるとおりエラーになります。

! TeX capacity exceeded, sorry [input stack size=5000].
\font@name ->
            \JY1/mc/m/n/5
l.12 \end{blockarray}

----------

pLaTeX や jsclasses は脚注関係のマクロを再定義していますが、それとは無関係なようです。実際

%\RequirePackage[2014/12/31]{latexrelease}
\documentclass{article}
\usepackage{blkarray}
\begin{document}
\LaTeXe\ \fmtversion
\begin{blockarray}{lrr}
\hline
Aaa & Bbb & Ccc \\ \hline
Ddd\footnote{footnote-d} & Eee & Fff \\
Ggg\footnote{footnote-g} & Hhh & Iii \\ \hline
\end{blockarray}
\end{document}

を pdflatex で処理してもエラーです。

! TeX capacity exceeded, sorry [input stack size=5000].
\font@name ->
            \OMX/cmex/m/n/5
l.11 \end{blockarray}

どの変更が critical なのかまでは突き止めていません。
aminophen への返信

Re: bikarrayでエラー

- aminophen の投稿
> どの変更が critical なのか

\@fnsymbol の定義が変更されたのが影響しているようです。

\IncludeInRelease{2015/01/01}{\@fnsymbol}{Use \TexOrMath}%

このブロックの変更のことです。ひとまず

\usepackage{blkarray}

のあとに

\makeatletter
\def\BA@fnsymbol#1{\ensuremath{%
  \ifcase#1\or *\or \dagger\or \ddagger\or \mathsection\or
    \mathparagraph\or \|\or **\or \dagger\dagger
    \or \ddagger\ddagger \else\@ctrerr\fi}}%
\makeatother

と書いて逃げるのが、手っ取り早いと思います。
本質的な解決は、作者である David さんにお願いするしかないです。
https://github.com/davidcarlisle/dpctex/issues/3