【←前頁】【↑目次】【次頁→】


コマンドの自作、再定義


lionheadコマンドの自作方法

自作の新しいコマンドを作るには¥newcommandコマンドを使用します。基本形は以下のように書きます:

¥documentclass[12pt]{jarticle}

¥newcommand{¥新コマンドの名前}[使用する引数の数]{コマンドの定義}

¥begin{document}

¥end{document}


最初の引数新コマンドの名前}で、新らしく作るコマンドの名前を指定します。半角英数字で、頭に「¥」マークを付け、さらに既存のコマンドには無い名前をつけなければなりません。

次のオプション[使用する引数の数]では、その新コマンドが使用する引数の数を指定します。例えば「¥myoriginal{x}{y}{z}」というコマンドを作るなら、引数の数は3ですので「3」と記入します。引数を取らないコマンドの場合は指定する必要はありません。

そして最後の引数{コマンドの定義}で、作成されるコマンドの新機能を定義します。無論「新機能」とは言っても、基本的には既存のLaTeXコマンド・環境を組み合わせて定義するのですが、LaTeXには大変細かいことを定義するコマンド・環境が沢山ありますので、それを組み合わせれば全く新しい複雑な機能を持つコマンドを作成することも可能です。

コマンドの定義とは、端的に言って「その定義されるところのコマンドが挿入された場所に入れ替えられる文章」です。この文章内にコマンドが含まれていれば、それも表示されて実行される、というわけです。例えば:
¥newcommand{¥simplecommand}{``What a simple command!''}
と新コマンド「¥simplecommand」を定義したとします。このコマンドは、挿入されるとその場所に2番目の引数内に書かれた「``What a simple command!''」というテキストを表示するだけのものです。「¥simplecommand ¥simplecommand ¥simplecommand」とソース文書に3つ連続して書けば、同じく「``What a simple command!''」を3つ連続してdviに出力します:

¥documentclass[12pt]{jarticle}

¥newcommand{¥simplecommand}{``What a simple command!''}

¥begin{document}

¥simplecommand ¥simplecommand ¥simplecommand

¥end{document}
``What a simple command!'' ``What a simple command!'' ``What a simple command!''


これを少し発展させて
¥newcommand{¥simplecommand2}{¥textit{What a simple command!}}
と斜体コマンドを入れて定義すると、斜体化されたテキスト「What a simple command!」が表示されます。

定義内に数式コマンドを使っている場合は、それをそのまま本文中に挿入すればエラーが出てしまいます。その場合はコマンドを「$」で囲ってやる必要があります。あるいは、定義中に¥ensuremathコマンドを用いれば、数式環境でもそれ以外でも「$」無しに直接使用できるようにすることができます
例:¥newcommand{¥simplecommand3}{¥ensuremath{x_1 ¥ldots x_n}}
¥simplecommand3は、「」というテキストを表示します。もしこれが「¥newcommand{¥simplecommand3}{x_1 ¥ldots x_n」と定義されていたなら、これを本文中でそのまま使えば数式用下付コマンド(「_」)の為にエラーが出ていたところですが、¥ensuremathを入れたおかげでそれも無くなるわけです。




lionhead引数を伴うコマンドの作成

引数を何も要さないコマンドは、例えば以下のように定義します:

¥documentclass[12pt]{jarticle}

¥newcommand{¥xdotn}{x_1, ¥ldots, x_n}

¥begin{document}

$ ¥xdotn $

¥end{document}


上の定義内で使われている¥¥ldotsコマンドは、ただ「...」を表示するだけのものです。この新コマンド¥xdotnもまた、¥¥ldotsのような特殊記号表示用のコマンドと同じように、ただという文章を表示するだけのものです。

¥xdotnの前後に「$」が挿入されているのは、その定義の内に数式コマンドである下付(「x_1」)が使用されているからです。

【←前頁】【↑目次】【次頁→】