% \iffalse meta-comment % % Copyright (C) 2019-2024 by Antoine Missier % % This file may be distributed and/or modified under the conditions of % the LaTeX Project Public License, either version 1.3 of this license % or (at your option) any later version. The latest version of this % license is in: % % http://www.latex-project.org/lppl.txt % % and version 1.3 or later is part of all distributions of LaTeX version % 2005/12/01 or later. % \fi % % \iffalse %<*driver> \ProvidesFile{frenchmath.dtx} % %<*package> \NeedsTeXFormat{LaTeX2e}[2005/12/01] \ProvidesPackage{frenchmath} [2024/05/04 v3.0 .dtx Typesetting mathematics according to French rules] % %<*driver> \documentclass{ltxdoc} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage[french]{babel} \usepackage{lmodern} \usepackage[lgrmath,savegreeks,otherfonts]{frenchmath} \usepackage{metalogo} % pour les logos XeLaTeX et LuaLaTeX \usepackage{sectsty} \usepackage{xcolor} %\usepackage{textalpha} \usepackage{tabls} \definecolor{darkbrown}{rgb}{0.5,0.1,0.1} \allsectionsfont{\color{darkbrown}} % symbole \emptyset de computer modern au cas où on change la police de ce doc : \def\CMemptyset{\mathord{\text{\usefont{OMS}{cmsy}{m}{n}\symbol{'73}}}} % pour avoir le mu de micro : \DeclareTextSymbol{\textmicro}{TS1}{181} %\DeclareTextSymbolDefault{\textmicro}{TS1} \DisableCrossrefs %\CodelineIndex %\RecordChanges \usepackage{hyperref} \hypersetup{% colorlinks, linkcolor=blue, citecolor=red, pdftitle={frenchmath}, pdfsubject={LaTeX package}, pdfauthor={Antoine Missier} } \begin{document} %\MakeShortVerb" % incompatible si placé avant \DocInput{frenchmath.dtx} %\PrintChanges %\PrintIndex \end{document} % % \fi % % \CheckSum{320} % % \CharacterTable % {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z % Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z % Digits \0\1\2\3\4\5\6\7\8\9 % Exclamation \! Double quote \" Hash (number) \# % Dollar \$ Percent \% Ampersand \& % Acute accent \' Left paren \( Right paren \) % Asterisk \* Plus \+ Comma \, % Minus \- Point \. Solidus \/ % Colon \: Semicolon \; Less than \< % Equals \= Greater than \> Question mark \? % Commercial at \@ Left bracket \[ Backslash \\ % Right bracket \] Circumflex \^ Underscore \_ % Grave accent \` Left brace \{ Vertical bar \| % Right brace \} Tilde \~} % % % \changes{v0.1}{27/12/2011}{Version personnelle préliminaire} % % \changes{v1.0}{15/01/2019}{ % - Première version publiée, création des fichiers dtx et ins.} % % \changes{v1.1}{07/04/2019}{ % - Nouvelles macros pour les repères (Oij, Oijk), % - ajouté ensuremath dans curs.} % \changes{v1.1}{15/04/2019}{ % - Changements mineurs dans la documentation.} % % \changes{v1.2}{25/04/2019}{ % - L'option capsrm fonctionne à présent avec beamer, % - ajouté Ouv, modifications du fichier README.md.} % \changes{v1.2}{27/04/2019}{ % - capsrm -> capsup.} % % \changes{v1.3}{15/05/2019}{ % - Intégration de icomma et psset{comma=true}, % - changements dans la documentation.} % % \changes{v1.4}{2019/05/22}{ % - Changement de la définition de fonte up -> operators, % car incompatibilité avec l'extension unicode-math.} % % \changes{v1.5}{2020/11/02}{ % - Ajout des macros étoilées pour les repères (O;i,j) et (O;i,j,k) % - ajout des macros pour les bases (i,j) et (i,j,k).} % % \changes{v1.6}{2022/10/16}{ % - Remplacement de icomma par ncccomma, grâce à un "patch" de J. F. Burnol, % - amélioration du code redéfinissant les majuscules mathématiques, % - suppression de l'option capsup (capsit à false suffit), % - remplacement de tgh par th pour la tangente hyperbolique.} % % \changes{v2.0}{2022/10/24}{ % - Nouvelle option permettant de définir les lettres grecques minuscules en forme droite, % - correction de bug avec la commande \bslash qui n'était pas définie, % - compatibilité avec mathdesign.} % % \changes{v2.1}{11/11/2022}{ % - Reprise du doc pour les lettres grecques, les crochets et les références ; % - nouvelle commande paral*, % - '\mathop{\operatorfont th}' remplacé par '\operatorname{th}'.} % % \changes{v2.2}{15/11/2022}{ % - Quelques changements dans la doc, police Palatino avec mathpazo, % - commande paral redéfinie, la commande paral* devient inutile.} % % \changes{v2.3}{16/11/2022}{ % - Bug corrigé dans la commande Vect.} % \changes{v2.3}{20/11/2022}{ % - Ajout dans la doc : frenchmath doit être chargé après babel.} % \changes{v2.3}{19/12/2022}{ % - Suppression des warnings systématiques, % - utilisation de \string à la place de \bslash.} % \changes{v2.3}{25/12/2022}{ % - Nouvelle option lgrmath, % - utilisation de l'extension ibrackets, % - définition de cosec et cosech.} % % \changes{v2.4}{22/01/2023}{ % - Option noibrackets car incompatibilité avec DeclarePairedDelimiter, % - warning si compilation avec LuaLaTeX et babel-french non chargé.} % % \changes{v2.5}{24/02/2023}{ % - Mention des macros MathUp et MathIt de mismath dans la doc, % - remplacement des ifthenelse par des if... fi, % - simplification du code pour la mise en majuscule, % - chargement conditionnel de dotlessj pour mathptmx.} % % \changes{v2.6}{08/03/2023}{ % - La macro curs ne doit et ne peut plus être utilisée en mode texte.} % % \changes{v2.7}{06/12/2023}{ % - Nouveau package decimalcomma pour la virgule en mode math.} % \changes{v2.7}{08/12/2023}{ % - Changements dans la doc : lettres grecques en dernier, retour à la police lmodern.} % \changes{v2.7}{12/12/2023}{ % - upgreek charge l'option Symbol et non plus Euler, % - sauvegarde des lettres grecques d'origine avec lgrmath comme pour upgreek, % - réécriture de l'introduction, mention de unicode-math avec XeLaTeX ou LuaLaTeX, % - PackageWarning remplacé par PackageInfo, % - optimisation du code pour les majuscules avec la macro apply.} % % \changes{v2.8}{22/01/2024}{ % - Prise en compte de l'extension mathalpha qui fournit d'autres lettres cursives.} % % \changes{v2.9}{17/02/2024}{ % - Compatibilité entre amssymb et unicode-math réglée (par des relax) % -> permet à la macro varnothing de garder l'aspect de amssymb, % - 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.} % % \changes{v3.0}{04/03/2024}{ % - Redéfinition de cmod qui correspond au pod de amsmath, % - Modification du chargement conditionnel de dotlessj, % - Copie du code de legslant, geqslant, varnothing sans importer amssymb, % - Utilisation de AtEndPreamble pour pouvoir charger frenchmath avant unicode-math, % - Ajout d'une table des matières.} % \changes{v3.0}{12/04/2024}{ % - Développement et intégration de l'extension mathgreeks % - Mise à jour de la documentation} % % \GetFileInfo{frenchmath.sty} % % \title{L'extension \textsf{frenchmath}\thanks{Ce document % correspond à \textsf{frenchmath}~\fileversion, dernière modification le 04/05/2024.}} % \author{Antoine Missier \\ \texttt{antoine.missier@ac-toulouse.fr}} % \date{4 mai 2024} % \maketitle % \tableofcontents % % \section{Introduction} % 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 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 % \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.}. % Depuis la version 2.0, \textsf{frenchmath} propose en outre des 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 avec \XeLaTeX\ ou \LuaLaTeX\ et l'extension \textsf{unicode-math}~\cite{UNIC}. % Pour pdf\LaTeX\, nous avons les extensions \textsf{fourier} de Michel Bovani~\cite{FOUR} % (avec la famille des fontes Adobe Utopia), % \textsf{mathdesign} de Paul Pichaureau~\cite{DESIGN} % (avec les polices Adobe Utopia, URW Garamond ou Bitstream Charter) % ou encore \textsf{kpfonts} de Christophe Caignaert~\cite{KPF}. % Mais \textsf{frenchmath} fournit une solution générique % s'adaptant à n'importe quelle police de caractères % (et compatible avec \textsf{unicode-math}). % % \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}, % sont des règles internationales~\cite{TYPMA}~\cite{NIST}~\cite{ICTNS}. % Elles ne sont donc pas implémentées dans \textsf{frenchmath} % \footnote{Nous proposons pour cela l'extension \textsf{mismath}~\cite{MIS} % qui fournit diverses macros pour les mathématiques internationales.}, % tout comme diverses commandes que l'on trouve dans \textsf{mafr} % et qui ne sont pas spécifiques aux mathématiques françaises : % c'est le cas de |\vect| % \footnote{Pour de jolis vecteurs on dispose de l'extension \textsf{esvect}~\cite{VECT} % d'Eddie Saudrais.}, % des ensembles de nombres |\R|, |\N|\ldots (pour $\mathbf{R}, \mathbf{N}\ldots$) % ainsi que celles relatives à la réalisation de feuilles d'exercices. % % Mentionnons par ailleurs l'extension \textsf{tdsfrmath} de Yvon Henel~\cite{FRM} % qui fournit également beaucoup de commandes francisées ou encore % \textsf{tablvar}~\cite{TABL} qui permet de réaliser % de jolis tableaux de variations, spécificité des mathématiques françaises. % % \section{Utilisation} % % \subsection{Majuscules mathématiques} % Dans les mathématiques françaises, pour l'alphabet latin, % \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 l'option \texttt{math-style=french} de l'extension \textsf{unicode-math}, % cette convention est commode à mettre en œuvre, % par contre, avec \LaTeX\ ou pdf\LaTeX, elle est peu respectée % et les extensions comme \textsf{mathdesign} (avec \texttt{uppercase=upright}), % \textsf{fourier} (avec \texttt{upright}) ou \textsf{kpfonts} (avec \texttt{uprightRoman}) % 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 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. \] % % \DescribeEnv{[capsit]} % L'option \texttt{capsit} de \textsf{frenchmath} % permet de désactiver la composition des majuscules du mode mathématique % en romain pour conserver la composition par défaut (en italique) : % |\usepackage[capsit]{frenchmath}|. % % \medskip % Que l'option soit activée ou pas, il est toujours possible de changer ponctuellement % l'aspect d'une lettre particulière, avec les macros \LaTeX\ |\mathrm| et |\mathit|. % D'autre part l'extension \textsf{mismath}~\cite{MIS} fournit deux bascules puissantes % |\MathUp| et |\MathIt| qui agissent de manière globale (ou locale dans un environnement) % et permettent à tout moment % de changer la \og famille \fg d'une lettre particulière ; % une commande générique |\apply| permet y compris d'appliquer ces macros sur une liste. % Ainsi |\apply\MathIt{F,G,X}| remettra en italique les lettres $\mathit{F,G}$ et $\mathit{X}$. % % \subsection{Virgule, point-virgule et crochets} % % \DescribeMacro{virgule} % Dans le mode mathématique de \LaTeX, la virgule est toujours, par défaut, % un symbole de ponctuation et sera donc suivie d'une espace. % Ceci est légitime dans une liste ou un intervalle : % |$[a,b]$| donne $[a,b]$. Mais, en français, la virgule sert aussi de séparateur décimal % pour les nombres et ne doit, dans ce cas, pas être suivie d'espace ; or |$12,5$| donne % $12, 5$ au lieu de $12,5$. % L'extension \textsf{babel}, avec l'option |french|~\cite{BABEL}, fournit deux bascules : % |\DecimalMathComma| et |\StandardMathComma|, qui permettent d'adapter % le comportement de la virgule du mode mathématique. % % Deux autres extensions bien commodes permettent néanmoins de se passer de ces bascules % \footnote{Dans ce cas il ne faut pas utiliser les bascules, % au risque de rendre ces extensions inopérantes.}. % En mode mathématique : % \begin{itemize} % \item avec \textsf{icomma} (intelligent comma) de Walter Schmidt~\cite{ICOMMA}, % la virgule se comporte comme un caractère de ponctuation si elle est suivie d'une espace, % sinon c'est un caractère ordinaire ; % \item avec \textsf{ncccomma} de Alexander I.~Rozhenko~\cite{NCC}, % la virgule se comporte comme un caractère ordinaire si elle est suivie d'un chiffre % (sans espace), sinon c'est un caractère de ponctuation. % \end{itemize} % % Cette deuxième approche est plus souple, néanmoins \textsf{ncccomma} % ne fonctionne pas avec \textsf{babel-french} utilisé conjointement avec % l'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}. % 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}, % Claudio Beccari propose une autre solution, % voisine de \textsf{ncccomma}, mais qui produit le même type d'incompatibilités. % Le code a donc été revu afin de régler ces incompatibilités. % Comme de nombreux pays utilisent la virgule comme % séparateur décimal, il fait l'objet d'une extension séparée, % \mbox{\textsf{decimalcomma}}~\cite{DECC}, qui est chargée par \textsf{frenchmath} % (depuis la version 2.7). % Bien que \textsf{decimalcomma} ne fonctionne avec \textsf{unicode-math} % que s'il est chargé après % \footnote{L'extension \textsf{icomma} présente la même limitation et doit être chargée % après \textsf{unicode-math}.}, % \textsf{frenchmath} s'est affranchi de cette contrainte (depuis la version 2.11). % % \medskip % Lorsque l'on utilise l'extension \textsf{pstricks-add} de \textsf{PSTricks} % pour tracer des axes de coordonnées, l'appel |\psset{comma=true}| % permet d'avoir les graduations avec une virgule au lieu du point décimal. % Ce réglage est effectué par défaut ici. % % \medskip % \DescribeMacro{point-virgule} % Le symbole \og;\fg\ a été redéfini pour le mode mathématique % car l'espace précédant le point-virgule est incorrecte en français % |$x \in [0,25 ; 3,75]$| donne % $x\in [0,25 \mathpunct; 3,75 ]$ sans \textsf{frenchmath} et $x\in [0,25 ; 3,75]$ % avec \textsf{frenchmath} ; % le comportement de \og ;\fg devient identique à celui de \og:\fg. % % \bigskip % \DescribeMacro{crochets} % Alors que les Anglais utilisent généralement les parenthèses % pour les intervalles ouverts $(0, +\infty)$, l'usage en français est d'utiliser % les crochets $]0, +\infty[$. Mais comme cela n'est pas prévu par \LaTeX, % les espaces seront souvent incorrectes. % Nous avons redéfini les crochets dans l'extension \textsf{ibrackets}~\cite{BRACKETS} % qui est chargée par \textsf{frenchmath}, % \DescribeMacro{[noibrackets]} % sauf si on la désactive avec l'option \texttt{noibrackets} % \footnote{D'autres solutions existent, % par exemple avec l'extension \textsf{interval} % ou encore avec la macro \texttt{\string\DeclarePairedDelimiter} % de \textsf{mathtools}~\cite{TOOLS}, mais utilisée avec des crochets, % cette dernière est incompatible avec \textsf{ibrackets}, % d'où la possibilité de désactiver \textsf{ibrackets}.}. % Le code % |$x\in ]-\pi, 0[ \cup ]2\pi, 3\pi[$| % produira % \begin{eqnarray*} % & x\in ]-\pi, 0[ \cup ]2\pi, 3\pi[ \mbox{\quad avec \textsf{ibrackets}},\\ % \mbox{au lieu de} & x\in \mathclose{]}-\pi, 0 \mathopen{[} % \cup \mathclose{]} 2\pi, 3\pi \mathopen{[} % \mbox{\quad sans \textsf{ibrackets}}. % \end{eqnarray*} % % Avec \textsf{ibrackets}, un crochet devient un caractère ordinaire, % sauf s'il est immédiatement suivi par un signe + ou - (sans espace), auquel cas % c'est un délimiteur ouvrant. % Si la borne de gauche possède un signe - (ou +), % \emph{il ne faut pas laisser d'espace entre le premier crochet % et le signe}: par exemple |$x \in ] -\infty, 0]$| produit % $x \in ] -\infty, 0]$ au lieu de $x \in ]-\infty, 0]$. % Mais au contraire lorsque l'on veut faire de l'algèbre sur les intervalles, % \emph{il faut laisser une espace entre le second crochet et l'opération} + ou --, % par exemple, |$[a,b] +[c,d]$| donne $[a,b] +[c,d]$ % mais |$[a,b]+ [c,d]$| produit $[a,b]+ [c,d]$. % % En cas de comportement problématique, par exemple si % une coupure de ligne se produit entre les deux crochets d'un intervalle, % il est toujours possible de transformer alors ces crochets en délimiteurs % avec |\left| et |\right|. % % \subsection{Quelques macros et alias utiles} % % \DescribeMacro{\curs} % Les lettres cursives ($\curs{A}, \curs{B}, \curs{C}, \curs{D}\ldots$), % sont composées avec |\mathscr|, ou son alias |\curs|, % et sont différentes de celles obtenues avec |\mathcal| % \footnote{L'extension \textsf{calrsfs} fournit les mêmes cursives mais en redéfinissant % la commande \texttt{\string\mathcal}.} % ($\mathcal{A}, \mathcal{B}, \mathcal{C}, \mathcal{D}\ldots$). % En principe \textsf{frenchmath} charge l'extension \textsf{mathrsfs} % qui fournit ces lettres cursives, % sauf si la commande |\mathscr| est définie par ailleurs, % en particulier si on utilise l'extension \textsf{mathdesign}~\cite{DESIGN} % ou l'option \texttt{scr} de \textsf{mathalpha}~\cite{MATAL} % \footnote{L'extension \textsf{mathalpha} de Michael Sharpe % permet d'accéder à différentes variantes élégantes de lettres calligraphiques, % par exemple avec les options \texttt{scr=boondox}, \texttt{scr=rsfso} ou \texttt{scr=kp}.}. % % \medskip % \DescribeMacro{\infeg} \DescribeMacro{\supeg} % Les relations $\infeg$ et $\supeg$ s'obtiennent avec les commandes |\infeg| et |\supeg| % et diffèrent des versions anglaises de |\leq| ($\leq$) et |\geq| ($\geq$). % Ce sont des alias de |\leqslant| et |\geqslant| de l'extension \textsf{amssymb} % (non chargée par \textsf{frenchmath}). % % \medskip % \DescribeMacro{\vide} % Le symbole de l'ensemble vide $\vide$ % s'obtient avec |\vide| (alias de la commande |\varnothing| % de l'extension \textsf{amssymb}) ; % il diffère de celui obtenu avec |\emptyset|, % particulièrement laid dans la fonte classique Latin Modern : $\CMemptyset$. % % \DescribeMacro{\AMSvarnothing} % Avec \textsf{unicode-math} et la fonte mathématique Latin Modern Math % (appelée avec |\setmathfont|), |\varnothing| produit le même glyphe % laid que |\emptyset|. Pour corriger cela, on dispose de la commande % |\AMSvarnothing|, qui doit être appelée dans le préambule % et permet d'obtenir le même glyphe que celui de \textsf{amssymb}. % % \medskip % \DescribeMacro{\paral} % La commande |\paral| fournit la \emph{relation} % \footnote{Pour noter que deux objets sont perpendiculaires, on utilise % \texttt{\string\perp} : $\curs{D}\perp\curs{D}'$, % défini comme une \emph{relation} mathématique plutôt que % \texttt{\string\bot} défini comme un \emph{symbole} (les espacements diffèrent).} % du parallélisme : $\curs{D}\paral\curs{D}'$, % plutôt que sa version anglaise |\parallel| : $\curs{D}\parallel\curs{D}'$. % % \medskip % \DescribeMacro{\ssi} % La commande |\ssi| produit le texte \og \ssi \fg. % % \medskip % \DescribeMacro{\cmod} % Le modulo se compose normalement entre parenthèses, avec |\pod| ou |\pmod|, % mais, en français, on le rencontre aussi entre crochets, % ce que permet la commande |\cmod|, en respectant le bon espacement % propre au modulo : $53 \equiv 5 \cmod{12}$. % % \subsection{Identifiants de \og fonctions\fg classiques} % % \DescribeMacro{\pgcd} \DescribeMacro{\ppcm} % En arithmétique, nous avons les classiques |\pgcd| et |\ppcm|, % qui diffèrent de leur version anglaise |\gcd| et |\lcm| % \footnote{Cette dernière n'est pas implémentée en standard dans \LaTeX\ % (mais dans \textsf{mismath}~\cite{MIS}).}. % % \medskip % \DescribeMacro{\card} \DescribeMacro{\Card} % Pour le cardinal d'un ensemble, nous proposons |\card|, % cité dans~\cite{RTIN} et~\cite{AA}, % ou |\Card|, qui est aussi d'usage courant (cf. Wikipedia). % % \medskip % \DescribeMacro{\Ker} \DescribeMacro{\Hom} % \LaTeX\ fournit les macros % |\ker| et |\hom|, alors que l'usage français est souvent % de commencer ces noms par une majuscule pour obtenir $\Ker$ % \footnote{La commande \texttt{\string\Im} existe déjà pour la % partie imaginaire des nombres complexes et produit $\Im$ ; % elle est redéfinie en Im par l'extension \textsf{mismath} % et peut aussi être utilisée pour l'image.} % et $\Hom$. % % \medskip % \DescribeMacro{\rg} \DescribeMacro{\Vect} % Le rang d'une application linéaire ou d'une matrice ($\rg$) s'obtient avec la commande |\rg| % et l'espace vectoriel engendré par une famille de vecteurs avec |\Vect|. % % \medskip % \DescribeMacro{\ch} \DescribeMacro{\sh} \DescribeMacro{\th} % En principe, les fonctions hyperboliques s'écrivent en français % avec les macros \LaTeX\ standard |\cosh|, |\sinh|, |\tanh|. % Néanmoins les écritures $\ch x$, $\sh x$ et $\th x$, qui sont la norme % avec les langues d'Europe de l'Est (voir \cite{COMP}), % sont aussi utilisées en français~\cite{RTIN}. % On les obtient avec les commandes |\ch|, |\sh| et |\th| % \footnote{La commande \texttt{\string\th} existe déjà, pour le mode texte uniquement, % et produit \th ; % elle a été redéfinie, uniquement pour le mode mathématique.}. % % \medskip % \DescribeMacro{\cosec} \DescribeMacro{\cosech} % La fonction cosécante (inverse du sinus) s'obtient avec la macro |\csc|, mais en français, % on utilise aussi |\cosec|~\cite{RTIN} et |\cosech| pour la cosécante hyperbolique % \footnote{La fonction sécante est définie en standard par \LaTeX\ % avec \texttt{\textbackslash sec} et la sécante hyperbolique \texttt{\textbackslash sech} % est définie par \textsf{mismath}~\cite{MIS}.}. % % \subsection{Bases et repères} % % \DescribeMacro{\Oij} \DescribeMacro{\Oijk} % Les repères classiques du plan ou de l'espace seront composés % avec des hauteurs de flèches homogénéisées : % |\Oij| compose \Oij, |\Oijk| compose \Oijk et |\Ouv| compose \Ouv % (utilisé dans le plan complexe). % \DescribeMacro{\Ouv} % Ces commandes peuvent être utilisées sans expliciter les délimiteurs du mode mathématique. % % \DescribeMacro{\Oij*} \DescribeMacro{\Oijk*} \DescribeMacro{\Ouv*} % Les versions étoilées utilisent le point-virgule et non la virgule % comme séparateur après le point O, comme mentionné dans~\cite{RTIN}. % On obtient \Oij*, \Oijk*, \Ouv*. % % \medskip % \DescribeMacro{\ij} \DescribeMacro{\ijk} % Enfin les macros |\ij| % \footnote{Notons que la macro \texttt{\string\ij} existe déjà % (ligature entre i et j pour le hollandais) ; elle a été redéfinie pour le mode % mathématique uniquement, qui doit donc ici être explicite : \texttt{\$\string\ij \$}.} % et |\ijk| composent les bases du plan et de l'espace, $\ij$ % et \ijk, en homogénéisant la hauteur des flèches. % % 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} de David Carlisle~\cite{DLJ}, % ce qui permet aux macros ci-dessus de fonctionner normalement. % % \subsection{Lettres grecques} % Dans les mathématiques françaises, la norme concernant l'usage % des lettres grecques minuscules en italique ou en forme droite % 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 % auteurs préconisent l'italique, % 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 % s'appliquant aux variables, au même titre que celle énoncée pour l'alphabet latin. % % \medskip % Pour les physiciens (et chimistes) l'affaire est plus claire puisque % les quantités doivent toujours être écrites en italique et les unités ou les constantes en % romain (forme droite), conformément à la norme ISO~\cite{TYPMA}~\cite{NIST}~\cite{ICTNS}. % Ainsi la constante $\pi \approx 3,14$ ne s'écrit pas de la même manière % qu'une variable $\itpi$. % % \medskip % Dans la section \og How to get upright small Greek letters \fg, % la documentation de \textsf{isomath} de Günter Milde~\cite{ISOM} % expose différentes méthodes pour obtenir les lettres grecques % en forme droite. % Par exemple les extensions \textsf{fourier}~\cite{FOUR} % \mbox{\textsf{mathdesign}}~\cite{DESIGN}, % ou \textsf{kpfonts}~\cite{KPF} disposent d'options permettant % l'écriture automatique des lettres grecques minuscules en forme droite % (et aussi des majuscules en italique) dans la police donnée. % Citons également \textsf{newpxmath}, \textsf{newtxmath} % et \textsf{libertinust1math} de Michael Sharpe ou % \textsf{pxgreeks}, \textsf{txgreeks} % et \textsf{libgreek} de Jean-François Burnol, % qui fournissent les formes droites avec % les polices Palatino, Times et Libertine respectivement. % % Jean-François Burnol a également développé l'extension \textsf{lgrmath}~\cite{LGR} % qui permet d'utiliser, en mode mathématique, les différentes fontes de lettres % grecques accessibles par \LaTeX\ avec l'encodage LGR. La documentation % de l'extension indique comment consulter et utiliser les fontes accessibles % sur votre distribution. % % \medskip % Enfin, comme pour les majuscules, l'extension \textsf{unicode-math} % réalise cette tâche automatiquement avec l'option \texttt{math-style=french}, % mais nécessite une compilation \XeLaTeX\ ou \LuaLaTeX. % % \medskip % Avant la version 3.0, \textsf{frenchmath} disposait de deux options pour composer % les lettres grecques en forme droite : \texttt{lgrmath} et \texttt{upgreek} % \footnote{En fait il y avait une troisième option, \texttt{Upgreek}, mais celle-ci % est désormais obsolète.}. % Inspiré par le travail de Jean-François Burnol, nous avons développé, et intégré % à \textsf{frenchmath}, l'extension \textsf{mathgreeks}~\cite{MGREEK} % qui permet d'utiliser de nombreuses fontes de lettres grecques % sans modifier les autres caractères et symboles. % Il suffit d'appeler \textsf{frenchmath} avec une des options de fonte de % \textsf{mathgreeks}, de la forme \texttt{clé=valeur}. % Par exemple, les lettres grecques droites de la police Utopia, % telles que fournies par l'extension \textsf{mathdesign}, s'obtiennent avec % \begin{center} % |\usepackage[mathdesign=Utopia]{frenchmath}|. % \end{center} % L'extension \textsf{mathdesign} elle-même ne sera pas chargée. % Lorsqu'une valeur n'est pas précisée, il y a toujours une valeur par défaut. % Par exemple pour \texttt{mathdesign}, nous avons choisi \texttt{Charter}. % Pour \texttt{upgreek}, la fonte par défaut est \texttt{Symbol}. % Pour \texttt{lgrmath}, nous avons choisi \texttt{fcm} % \footnote{Il faut que l'extension \textsf{cm-lgc} (développée par Alexej Kryukov) % soit installée sur votre distribution, % sans quoi la fonte de substitution LGR/lmr/m/n sera utilisée. % Les formes italiques du thêta $\ittheta$ ou du rho $\itrho$ de \texttt{fcm} % ne sont pas vraiment ceux d'usage en mathématiques, mais les formes droites % sont bien adaptées. % \texttt{Alegreya-LF} est une autre fonte assez élégante pour \texttt{lgrmath}, % {\mathgreeksfont{enc=LGR,fam=Alegreya-LF,shape=n}\ % mais produit un \texttt{\string \phi} $\phi$} moins courant et sans la variante % $\phi$. % } % qui se marie particulièrement bien avec la police usuelle Latin Modern. % % Les commandes |\alpha|, |\beta|, \ldots |\pi|, etc. % produisent alors les lettres en forme droite $\alpha$, $\beta$, \ldots, $\pi$, etc. % tandis que |\italpha|, |\itbeta|, \ldots, |\itpi|, etc. produisent les formes italiques % $\italpha$, $\itbeta$, \ldots, $\itpi$, etc. % Si ces dernières déplaisent, on peut activer l'option \texttt{savegreeks} % (option booléenne passée à \textsf{mathgreeks}) pour conserver les lettres % d'origine avec |\backalpha|, |\backbeta|, \ldots, |\backpi|, etc. : % $\backalpha$, $\backbeta$, \ldots, $\backpi$, etc. % % \medskip % Nous présentons ci-après quelques unes des nombreuses options possibles. % On se référera à la documentation de \textsf{mathgreeks}~\cite{MGREEK} % pour d'autres exemples ou pour les formes italiques correspondantes. % La seconde ligne de chaque exemple contient, outre les majuscules, % des variantes obtenues avec |\varpepsilon|, |\vartheta|, etc. % (sans effet avec la clé \texttt{lgrmath}, excepté pour |\varsigma|). % Les clés sans valeur sont en fait des booléens dont la valeur par défaut est \texttt{true}. % % \medskip % \DeleteShortVerb{\|} % \newcommand\eg{\texttt{=}} % \noindent\begin{tabular}{|l|c|} % \hline % Option \texttt{clé=valeur} & Résultat \\ % \hline % \textbf{lgrmath\eg Cochineal-LF} & % \mathgreeksfont{enc=LGR, fam=Cochineal-LF, shape=n} % \greektable \\ % \hline % \textbf{lgrmath\eg fcm} & % \mathgreeksfont{enc=LGR, fam=fcm, shape=n} % \greektable \\ % \hline % \textbf{upgreek\eg Euler} & % \mathgreeksfont{enc=U, fam=eur, shape=n} % \greektable \\ % \hline % \textbf{upgreek\eg Symbol} & % \mathgreeksfont{enc=U, fam=psy, shape=n} % \greektable \\ % \hline % \textbf{mathdesign\eg Charter} & % \mathgreeksfont{enc=OML, fam=mdbch, shape=n} % \greektable \\ % \hline % \textbf{fourier} & % \mathgreeksfont{enc=FML, fam=futm} % \greektable \\ % \hline % \textbf{pxfonts} & % \mathgreeksfont{enc=U, fam=pxmia} % \greektable \\ % \hline % \textbf{txfonts} & % \mathgreeksfont{enc=U, fam=txmia} % \greektable \\ % \hline % \textbf{libertinus} & % \mathgreeksfont{enc=LS1, fam=libertinust1math, shape=n} % \greektable \\ % \hline % \end{tabular} % \MakeShortVerb{|} % \bigskip % Une option spéciale, \texttt{libsans} (booléen), permet d'obtenir une fonte % sans empattement pour \texttt{libertinus}. % Une autre option, non présentée dans le tableau, est \textbf{kpfonts}, % avec deux valeurs possibles. Enfin % deux autres options sont disponibles, mais pour une compilation avec % \LuaLaTeX\ (ou \XeLaTeX): % \begin{description} % \item[fontspec\eg \ldots] De nombreuses valeurs sont possibles, par exemple % \texttt{FreeSerif}, % \texttt{LiberationSerif}, % \texttt{GFS Artemisia}, % \texttt{GFS Didot} (valeur par défaut)\ldots % mais aussi des polices non libres comme \texttt{Cambria}, \texttt{Arial}, % \texttt{Palatino Linotype}, \texttt{Times New Roman}\ldots\ % si elles sont installées sur votre système ; % nécessite de charger l'extension \textsf{fontspec} % \footnote{L'extension \textsf{fontspec} est chargée automatiquement par % \textsf{unicode-math} ou \textsf{mathspec} (cette dernière étant spécifique à % \XeLaTeX), mais l'option \texttt{fontspec} permet une variété de polices % TrueType ou OpenType bien plus grande que l'option \texttt{unicode-math}.}. % % \item[unicode-math\eg \ldots] % Donne un beau résultat avec \texttt{Latin Modern Math} (valeur par défaut) % ou \texttt{STIX Two Math} ; nécessite le module \textsf{unicode-math}. % % \end{description} % % \medskip % Par défaut \LaTeX\ compose les majuscules grecques en forme droite et il % n'est donc pas indispensable de recoder celles-ci. L'option \texttt{uppercase=false} % permet de conserver les majuscules d'origine : $\backGamma$, $\backDelta$, \ldots, % $\backOmega$ (sans le préfixe |\back...|). % % \medskip % Mentionnons pour finir ce commentaire de Walter Schmidt~\cite{UPGREEK} que le mu % utilisé pour le préfixe des unités physiques, \textmu, doit se composer avec |\textmu| % \footnote{L'extension \textsf{textalpha} fournit à la place \texttt{\string\textmicro} % (depuis 2020) car elle redéfinit \texttt{\string\textmu}.}, % disponible en mode texte dans beaucoup de fontes (ou avec \textsf{textcomp}) ; % il diffère du $\mu$ droit mathématique, obtenu avec |$\mu$| si l'on a activé % une des options de fonte précédentes. % % % \StopEventually{} % % \section{Le code} % % Les seules options de \textsf{frenchmath} sont \texttt{capsit} et \texttt{noibrackets}. % Tout le travail sur les lettre grecques est dorénavant géré par \textsf{mathgreeks} % et toute option inconnue de \textsf{frenchmath} sera passée à \textsf{mathgreeks}. % Auquel cas, l'on y ajoute automatiquement l'option \texttt{upright} % pour composer les lettres grecques en forme droite. % Si l'on donne une clé ou une valeur invalide, c'est alors \textsf{mathgreeks} qui produira % un message d'erreur. % % \begin{macrocode} \newif\iffrenchmath@capsit \DeclareOption{capsit}{\frenchmath@capsittrue} \newif\iffrenchmath@noibrackets \DeclareOption{noibrackets}{\frenchmath@noibracketstrue} \newif\iffrenchmath@mathgreeks \DeclareOption*{\frenchmath@mathgreekstrue \PassOptionsToPackage{\CurrentOption,upright}{mathgreeks}} \ProcessOptions \relax % \end{macrocode} % Assurer une bonne compatibilité avec \textsf{unicode-math} est un peu compliqué % car \textsf{unicode-math} définit ou redéfinit de nombreux symboles, lettres, % signes dans |\AtBeginDocument|. Les extensions \textsf{decimalcomma} % et \textsf{ibrackets} font déjà appel à |\AtBeginDocument| mais pour garantir % que leur action soit bien postérieure à celle de \textsf{unicode-math} % leur appel a été placé dans un |\AtEndPreamble|, fourni par l'extension \textsf{etoolbox}. % Il y a par contre un problème si on utilise une instruction comme |\MakeShortVerb"| du % module \textsf{shortvrb} ou |\lstMakeShortInline"| du module \mbox{\textsf{listings}}. % Ce type d'instruction doit agir \emph{après} \textsf{frenchmath}, donc être % placée après |\begin{document}| ou bien dans un |\AtBeginDocument{...}|. % % L'extension \textsf{mathptmx} ne fournit pas de |\jmath| mais considère néanmoins % cette commande comme existante. Dans ce cas, nous la rendons donc \og indéfinie \fg % pour la définir ensuite dans une commande générale faisant appel % à l'extension \textsf{dotlessj}. % \begin{macrocode} \RequirePackage{amsopn} % fournit \DeclareMathOperator \RequirePackage{xspace} % utile pour les commandes \ssi, \Oij \RequirePackage{etoolbox} % fournit \AtEndPreamble \iffrenchmath@mathgreeks \RequirePackage{mathgreeks} \fi \AtEndPreamble{ \RequirePackage{decimalcomma} \iffrenchmath@noibrackets\else\RequirePackage{ibrackets}\fi \@ifpackageloaded{mathptmx}{\let\jmath\@undefined}{} \@ifundefined{jmath}{\RequirePackage{dotlessj}}{} \@ifpackageloaded{pstricks-add}{\psset{comma=true}}{} } % \end{macrocode} % % \DescribeMacro{\DeclareMathUp} % Sauf si l'on a invoqué l'option \texttt{capsup=false} (ou \texttt{capsit}), % on redéfinit toutes les lettres majuscules % du mode mathématique grâce à la commande |\DeclareMathUp|. % Contrairement aux bascules |\MathUp| et |\MathIt| de l'extension \textsf{mismath}, % |\DeclareMathUp| ne fonctionne que dans le préambule, mais son code est bien plus simple % et suffit à nos besoins ici. % Pour balayer toutes les lettres majuscules de l'alphabet, % les boucles usuelles |\@for| ou |\foreach| % ne fonctionnent pas et produisent un message d'erreur % \og\texttt{!~Improper alphabetic constant}\fg. % Ceci est dû au fait qu'une \emph{séquence de contrôle} comme par exemple |\@letter| % ne peut être utilisée comme argument de la macro |\DeclareMathUp| % et ne sera pas gérée de manière identique à un simple caractère. % \DescribeMacro{\apply} % Mais la macro |\apply| ci-dessous va faire le travail % \footnote{Cette puissante macro, postée le 26/02/2021 sous le pseudonyme de \emph{wipet}, % se trouve sur le forum de discussion \texttt{iterate190.rssing.com}, % en réponse à \og TeX How to iterate over a comma separated list$?$\fg. % Que son auteur, Petr Olšák, soit remercié. % Cette macro a d'ailleurs été utilisée de manière identique dans \textsf{mismath}, % mais cela ne génère pas d'incompatibilité.}. % |\AtBeginDocument| est nécessaire pour que ces définitions % soient prises en compte avec la classe \textsf{beamer} par exemple, % ou avec \textsf{unicode-math}. % \smallskip % \begin{macrocode} \providecommand*\DeclareMathUp[1]{ \DeclareMathSymbol{#1}{\mathalpha}{operators}{`#1}} \def\apply#1#2{\apply@#1#2,\apply@,} \def\apply@#1#2,{\ifx\apply@#2\empty \else #1{#2}\afterfi@{\apply@#1}\fi} \def\afterfi@#1#2\fi{\fi#1} \AtEndPreamble{\iffrenchmath@capsit\else\AtBeginDocument{ \apply\DeclareMathUp{A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z} }\fi } % \end{macrocode} % En utilisant |\AtEndPreamble| (de l'extension \mbox{\textsf{etoolbox}}), % avec |\AtBeginDocument| à l'intérieur, on garantit que certaines actions % auront bien lieu après celles de \textsf{unicode-math}, % même si \textsf{frenchmath} est chargé avant \mbox{\textsf{unicode-math}}. % % Certains symboles, provenant de \textsf{amssymb} sont déjà définis par certaines % extensions (\textsf{mathdesign} ou \textsf{unicode-math}) et ne seront pas redéfinis. % Un avertissement sera affiché dans ce cas. Comme \textsf{amssymb} % (qui utilise \textsf{amsfonts}) charge plusieurs fontes mathématiques et un grand % nombre de symboles pas forcément nécessaires, nous n'avons extrait que les % trois symboles dont nous avons besoin dans cette extension : % |\leqslant|, |\geqslant| et |\varnothing|. % \begin{macrocode} \AtEndPreamble{% au cas où frenchmath est chargé avant unicode-math \AtBeginDocument{% après actions de unicode-math \DeclareMathSymbol{;}{\mathbin}{operators}{'73} % et non \mathpunct \@ifundefined{mathscr}{\RequirePackage{mathrsfs}}{ \PackageWarningNoLine{frenchmath}{Command \string\mathscr\space already defined, \MessageBreak I don't load mathrsfs} } \@ifundefined{leqslant}{ \DeclareSymbolFont{AMSa}{U}{msa}{m}{n}% de amsfonts \DeclareMathSymbol{\leqslant}{\mathrel}{AMSa}{"36}% de amssymb \DeclareMathSymbol{\geqslant}{\mathrel}{AMSa}{"3E} }{ \PackageWarningNoLine{frenchmath}{\string\leqslant\space and \string\geqslant\space already defined, \MessageBreak they will not be redefined} } \@ifundefined{varnothing}{% de amssymb \newcommand\varnothing{% \usefont évite de déclarer AMSb \mathord{\text{\usefont{U}{AMSb}{m}{n}\symbol{"3F}}}} }{ \PackageWarningNoLine{frenchmath}{\string\varnothing\space already defined, \MessageBreak it will not be redefined, \MessageBreak except by using \string\AMSvarnothing} } } } % \end{macrocode} % Voyons les alias et quelques commandes particulières. % % La commande |\varnothing| produit $\varnothing$ mais par contre, % le symbole fournit par \textsf{unicode-math}, avec \textsf{Latin Modern Math}, % est très laid et malheureusement identique à |\emptyset| : $\CMemptyset$. % Afin de récupérer le symbole de \textsf{amssymb}, sans être obligé de charger % cette extension, nous proposons la commande |\AMSvarnothing|, % à placer dans le préambule, après l'appel de \textsf{unicode-math}. % \begin{macrocode} \newcommand\curs{\mathscr} \newcommand\infeg{\leqslant} \newcommand\supeg{\geqslant} \newcommand\vide{\varnothing} \newcommand\AMSvarnothing{% doit être appelé après \setmathfont ? \AtEndPreamble{\AtBeginDocument{% après actions de unicode-math \renewcommand\varnothing{% \mathord{\text{\usefont{U}{AMSb}{m}{n}\symbol{"3F}}}} }} } % \end{macrocode} % La définition de |\paral| remplace, depuis la version 2.2, % l'ancienne définition plus simple |\mathrel{/\!\!/}|, mais qui donnait des barres % trop serrées avec \mbox{\textsf{mathastext}} + \textsf{times} % ou avec \textsf{libertinust1math}. % Merci à Jean-François Burnol de me l'avoir fait remarquer % et pour ses suggestions dans la mise au point d'une macro plus efficace. % % La macro |\cmod|, copiée du |\pod| de \textsf{amsmath} (depuis v2.11), % permet de gérer différemment % l'espacement en mode \og mathématiques centrées \fg (hors-ligne) % ou en mode \og en ligne \fg. % \begin{macrocode} \newcommand\paral{\mathrel{\ooalign{$\mkern-1.75mu/\mkern1.75mu$\cr% $\mkern1.75mu/\mkern-1.75mu$}}} \newcommand\ssi{si, et seulement si,\xspace} %\newcommand*\cmod[1]{\quad[#1]} \newif\if@display % provient de amsmath, peut être appelé 2 fois \everydisplay\@xp{\the\everydisplay \@displaytrue} \newcommand*\cmod[1]{\penalty \z@ % similaire à amsmath \allowbreak \if@display\mkern 18mu\else\mkern 8mu\fi [#1]} % \end{macrocode} % Passons aux identifiants de fonctions classiques. % \begin{macrocode} \DeclareMathOperator{\pgcd}{pgcd} \DeclareMathOperator{\ppcm}{ppcm} \DeclareMathOperator{\card}{card} \DeclareMathOperator{\Card}{Card} \DeclareMathOperator{\Ker}{Ker} \DeclareMathOperator{\Hom}{Hom} \DeclareMathOperator{\rg}{rg} \DeclareMathOperator{\Vect}{Vect} \DeclareMathOperator{\ch}{ch} \DeclareMathOperator{\sh}{sh} \AtBeginDocument{\let\oldth\th %\th existe déjà (mode texte) \renewcommand\th{\TextOrMath{\oldth}{\operatorname{th}}}} \DeclareMathOperator{\cosec}{cosec} \DeclareMathOperator{\cosech}{cosech} % \end{macrocode} % Les commandes pour les bases et repères peuvent être utilisées % en mode texte grâce à |\ensuremath| (et |\xspace| qui garantit le bon espacement). % \begin{macrocode} \newcommand\@Oij{% \ensuremath{\left(O, \vec{\imath}, \vec{\jmath}\,\right)}\xspace} \newcommand\@@Oij{% \ensuremath{\left(O ; \vec{\imath}, \vec{\jmath}\,\right)}\xspace} \newcommand\Oij{\@ifstar{\@@Oij}{\@Oij}} \newcommand\@Oijk{% \ensuremath{% \left(O, \vec{\vphantom{t}\imath}, \vec{\vphantom{t}\jmath}, \vec{\vphantom{t}\smash{k}}\,\right)}% \xspace} \newcommand\@@Oijk{% \ensuremath{% \left(O ; \vec{\vphantom{t}\imath}, \vec{\vphantom{t}\jmath}, \vec{\vphantom{t}\smash{k}}\,\right)}% \xspace} \newcommand\Oijk{\@ifstar{\@@Oijk}{\@Oijk}} \newcommand\@Ouv{% \ensuremath{\left(O, \vec{u}, \vec{v}\,\right)}\xspace} \newcommand\@@Ouv{% \ensuremath{\left(O ; \vec{u}, \vec{v}\,\right)}\xspace} \newcommand\Ouv{\@ifstar{\@@Ouv}{\@Ouv}} \AtBeginDocument{\let\oldij\ij %\ij existe déjà (mode texte) \renewcommand\ij{\TextOrMath{\oldij}{% \left(\vec{\imath}, \vec{\jmath}\,\right)}} } \newcommand\ijk{% \ensuremath{% \left(\vec{\vphantom{t}\imath}, \vec{\vphantom{t}\jmath}, \vec{\vphantom{t}\smash{k}}\,\right)}% \xspace} % \end{macrocode} % % \medskip % \begin{thebibliography}{32} % \begin{raggedright} % \bibitem{RTIN} \emph{Lexique des règles typographiques en usage à l’Imprimerie Nationale}, % édition du 26/08/2002. % \bibitem{IGEN} \emph{Composition des textes scientifiques}, % Inspection Générale de mathématiques (IGEN-DESCO), 06/12/2001. % \url{http://mslp.ac-dijon.fr/IMG/pdf/typo_txt_sci.pdf}\\ % \url{https://euler.ac-versailles.fr/IMG/pdf/typo2.pdf} % \bibitem{AA} \emph{Règles françaises de typographie mathématique}, % Alexandre André, 02/09/2015. % \url{http://sgalex.free.fr/typo-maths_fr.pdf} % \bibitem{ES} \emph{Le petit typographe rationnel}, Eddie Saudrais, 20/03/2000. % \url{https://www.gutenberg-asso.fr/IMG/pdf/saudrais-typo.pdf} % \bibitem{TYPMA} \emph{Typesetting mathematics for science and technology according % to ISO 31/XI}, Claudio Beccari, TUGboat Volume 18 (1997), \No1. % \url{http://www.tug.org/TUGboat/tb18-1/tb54becc.pdf} % \bibitem{NIST} \emph{Typefaces for Symbols in Scientific Manuscripts}. % \url{https://www.physics.nist.gov/cuu/pdf/typefaces.pdf} % \bibitem{ICTNS} \emph{On the Use of Italic and up Fonts for Symbols in Scientific Text}, % I.M.~Mills and W.V.~Metanomski, ICTNS (Interdivisional Committee on Terminology, % Nomenclature and Symbols), dec 1999. %\url{https://old.iupac.org/standing/idcns/italic-roman_dec99.pdf} % \bibitem{ISOM} \emph{\textsf{isomath} -- Mathematical style for science and technology}, % Günter Milde, CTAN, v0.6.1 2012/09/04. % \bibitem{PMISO} \emph{\textsf{PM-ISOmath} -- The Poor Man ISO math bundle}, % Claudio Beccari, CTAN, v1.2.00 2021/08/04. % \bibitem{MAFR} \emph{La distribution \textsf{mafr}}, Christian Obrecht, % CTAN, v1.0 17/09/2006. % \bibitem{BABEL} \emph{A Babel language definition file for French}, extension \LaTeX\ % \textsf{babel-french} de Daniel Flipo, CTAN, v3.5c 14/09/2018. % \bibitem{FRM} \emph{L'extension \textsf{tdsfrmath}}, Yvon Henel, % CTAN, v1.3 22/06/2009. % \bibitem{TABL} \emph{L'extension \textsf{tablvar}}, Antoine Missier, % CTAN, v2.0 23/12/2023. % \bibitem{UNIC} \emph{Experimental Unicode mathematical typesetting: % The \textsf{unicode-math} package}, Will Robertson, Philipp Stephani, Joseph Wright, % Khaled Hosny, and others, CTAN, v0.8r 13/08/2023. % \bibitem{FOUR} \textsf{Fourier-GUT\hspace{-0.1em}\emph{enberg}}, % Michel Bovani, CTAN, v1.3 30/01/2005. % \bibitem{DESIGN} \emph{The \textsf{mathdesign} package}, % Paul Pichaureau, CTAN, v2.31 29/08/2013. % \bibitem{KPF} \emph{\textsf{Kp-Fonts} -- The Johannes Kepler project}, % Christophe Caignaert, CTAN, v3.34 20/09/2022. % \bibitem{MIS} \emph{Miscellaneous mathematical macros -- The \textsf{mismath} package}, % Antoine Missier, CTAN, v3.0 04/05/2024. % \bibitem{VECT} \emph{\textsf{esvect} -- Typesetting vectors with beautiful % arrow with \LaTeXe}, Eddie Saudrais, CTAN, v1.3 11/07/2013. % \bibitem{ICOMMA} \emph{The \textsf{icomma} package for \LaTeXe}. % Walter Schmidt, CTAN, v2.0 10/03/2002. % \bibitem{NCC} \emph{The \textsf{ncccomma} package}. Alexander I.~Rozhenko, % CTAN, v1.0 10/02/2005. % \bibitem{BECC} \emph{Intelligent commas}. Claudio Beccari, The Prac\TeX\ Journal, % 2011, No.\@1. % \url{https://tug.org/pracjourn/2011-1/beccari/Intcomma.pdf} % \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, 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. % \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. % \bibitem{LGR} \emph{The \textsf{lgrmath} package}, Jean-François B., CTAN, % v1.0 16/11/2022. % \bibitem{UPGREEK} \emph{The \textsf{upgreek} package for \LaTeXe}, Walter Schmidt, CTAN, % v2.0 12/03/2003. % \bibitem{MGREEK} \emph{The \textsf{mathgreeks} package}, Antoine Missier, CTAN, % v1.1 04/05/2024. % \bibitem{ALPHA} \emph{The \textsf{textalpha} package} % (partie de l'extension \textsf{greek-fontenc}), Günter Milde, CTAN, v2.1 14/06/2022. % \bibitem{COMP} \emph{\LaTeX\ Companion}, Frank Mittelbach, Michel Goossens, % 2\ieme édition, Pearson Education France, 2005. % \end{raggedright} % \end{thebibliography} % \Finale \endinput