summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/frenchmath/frenchmath.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/frenchmath/frenchmath.dtx')
-rw-r--r--macros/latex/contrib/frenchmath/frenchmath.dtx121
1 files changed, 60 insertions, 61 deletions
diff --git a/macros/latex/contrib/frenchmath/frenchmath.dtx b/macros/latex/contrib/frenchmath/frenchmath.dtx
index 586972372b..edd050c10a 100644
--- a/macros/latex/contrib/frenchmath/frenchmath.dtx
+++ b/macros/latex/contrib/frenchmath/frenchmath.dtx
@@ -20,7 +20,7 @@
%<*package>
\NeedsTeXFormat{LaTeX2e}[2005/12/01]
\ProvidesPackage{frenchmath}
- [2024/02/20 v2.9 .dtx Typesetting mathematics according to French rules]
+ [2024/02/25 v2.10 .dtx Typesetting mathematics according to French rules]
%</package>
%<*driver>
\documentclass{ltxdoc}
@@ -182,39 +182,45 @@
% - compatibilité des options de lettres grecques avec unicode-math (XeLaTeX uniquement)
% -> nouvelles macros SaveGreekItalics et upgreekUndefined,
% - commentaires dans la doc pour la compatibilité avec unicode-math.}
+
+% \changes{v2.10}{22/02/2024}{
+% - Changements dans la doc concernant la gestion des lettres grecques et unicode-math.}
%
% \GetFileInfo{frenchmath.sty}
%
% \title{L'extension \textsf{frenchmath}\thanks{Ce document
-% correspond à \textsf{frenchmath}~\fileversion, dernière modification le 20/02/2024.}}
+% correspond à \textsf{frenchmath}~\fileversion, dernière modification le 25/02/2024.}}
% \author{Antoine Missier \\ \texttt{antoine.missier@ac-toulouse.fr}}
-% \date{20 février 2024}
+% \date{25 février 2024}
% \maketitle
%
% \section{Introduction}
-% Cette extension, inspirée de \textsf{mafr} de Christian Obrecht~\cite{MAFR},
+% Cette extension, inspirée à l'origine de \textsf{mafr} de Christian Obrecht~\cite{MAFR},
% permet le respect des règles typographiques des mathématiques françaises,
-% en particulier elle permet d'obtenir automatiquement
-% les majuscules en romain (lettres droites) plutôt qu'en italique
+% en particulier l'obtention automatique des
+% majuscules en romain (lettres droites) plutôt qu'en italique
% (voir~\cite{RTIN} et~\cite{IGEN}),
% et elle gère correctement les espacements
% pour les virgules, point-virgules et crochets.
-%
-% L'extension fournit en outre diverses macros francisées.
-% Mais contrairement à \textsf{mafr} nous avons choisi de ne pas
+% L'extension fournit en outre diverses macros francisées
+% \footnote{Contrairement à \textsf{mafr} nous avons choisi de ne pas
% conserver le même nom de commande pour substituer
-% des symboles français aux symboles anglais.
+% des symboles français aux symboles anglais.}.
+% Depuis la version 2.0, \textsf{frenchmath} propose en outre deux options permettant
+% de composer les minuscules grecques du mode mathématique en forme droite.
%
+% \medskip
% D'autres solutions existent pour composer les majuscules mathématiques en romain,
-% par exemple l'extension \textsf{unicode-math}~\cite{UNIC} mais qui doit être compilée
-% avec \XeLaTeX\ ou \LuaLaTeX\ (et doit être chargée \emph{avant} \textsf{frenchmath}) ;
-% pour pdf\LaTeX\, nous avons les extensions \textsf{fourier} de Michel Bovani~\cite{FOUR}
+% par exemple avec \XeLaTeX\ ou \LuaLaTeX\ et l'extension \textsf{unicode-math}~\cite{UNIC}.
+% Celle-ci peut être utilisée avec \textsf{frenchmath} à condition d'être chargée \emph{avant}.
+% Pour pdf\LaTeX\, nous avons les extensions \textsf{fourier} de Michel Bovani~\cite{FOUR}
% (avec la famille des fontes Adobe Utopia)
% ou encore \textsf{mathdesign} de Paul Pichaureau~\cite{DESIGN}
% (avec les polices Adobe Utopia, URW Garamond ou Bitstream Charter).
% Mais \textsf{frenchmath} fournit une solution générique
% s'adaptant à n'importe quelle police de caractères.
%
+% \medskip
% Certaines préconisations, telles que composer en lettre droite
% et non en italique le symbole différentiel,
% les constantes mathématiques i et e~\cite{IGEN},
@@ -235,9 +241,6 @@
% \textsf{tablvar}~\cite{TABL} qui permet de réaliser
% de jolis tableaux de variations, spécificité des mathématiques françaises.
%
-% Depuis la version 2.0, \textsf{frenchmath} propose deux options permettant
-% de composer les minuscules grecques du mode mathématique en forme droite.
-%
% \section{Utilisation}
%
% \subsection{Majuscules mathématiques}
@@ -245,15 +248,15 @@
% \og les lettres majuscules sont toujours
% composées en romain \fg ($A, B, C\ldots$) et non en italique
% (cf. \cite{RTIN} p.107, voir aussi~\cite{IGEN}).
-% En utilisant \XeLaTeX\ ou \LuaLaTeX\ avec des polices mathématiques OpenType,
-% cette convention est assez commode à mettre en œuvre
-% \footnote{Voir les options \texttt{math-style=upright}
-% ou \texttt{math-style=french} de l'extension \textsf{unicode-math}.} ;
+% En utilisant \XeLaTeX\ ou \LuaLaTeX,
+% avec l'option \texttt{math-style=french} de l'extension \textsf{unicode-math},
+% cette convention est assez commode à mettre en œuvre,
+% y compris avec les polices TrueType ou OpenType ;
% par contre, avec \LaTeX\ ou pdf\LaTeX, elle est peu respectée
% et les extensions précitées ne fonctionnent qu'avec des polices particulières.
% Par défaut \textsf{frenchmath} compose automatiquement les majuscules
% mathématiques latines en romain,
-% quelle que soit la fonte utilisée.
+% quelle que soit la police utilisée.
% Par exemple |\[ P(X)=\sum_{i=0}^{n} a_i X^i \]| donne avec \textsf{frenchmath}
% \[ P(X)=\sum_{i=0}^{n}a_i X^i. \]
%
@@ -300,14 +303,13 @@
% \end{itemize}
%
% Cette deuxième approche parait meilleure, néanmoins \textsf{ncccomma}
-% ne fonctionne pas avec avec \textsf{babel-french} utilisé conjointement avec
-% l'option \texttt{autolanguage}
+% ne fonctionne pas avec \textsf{babel-french} utilisé conjointement avec
+% l'extension \textsf{numprint} et son option \texttt{autolanguage}
% \footnote{L'option \texttt{autolanguage} de \textsf{numprint} utilisée
% conjointement avec l'option \texttt{french} de \textsf{babel} garantit un espacement
% correct entre les groupes de trois chiffres dans les grands nombres,
% qui doit être une espace insécable et non dilatable~\cite{RTIN},
-% légèrement plus grande que l'espace que l'on obtient sans cette option.}
-% de l'extension \textsf{numprint}.
+% légèrement plus grande que l'espace que l'on obtient sans cette option.}.
% En outre \textsf{ncccomma} ne fonctionne pas non plus
% avec l'extension \textsf{unicode-math} (et bugue à l'appel |\setmathfont|).
% Dans son article \emph{Intelligent commas}~\cite{BECC},
@@ -316,10 +318,10 @@
% Le code a donc été revu et simplifié afin de régler proprement ces incompatibilités.
% Comme bien des pays utilisent la virgule comme
% séparateur décimal, il fait l'objet d'une extension séparée,
-% \textsf{decimalcomma}~\cite{DECC}, qui est chargée par \textsf{frenchmath}
+% \mbox{\textsf{decimalcomma}}~\cite{DECC}, qui est chargée par \textsf{frenchmath}
% (depuis la version 2.7).
-% Mais si on utilise \textsf{unicode-math}, il est alors impératif de le charger
-% \emph{avant} \textsf{frenchmath}
+% Mais, si on utilise \textsf{unicode-math}, il est alors impératif de charger
+% \textsf{frenchmath} \emph{après}.
% \footnote{L'extension \textsf{icomma} présente la même limitation et doit être chargée
% après \textsf{unicode-math}.}.
%
@@ -508,7 +510,7 @@
%
% Signalons que, pour l'extension \textsf{mathptmx} (basée sur la police de texte Times),
% |\jmath| n'est pas disponible, mais \textsf{frenchmath} contourne ce problème
-% en chargeant alors \textsf{dotlessj}~\cite{DLJ} de David Carlisle,
+% en chargeant alors \textsf{dotlessj} de David Carlisle~\cite{DLJ},
% ce qui permet aux macros ci-dessus de fonctionner normalement.
%
% \subsection{Lettres grecques}
@@ -516,9 +518,9 @@
% pour les mathématiques françaises ne semble pas aussi claire que pour les lettres romaines
% et il y a parfois divergence sur ce point.
% Beaucoup recommandent l'usage des lettres grecques
-% minuscules en forme droite~\cite{FOUR}~\cite{DESIGN}~\cite{PMISO}, mais certains
+% minuscules en forme droite (\cite{FOUR}~\cite{DESIGN}~\cite{PMISO}), mais certains
% auteurs préconisent l'italique,
-% comme pour toutes les variables mathématiques~\cite{AA}.
+% comme pour toutes les variables mathématiques (\cite{AA}).
% Le lexique des règles typographiques en usage à l’Imprimerie Nationale~\cite{RTIN}
% les compose en forme droite et relativement grasses (p.108)
% sans préciser s'il s'agit vraiment d'une règle
@@ -573,18 +575,16 @@
%
% \medskip
% L'extension \textsf{frenchmath} fournit les options décrites ci-dessous
-% afin d'obtenir les lettres grecques en forme droite.
+% qui permettent d'obtenir les lettres grecques en forme droite.
% Ces options peuvent être utilisées y compris avec \textsf{unicode-math},
-% mais seulement en compilant avec \XeLaTeX\ et non pas \LuaLaTeX\
-% (et \textsf{unicode-math} doit être chargé
-% \emph{avant} \textsf{frenchmath}).
-%
+% mais \textsf{frenchmath} doit toujours être chargé
+% \emph{après} \textsf{unicode-math}.
%
% \medskip
% \DescribeEnv{[lgrmath]}
% En activant l'option \texttt{lgrmath}, \textsf{frenchmath}
% charge l'extension du même nom avec son option \texttt{style=french}
-% et la fonte fcm (de l'extension \textsf{cm-lgc})
+% et la fonte \texttt{fcm} (de l'extension \textsf{cm-lgc})
% \footnote{Évidemment il faut que \textsf{cm-lgc} soit installée
% sur votre distribution sans quoi la fonte de substitution LGR/cmr/m/n sera utilisée.}.
% Celle-ci se marie particulièrement bien avec la police usuelle Latin Modern.
@@ -598,15 +598,16 @@
%
% \DescribeMacro{\SaveGreekItalics}
% On peut aussi choisir d'autres fontes en chargeant l'extension
-% \textsf{lgrmath} indépendamment de \textsf{frenchmath} et sans son option \texttt{lgrmath}
+% \textsf{lgrmath} indépendamment de \textsf{frenchmath}
% (voir par exemple les options \texttt{font=Alegreya-LF} ou \texttt{font=Cochineal-LF}
% de \textsf{lgrmath}).
-% Dans ce cas, si on veut conserver les lettres italiques d'origine,
+% Dans ce cas, il ne faut pas activer l'option \texttt{lgrmath} de \textsf{frenchmath}
+% et, si l'on veut conserver les lettres italiques d'origine,
% il faut précéder le chargement
% de \textsf{lgrmath} de la commande |\SaveGreekItalics| ;
-% et si on utilise \textsf{unicode-math}, il faut en outre placer cette commande
-% et le |\usepackage[...]{lgrmath}| dans un |\AtBeginDocument|.
-
+% avec \textsf{unicode-math}, il faut en outre placer cette commande
+% dans un |\AtBeginDocument| avec |\usepackage[style=french,font=...]{lgrmath}|
+% et \emph{après} le chargement de \textsf{unicode-math}.
%
% \medskip
% \DescribeEnv{[upgreek]}
@@ -620,28 +621,26 @@
% utilisant la police Adobe Symbol et qui produit des lettres grecques assez grasses :
% $\upalphasym$, $\upbetasym$, \ldots, $\uppisym$, etc.
%
-% Si l'on veut, par contre, utiliser l'extension \textsf{upgreek}
+% Si l'on veut utiliser l'extension \textsf{upgreek}
% avec l'une des deux autres options disponibles, \texttt{Euler}
% (qui produit $\upalpha, \upbeta, \ldots, \uppi$, etc.)
% ou \texttt{Symbolsmallscale},
% il faut charger l'extension \textsf{upgreek} avec l'option souhaitée
-% indépendamment de \textsf{frenchmath}.
-% Mais en conservant toutefois l'option \texttt{upgreek}, \textsf{frenchmath}
-% redéfinira les commandes |\alpha|, |\beta|, etc.
-% pour composer automatiquement les lettres en forme droite
-% (comme alias de |\upalpha|, |\upbeta|\ldots).
-%
-% \DescribeMacro{\upgreekUndefined}
-% Comme pour \textsf{lgrmath}, si on veut que les formes italiques d'origine
+% indépendamment de \mbox{\textsf{frenchmath}}.
+% Par contre, pour que les commandes |\alpha|, |\beta|\ldots correspondent
+% aux formes droites (comme alias de |\upalpha|, |\upbeta|\ldots),
+% il faut ici conserver l'option \texttt{upgreek} de \textsf{frenchmath}.
+% Comme pour \textsf{lgrmath}, si l'on veut que les formes italiques d'origine
% restent toujours disponibles avec les commandes
-% |\italpha|, |\itbeta|, \ldots, |\itpi|, etc.,
+% |\italpha|, |\itbeta|, etc.,
% il faut précéder le chargement de l'extension \textsf{upgreek} de la commande
% |\SaveGreekItalics| ;
+% \DescribeMacro{\upgreekUndefined}
% et si l'on utilise \textsf{unicode-math}, il faut en outre ajouter la commande
% |\upgreekUndefined| avant le |\usepackage[...]{upgreek}| et les trois
-% dans un |\AtBeginDocument| placé entre le chargement de \textsf{unicode-math}
+% dans un |\AtBeginDocument| placé \emph{entre} le chargement de \textsf{unicode-math}
% et celui de \textsf{frenchmath}
-% \footnote{Tout cela est bien contraignant mais c'est lié au fonctionnement capricieux
+% \footnote{Tout cela est bien contraignant, mais c'est lié au fonctionnement capricieux
% de \textsf{unicode-math} qui génère de nombreuses incompatibilités. Ceci dit,
% on n'a en principe besoin de nos options de lettres grecques droites que si l'on n'est
% pas satisfait de celles fournies par \textsf{unicode-math}.}.
@@ -665,7 +664,7 @@
% donne accès aux lettres en forme droite \textalpha, \textbeta, \ldots,
% \textpi, etc.,
% mais en mode texte avec |\textalpha|, |\textbeta|, etc.
-% Ces glyphes, voisines de la fonte fcm accessible avec \textsf{lgrmath},
+% Ces glyphes, semblables à celles de la fonte \texttt{lmr} accessible avec \textsf{lgrmath},
% se marient également bien avec la police Latin Modern,
% par contre le thêta produit, \texttheta, n'est pas vraiment
% celui qui est d'usage en mathématiques.
@@ -854,14 +853,14 @@
% pour que cela fonctionne avec \textsf{unicode-math} et
% pour laisser à l'utilisateur la possibilité de charger \textsf{upgreek}
% après \textsf{frenchmath} et éviter un conflit d'option.
-% On sauvegarde les lettres grecques d'origine dans les macros |\italpha|, \ldots, |\itomega|,
-% grâce à la commande |\SavedGreekItalics|.
+% On sauvegarde les lettres grecques d'origine dans les macros |\italpha|, \ldots,
+% |\itomega|, grâce à la commande |\SavedGreekItalics|.
% La macro |\upgreekUndefined| ne sert que si l'on veut utiliser \textsf{upgreek}
% avec \textsf{unicode-math} : elle permet de \og vider \fg la définition
% de |\upalpha|, |\upbeta|\ldots, car sinon leur redéfinition par \textsf{upgreek}
% est impossible.
% \begin{macrocode}
-\newcommand\SaveGreekItalics{
+\providecommand\SaveGreekItalics{% pourrait être définie ailleurs
\let\italpha\alpha
\let\itbeta\beta
\let\itgamma\gamma
@@ -892,7 +891,7 @@
\let\itvarphi\varphi
}
-\newcommand\upgreekUndefined{
+\providecommand\upgreekUndefined{
\let\upalpha\@undefined
\let\upbeta\@undefined
\let\upgamma\@undefined
@@ -1038,9 +1037,9 @@
% \bibitem{DECC} \emph{The \textsf{decimalcomma} package}. Antoine Missier,
% CTAN, v1.4 30/12/2023.
% \bibitem{BRACKETS} \emph{Intelligent brackets -- The \textsf{ibrackets} package},
-% Antoine Missier, v1.2 26/07/2023.
+% Antoine Missier, CTAN, v1.2 26/07/2023.
% \bibitem{TOOLS} \emph{The \textsf{mathtools} package},
-% Morten Høgholm, Lars Madsen and the \LaTeX3 project, CTAN v1.29 29/06/2022.
+% Morten Høgholm, Lars Madsen and the \LaTeX3 project, CTAN, v1.29 29/06/2022.
% \bibitem{MATAL} \emph{The \textsf{mathalpha}, \textsc{aka} \textsf{mathalfa} package},
% Michael Sharpe, CTAN, v1.143 18/11/2021.
% \bibitem{DLJ} \emph{\textsf{dotlessj}}, David Carlisle, CTAN, v0.03 09/12/1998.