latex
Makros definieren
Suche…
Syntax
- \ newcommand {\ macro} {Ersetzungstext}
- \ newcommand {\ macro} [argcount] {ersatztext}
- \ erneuerungsbefehl {\ macro} {ersatztext}
- \ erneuerungsbefehl {\ macro} [argcount] {ersatztext}
Parameter
Parameter | Einzelheiten |
---|---|
\macro | Das zu definierende Makro |
argcount | Die Anzahl der Argumente, die das Makro erwartet (optional) |
replacement text | Der Ersetzungstext für das Makro. Darin werden Text #1 , #2 usw. durch die Makroargumente ersetzt. |
Grundlegende Definition von Makros
Definieren Sie einen neuen Basisbefehl
Ein Makro kann mit \newcommand
definiert werden. Zum Beispiel:
\newcommand{\foo}{Just foo, you see?}
Definiert ein Makro \foo
, das zu Just foo, you see?
erweitert wird Just foo, you see?
. Es kann dann wie jeder eingebaute Befehl verwendet werden, zum Beispiel nach dieser Definition:
He said: ``\foo''
erweitert zu
He said: ``Just foo, you see?''
Definieren Sie einen neuen Befehl mit Argumenten
Makros können auch Argumente haben. Die Anzahl der Argumente wird als optionales Argument zwischen dem Befehlsnamen und dem Ersetzungstext angegeben. Im Ersetzungstext wird auf die Argumente mit #1
, #2
usw. zugegriffen. Zum Beispiel:
\newcommand{\better}[2]{A #1 is better than a #2.}
\better{solution}{problem} % gives: A solution is better than a problem
Einen vorhandenen Befehl neu definieren
Wenn bereits ein Makro definiert wurde, gibt \newcommand
einen Fehler aus. Um eine neue Definition für einen vorhandenen Befehl \renewcommand
wird stattdessen der Befehl \renewcommand
verwendet. Anders als der andere Name ist die Syntax genau dieselbe. Nach der Definition von \foo
oben könnte man beispielsweise \foo
verwenden:
\renewcommand{\foo}{Another foo, please.}
Nach dieser Neudefinition der Makro \foo
erweitert nicht mehr Just foo, you see?
aber zu einem Another foo, please.