LaTeX: créer un alias en mode mathématique

latex alias mathematique

LaTeX: créer un alias en mode mathématique

LaTex: créer un alias en mode mathématique peut s’avérer utile dès lors que l’on doive écrire une même chose beaucoup de fois. Regardons comment faire…

Qu’est-ce qu’un alias LaTeX en mode mathématique?

Un alias est une sorte de raccourci pour écrire quelque chose plus rapidement. Bien entendu, on a à l’esprit les macros. Par exemple:

\newcommand{\R}{\mathbb{R}}

permet d’écrire l’ensemble des nombres réels \(\mathbb{R}\). Mais ce n’est pas ce que j’ai à l’esprit.

La solution à laquelle je pense a été proposée sur ce fil de discussion.

Il s’agit en fait de pouvoir taper:

$5 * 3$

et voir apparaître:$$5 \times 3.$$

L’alias concerne donc ici le fait d’utiliser un symbole à la place d’une macro (en l’occurrence, la macro \times.

Une solution inspirée de celle donnée pour créer l’alias LaTeX en mode mathématique

Sans plus attendre, voici une solution pour créer un tel alias:

\documentclass{article}
\usepackage{amsmath,graphicx}
\def\mathdef#1#{%
	\mathcode`#1="8000
	\begingroup \lccode`~=`#1\lowercase{\endgroup\def~}%
}
\newcommand\alias[2]{%
	\mathdef #1{\mathbin{#2}}
}
\begin{document}
\alias{*}{\text{\scalebox{0.8}{$\times$}}}
\alias{/}{\div}
$2*3=6$

$5/8$
\end{document}

De la ligne 3 à la ligne 6, ce n’est que du pur \(\TeX\)… Langage plutôt compliqué à appréhender, mais qui ne fait pas peur à Christian Tellechea, alias un bon petit sur le forum mathematex, à l’origine de pas mal de packages utiles made in France, comme xstrings ou encore scratch.

Autant être honnête : je ne maîtrise pas du tout \(\TeX\) ! J’ai juste ajouté une macro \(\LaTeX\) en ligne 7 pour plus de confort pour la suite (ça, ça va… c’est du \(\LaTeX\)).

Aux lignes 11 et 12, j’ai donc créé deux alias:

  • le premier pour remplacer le symbole ” * ” par la macro ” \times ” tout en réduisant le symbole à 80% de sa taille d’origine;
  • le second pour remplacer le symbole ” / ” par la macro ” \div “.

C’est assez pratique quand on veut taper rapidement des calculs (pour les enseignants en primaire par exemple).

Cela dit, beaucoup d’éditeurs proposent l’auto-complétion. On aurait donc pu définir une macro tout simplement :

\newcommand{\timess}{\text{\scalebox{0.8}{$\times$}}}

et demander à notre éditeur de créer une auto-complétion sur cette nouvelle macro.

Un contre-exemple

Là où ça devient probélmatique, c’est pour des trucs un peu plus élaborés. Par exemple, quand je fais un chapitre sur les intégrales, je trouve assez pénible, même avec l’auto-complétion, d’écrire de multiples symboles d’intégration, tous accompagnés bien entendu du fameux dx, ou dt.

C’est ainsi que le code suivant:

\alias{i}{\displaystyle\int}
\alias{d}{\text{d}\kern-2pt}

$i_0^1f(x)dx$

donne:

Comme on peut le constater, l’alias ne se comporte pas de la même façon que précédemment quand il s’agit d’opérateurs.

Il vaudra mieux alors s’orienter vers la définition d’une macro, comme par exemple:

\newcommand{\intt}[4]{\displaystyle\int_{#1}^{#2}#3\;\text{d}#4}
$\intt{a}{b}{f(x)}{x}$

qui donne:

C’est assurément plus contraignant, mais bien moins problématique.

Stéphane Pasquet
Stéphane Pasquet

Laissez votre message