複数の索引を利用する際のマクロの展開について

複数の索引を利用する際のマクロの展開について

- peperoncino peperoncino の投稿
返信数: 3
peperoncino peperoncino への返信

Re: 複数の索引を利用する際のマクロの展開について

- 匿 名 の投稿
>\index[\@kind]{\@word}
これが間違い.

\edef\@tempa{\noexpand\index[\@kind]{\@word}}
\@tempa

とでもすればよい.
なぜこうすべきかについては,
マクロ作成についてのまともな教科書を読んで学習のこと.
匿 名 への返信

Re: 複数の索引を利用する際のマクロの展開について

- peperoncino peperoncino の投稿
なるほど、マクロの展開のみの話でしたか。
ありがとうございました。
勉強します。
peperoncino peperoncino への返信

Re: 複数の索引を利用する際のマクロの展開について

- 匿 名 の投稿
問題の箇所とは違いますが、
条件分岐がたくさんあって面倒ですね。

もしも、\kana の引数が kanaa や kataa などというように、
必ず接頭辞として4文字のものがくるのなら、

\def\split#1#2#3#4#5\@nil{%
\def\@kind{#1#2#3#4}%
\def\@word{#5}%
}

のようなものを用意して、

\kana#1{%
\split#1\@nil
\edef\@tempa{%
\noexpand\index[\@kind]{\@word}%
}%
\@tempa
}

のような感じで代用できないでしょうか?