latex
Définition de macros
Recherche…
Syntaxe
- \ newcommand {\ macro} {texte de remplacement}
- \ newcommand {\ macro} [argcount] {texte de remplacement}
- \ renewcommand {\ macro} {texte de remplacement}
- \ renewcommand {\ macro} [argcount] {texte de remplacement}
Paramètres
Paramètre | Détails |
---|---|
\macro | La macro à définir |
argcount | Le nombre d'arguments attendus par la macro (facultatif) |
replacement text | Le texte de remplacement pour la macro. A l'intérieur de ce texte, #1 , #2 etc. sont remplacés par les arguments de macro. |
Définition de base des macros
Définir une nouvelle commande de base
Une macro peut être définie en utilisant \newcommand
. Par exemple:
\newcommand{\foo}{Just foo, you see?}
définit une macro \foo
qui s'étend à Just foo, you see?
. Il peut alors être utilisé comme toute commande intégrée, par exemple après cette définition:
He said: ``\foo''
se développe à
He said: ``Just foo, you see?''
Définir une nouvelle commande avec des arguments
Les macros peuvent également avoir des arguments. Le nombre d'arguments est donné comme argument facultatif entre le nom de la commande et le texte de remplacement. Dans le texte de remplacement, les arguments sont accessibles avec #1
, #2
etc. Par exemple:
\newcommand{\better}[2]{A #1 is better than a #2.}
\better{solution}{problem} % gives: A solution is better than a problem
Redéfinir une commande existante
Si une macro a déjà été définie, \newcommand
une erreur. Pour donner une nouvelle définition à une commande existante, \renewcommand
est utilisé à la place. Outre le nom différent, la syntaxe est exactement la même. Par exemple, après la définition de \foo
ci-dessus, on pourrait utiliser:
\renewcommand{\foo}{Another foo, please.}
Après cette redéfinition, la macro \foo
ne se développe plus en Just foo, you see?
mais à un Another foo, please.