名前: kreson 日時: 2006-06-22 20:50:19 IPアドレス: 58.188.44.*
>>43544 > 実をいうと私の方ではもう原因や対処法などはわかっていたのです。 > 少し意地が悪かったでしょうか。 > マクロを組んでいれば、最初は思い通りに動かないのが当たり前なので、 > 原因分析の練習になるかと思ってヒントを出したのでした。 いえ, よろしくご指導お願いします (^^; ログのご指摘の箇所を逐次代入・置換していき \csname hoge\expandafter \ifx \r@hoge1 \relax \fi \endcsname \protect \G@refundefinedtrue \@latex@warning {Reference `hoge1' on page \thepage \space undefined} という形にたどりつきました. この \csname hoge\endcsname から \hoge が実行されているのだと思います. この hoge は \@namedef の中の hoge に由来しているので \makeatletter \newcounter{hoge} \newenvironment{hoge}[1] {\refstepcounter{hoge}\label{hoge:#1}\macro} {[hoge\the\c@hoge] \@namedef{unique-string@hoge\the\c@hoge}{\contents}\contents} \def\hogeuse#1{\@nameuse{unique-string@hoge\ref@csname{#1}}} \makeatother というように修正したところエラーはでなくなりました. しかし LaTeX Warning: Reference `hoge1' on page 1 undefined on input line 52. の警告はなくならず参照できませんでした. これの原因追求はまだ手を付けていませんが とりあえずここまでの結果を報告します.
この書き込みへの返事: