aux ファイルで multiply-defined labels になる

名前: hoge
日時: 2005-08-16 17:29:15
IPアドレス: 133.31.18.*

いつもお世話になってます. 自作のラベルを.auxファイルに書き出したとき、どうしても二重に出力されてしまい、 warningが出てしまいます.使うコマンドによってはうまくいくのですが... 原因と対策をご教示いただければ幸いです. ソースは本質的な部分まで削って単純化してますので、やりたいことが伝わらない かもしれませんが、要するに自作ラベルを警告なく参照できるようにしたい ということです. testmultilabel.tex \documentclass{jarticle} \usepackage{amsmath,amssymb} \makeatletter \newcounter{No} \newcommand{\ClearCnt}{\setcounter{No}{0}} \ClearCnt \newcommand{\mylabel}[1][]{% \def\@tempa{#1}% \addtocounter{No}{1}% \ifx\@tempa\empty \else \immediate\write\@auxout{% \string\newlabel{#1}{{\alph{No}}{}}}% \fi {(\alph{No})}% } \makeatother \begin{document} %\begin{eqnarray*} %\[\begin{split} \begin{align*} % 1 &+& 2 \qquad \mylabel[R1] \\ % 2 &-& 3 \qquad \mylabel[R2] \\ 1 &+ 2 \qquad \mylabel[R1] \\ 2 &- 3 \qquad \mylabel[R2] \\ \end{align*} %\end{split}\] %\end{eqnarray*} 文中や独立数式では多重ラベルにならない $aaa+\mylabel[R3]$ \[ bb \qquad \mylabel[R4] \] %(\ref{R1}) \quad (\ref{R2}) 参照はできる [\ref{R1}] \quad \ref{R2} eqnarray*のときも大丈夫. align*やsplit, gather, multilineなどams系のコマンドで失敗する \end{document}

この書き込みへの返事:

お名前
題名 
メッセージ(タグは <a href="...">...</a> だけ使えます)