1. ホーム
  2. latex

[解決済み] LaTeXのオプション引数

2022-02-09 18:30:02

質問

LaTeXでオプションの引数を持つコマンドはどのように作成するのですか? 次のようなものです。

\newcommand{\sec}[2][]{
    \section*{#1
        \ifsecondargument
            and #2
        \fi}
    }
}

そして、次のように呼び出すことができます。

\sec{Hello}
%Output: Hello
\sec{Hello}{Hi}
%Output: Hello and Hi

解決方法は?

の例 案内 :

\newcommand{\example}[2][YYY]{Mandatory arg: #2;
                                 Optional arg: #1.}

This defines \example to be a command with two arguments, 
referred to as #1 and #2 in the {<definition>}--nothing new so far. 
But by adding a second optional argument to this \newcommand 
(the [YYY]) the first argument (#1) of the newly defined 
command \example is made optional with its default value being YYY.

Thus the usage of \example is either:

   \example{BBB}
which prints:
Mandatory arg: BBB; Optional arg: YYY.
or:
   \example[XXX]{AAA}
which prints:
Mandatory arg: AAA; Optional arg: XXX.