まともに展開されないマクロ

名前: Lykeion
日時: 2002-09-18 17:10:32
IPアドレス: 43.240.190.*

以下の \xskipchar マクロについてお尋ねします。 \documentclass[a4j,12pt]{jarticle} \makeatletter \def\xskipchar#1#2{% \edef\kari{#1/#2/}\expandafter\@xskipchar\kari\relax} \def\@xskipchar#1/#2/\relax{% \@tfor\achar:=#2\do{% \makebox[#1]{\achar}}} \makeatother \begin{document} \verb|\xskipchar|は、たとえば、文字列「これは文字列です」の各文字を一 定の間隔で\xskipchar{20pt}{これは文字列です}とか \xskipchar{20pt}{123,456}のように出力します。 さて、これを\xskipchar{20pt}{abcde}なら問題ないようなのですが \xskipchar{20pt}{\uppercase{abcde}}とすると意図したものが得られません。 \end{document} もともと \makebox の部分は Colin Hogben 氏の at.sty を利用し、定型用紙 の特定の位置に文字を書き込むコマンドの一つとして作成しました。全角文字 および半角英数字以外が入力されることはないことを前提としています。 以前にも、「マクロの引数」ということでアドバイスを受け、その際、少しは \expandafter を理解できたと思っていましたが、どうも進歩がないようです。 よろしくお願いします。

この書き込みへの返事:

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