Re: こんなマクロありませんか

名前: kreson
日時: 2006-06-19 15:00:06
IPアドレス: 58.188.44.*

>>43432 遅くなりましたが, ありがとうございます. Another Manual には \show の解説は見受けられせんでしたが, デバッグ用と思えばよいでしょうか. \show をはずして \contents が出力されました. これで >>43355 の 1 つ目の問題はクリアできました. 次に 2 つ目の問題ですが, \globaldef するのは他への影響が心配なので, ラベル名を環境の引数に与えて, 環境内で定義しようと考えました. そこで >>42984 に戻って \newenvironment{hoge}[1]{\macro\hogedef{#1}{\contents}}{} か \newenvironment{hoge}[1]{\macro}{\hogedef{#1}{\contents}} のようにしたいと思ったのですが, \contents は後ろの {} 内でしか使えないようですし #1 は前の {} 内でしか使えないようなので困りました. \newenvironment{hoge}[1] {\refstepcounter{hoge}\label{hoge:#1}\macro} {[hoge\the\c@hoge] \@namedef{hoge\the\c@hoge}{\contents}\contents} \def\hogeuse#1{\@nameuse{hoge\ref@csname{#1}}} として回避しようとしましたが, \ref@csname の定義と\@macro の定義を同時に使おうとすると 次のようなエラーになってしまいます. Runaway argument? \par \par ! File ended while scanning use of \@macro. <inserted text> \par <*> test.tex いろいろ方法があるようなのですが, 何かやろうとすると次々問題がでてきて混乱してきました. またアドバイスいただけないでしょうか?

この書き込みへの返事:

お名前
題名 
メッセージ(タグは <a href="...">...</a> だけ使えます。適宜改行を入れてください)