引数なしでは何も出力しない単純なコマンド例を作成しようとしていますが、引数があるとそれを何かで囲みます。
\@empty
デフォルト値は次のようにする必要があり、単純な\ifx\@empty#1
条件で機能する必要があることを読みました。
\newcommand{\optarg}[1][\@empty]{%
\ifx\@empty#1 {} \else {(((#1)))} \fi
}
\optarg % (((empty)))
\optarg{} % (((empty)))
\optarg{test} % (((empty))) test
後の 3 つのコマンドはすべてempty
何らかの理由で単語を出力します。最初の 2 つのコマンドでは何も出力せず、最後のコマンドでは(((test)))
.
TeXLive/Ubuntu を使用しています。アイデア?