summaryrefslogtreecommitdiff
path: root/Master/texmf-dist
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2023-02-25 22:06:12 +0000
committerKarl Berry <karl@freefriends.org>2023-02-25 22:06:12 +0000
commit3aa8d9864cfba44da31702861cb6a211fc1c8935 (patch)
tree47ac75bd201360cee49c2ddd3b49b77ec50d9c52 /Master/texmf-dist
parent547461c52b631806335c7753d7710dd780d7699a (diff)
frenchmath (25feb23) (branch)
git-svn-id: svn://tug.org/texlive/branches/branch2022.final@66155 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
-rw-r--r--Master/texmf-dist/doc/latex/frenchmath/README.md2
-rw-r--r--Master/texmf-dist/doc/latex/frenchmath/frenchmath.pdfbin261467 -> 266258 bytes
-rw-r--r--Master/texmf-dist/source/latex/frenchmath/frenchmath.dtx200
-rw-r--r--Master/texmf-dist/source/latex/frenchmath/frenchmath.ins4
-rw-r--r--Master/texmf-dist/tex/latex/frenchmath/frenchmath.sty111
5 files changed, 170 insertions, 147 deletions
diff --git a/Master/texmf-dist/doc/latex/frenchmath/README.md b/Master/texmf-dist/doc/latex/frenchmath/README.md
index 47fa0fa7219..0d0c9bcaa4a 100644
--- a/Master/texmf-dist/doc/latex/frenchmath/README.md
+++ b/Master/texmf-dist/doc/latex/frenchmath/README.md
@@ -7,7 +7,7 @@ The package provides:
- roman uppercase letters in mathematical mode according to French rule (can be optionnally disabled),
- optionally lowercase Greek letters in upright shape,
- correct spacing in math mode after commas, before a semicolon and around square brackets,
-- some useful macros and aliases for symbols used in France : `\infeg`, `\supeg`, `\paral`,...
+- some useful macros and aliases for symbols used in France: `\infeg`, `\supeg`, `\paral`,...
- several macros for writing french operator names like pgcd, ppcm, Card, rg, Vect,...
diff --git a/Master/texmf-dist/doc/latex/frenchmath/frenchmath.pdf b/Master/texmf-dist/doc/latex/frenchmath/frenchmath.pdf
index 0b65c68576c..27acd9e84d4 100644
--- a/Master/texmf-dist/doc/latex/frenchmath/frenchmath.pdf
+++ b/Master/texmf-dist/doc/latex/frenchmath/frenchmath.pdf
Binary files differ
diff --git a/Master/texmf-dist/source/latex/frenchmath/frenchmath.dtx b/Master/texmf-dist/source/latex/frenchmath/frenchmath.dtx
index 63c577e1732..e2037917fbd 100644
--- a/Master/texmf-dist/source/latex/frenchmath/frenchmath.dtx
+++ b/Master/texmf-dist/source/latex/frenchmath/frenchmath.dtx
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-% Copyright (C) 2019-2022 by Antoine Missier <antoine.missier@ac-toulouse.fr>
+% Copyright (C) 2019-2023 by Antoine Missier <antoine.missier@ac-toulouse.fr>
%
% This file may be distributed and/or modified under the conditions of
% the LaTeX Project Public License, either version 1.3 of this license
@@ -20,7 +20,7 @@
%<*package>
\NeedsTeXFormat{LaTeX2e}[2005/12/01]
\ProvidesPackage{frenchmath}
- [2023/01/22 v2.4 .dtx frenchmath file]
+ [2023/02/24 v2.5 .dtx frenchmath file]
%</package>
%<*driver>
\documentclass{ltxdoc}
@@ -34,8 +34,13 @@
\usepackage{metalogo} % pour les logos XeLaTeX et LuaLaTeX
\usepackage{sectsty}
\usepackage{xcolor}
+
\definecolor{darkbrown}{rgb}{0.5,0.1,0.1}
\allsectionsfont{\color{darkbrown}}
+\DeclareSymbolFont{ugrfm}{U}{psy}{m}{n} % pour les lettres de upgreek avec l'option Symbol
+\DeclareMathSymbol{\upalphasym}{\mathord}{ugrfm}{`a}
+\DeclareMathSymbol{\upbetasym}{\mathord}{ugrfm}{`b}
+\DeclareMathSymbol{\uppisym}{\mathord}{ugrfm}{`p}
\DeclareSymbolFont{cmsymbols}{OMS}{cmsy}{m}{n} % symbole \emptyset de computer modern
\DeclareMathSymbol{\cmemptyset}{\mathord}{cmsymbols}{'73} % code octal dans cmsy
\DeclareTextSymbol{\textmicro}{TS1}{181} % mu de micro
@@ -60,7 +65,7 @@
%</driver>
% \fi
%
-% \CheckSum{552}
+% \CheckSum{537}
%
% \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
@@ -142,12 +147,18 @@
% - 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}
+%
% \GetFileInfo{frenchmath.sty}
%
% \title{L'extension \textsf{frenchmath}\thanks{Ce document
-% correspond à \textsf{frenchmath}~\fileversion, dernière modification le 22/01/2023.}}
+% correspond à \textsf{frenchmath}~\fileversion, dernière modification le 24/02/2023.}}
% \author{Antoine Missier \\ \texttt{antoine.missier@ac-toulouse.fr}}
-% \date{22 janvier 2023}
+% \date{24 février 2023}
% \maketitle
%
% \section{Introduction}
@@ -200,15 +211,16 @@
% \section{Utilisation}
%
% \subsection{Majuscules mathématiques}
-% En France, les lettres majuscules du mode mathématique doivent toujours
-% être composées en romain ($A, B, C, \ldots$) et non en italique
-% (\cite{RTIN} p.107, voir aussi~\cite{IGEN}).
+% 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 des polices mathématiques OpenType,
% cette convention est assez commode à mettre en œuvre ;
-% par contre, avec \LaTeX\ ou pdf\LaTeX, assez peu d'auteurs la respectent
+% par contre, avec \LaTeX\ ou pdf\LaTeX, 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 toutes les majuscules
-% mathématiques en romain,
+% Par défaut \textsf{frenchmath} compose automatiquement les majuscules
+% mathématiques latines en romain,
% quelle que soit la fonte 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. \]
@@ -217,9 +229,17 @@
% 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}|
-% Que l'option soit activée ou pas, il est toujours possible de changer l'aspect
-% d'une lettre particulière, avec les macros \LaTeX\ |\mathrm| et |\mathit|.
+% |\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|.
+% Sinon l'extension \textsf{mismath}~\cite{MIS} fournit deux bascules puissantes
+% |\MathUp| et |\MathIt| qui agissent de manière générale (ou locale dans un environnement)
+% et permettent à tout moment
+% de changer la \og famille \fg d'une lettre particulière,
+% ainsi qu'une commande générique |\apply| pour appliquer ces macros sur une liste.
+% Ainsi |\apply\MathIt{F,G,X}| remettra en italique les lettres $\mathit{F,G,X}$.
%
% \subsection{Lettres grecques}
% La norme concernant l'usage des lettres grecques en italique ou en forme droite
@@ -296,10 +316,11 @@
% basée sur l'extension \textsf{upgreek} de Walter Schmidt~\cite{UPGREEK} qui donne
% accès aux lettres grecques minuscules en forme droite :
% |\upalpha|, |\upbeta|, etc.
-% L'extension \textsf{upgreek} sera chargée avec l'option par défaut, \texttt{Euler}.
+% L'extension \textsf{upgreek} sera chargée avec l'option par défaut \texttt{Euler}.
% Si l'on veut, par contre, utiliser l'extension \textsf{upgreek}
-% avec l'une de deux autres options disponibles, \texttt{Symbol}
-% ou \texttt{Symbolsmallscale} (utilisant la police Adobe Symbol),
+% avec l'une de deux autres options disponibles, \texttt{Symbol}
+% (utilisant la police Adobe Symbol et qui donne des lettres grecques assez grasses :
+% $\upalphasym$, $\upbetasym$, \ldots, $\uppisym$) ou \texttt{Symbolsmallscale},
% il faut charger l'extension \textsf{upgreek} avec l'option souhaitée
% \emph{avant} \textsf{frenchmath}
% \footnote{L'option \texttt{Symbol} de \textsf{upgreek} se marie mieux
@@ -423,10 +444,12 @@
% Le code
% |$x\in ]-\pi, 0[ \cup ]2\pi, 3\pi[$|
% produira
-% \[ x\in ]-\pi, 0[ \cup ]2\pi, 3\pi[ \mbox{\quad avec \textsf{ibrackets}}, \]
-% au lieu de
-% \[ x\in \mathclose{]}-\pi, 0 \mathopen{[} \cup \mathclose{]} 2\pi, 3\pi \mathopen{[}
-% \mbox{\quad sans \textsf{ibrackets}}. \]
+% \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
@@ -484,7 +507,7 @@
% du parallélisme : $\curs{D}\paral\curs{D}'$,
% plutôt que sa version anglaise |\parallel| : $\curs{D}\parallel\curs{D}'$.*
%
-% \medskip
+% \pagebreak
% \DescribeMacro{\ssi}
% La commande |\ssi| produit \og \ssi \fg.
%
@@ -568,28 +591,26 @@
% 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 les macros de ce paragraphe peuvent ne pas fonctionner
-% avec certaines fontes mathématiques qui ne connaissent pas \texttt{\string\jmath},
-% par exemple l'extension \textsf{mathptmx} (basée sur la fonte de texte Times).
+% 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,
+% ce qui permet aux macros ci-dessus de fonctionner normalement.
%
% \StopEventually{}
%
-% \pagebreak
% \section{Le code}
%
% \begin{macrocode}
-\RequirePackage{ifthen}
-\newboolean{capsit}
-\DeclareOption{capsit}{\setboolean{capsit}{true}}
-\newboolean{lgrmath}
-\DeclareOption{lgrmath}{\setboolean{lgrmath}{true}}
-\newboolean{upgreek}
-\DeclareOption{upgreek}{\setboolean{upgreek}{true}}
-\newboolean{Upgreek}
-\DeclareOption{Upgreek}{\setboolean{Upgreek}{true}
- \setboolean{upgreek}{true}}
-\newboolean{noibrackets}
-\DeclareOption{noibrackets}{\setboolean{noibrackets}{true}}
+\newif\ifcapsit
+\DeclareOption{capsit}{\capsittrue}
+\newif\iflgrmath
+\DeclareOption{lgrmath}{\lgrmathtrue}
+\newif\ifupgreek
+\DeclareOption{upgreek}{\upgreektrue}
+\newif\ifUpgreek
+\DeclareOption{Upgreek}{\Upgreektrue\upgreektrue}
+\newif\ifnoibrackets
+\DeclareOption{noibrackets}{\noibracketstrue}
\ProcessOptions \relax
\AtBeginDocument{
@@ -603,17 +624,17 @@
}
}
\RequirePackage{amsopn} % fournit \DeclareMathOperator
-\ifthenelse{\boolean{lgrmath}}{
+\@ifpackageloaded{mathptmx}{\RequirePackage{dotlessj}}
+\iflgrmath
\@ifpackageloaded{lgrmath}{}{
\RequirePackage[font=fcm,style=french]{lgrmath}}
-}{}
-\ifthenelse{\boolean{upgreek}}{
+\fi
+\ifupgreek
\@ifpackageloaded{upgreek}{}{\RequirePackage[Euler]{upgreek}}
-}{}
+\fi
\RequirePackage{xspace} % utile pour les commandes \curs, \ssi, \Oij
-\ifthenelse{\boolean{noibrackets}}{}{
- \RequirePackage{ibrackets}} % intelligent brackets
-% \RequirePackage{icomma} % intelligent comma
+\ifnoibrackets\else \RequirePackage{ibrackets} \fi % intelligent brackets
+
\RequirePackage{ncccomma} % depuis frenchmath 1.6
\@ifpackagewith{babel}{french}{}{
\RequirePackage{iftex}
@@ -634,46 +655,46 @@
% L'extension \textsf{ncccomma} doit être chargée après \textsf{babel-french}
% si on utilise \LuaLaTeX, sinon une erreur de compilation se produit.
%
-% Je dois également à Jean-François Burnol une amélioration
-% du code ci-après, redéfinissant les majuscules mathématiques.
-%
% Sauf si l'option \texttt{capsit} est activée, on redéfinit toutes les lettres majuscules
% du mode mathématique ; |\AtBeginDocument| est nécessaire pour que
% ces définitions soient prises en compte avec la classe \textsf{beamer}
% par exemple.
% \smallskip
% \begin{macrocode}
-
-\ifthenelse{\boolean{capsit}}{}{
+\newcommand*\@mathup[1]{
+ \DeclareMathSymbol{#1}{\mathalpha}{operators}{`#1}
+}
+\ifcapsit\else
\AtBeginDocument{
- \DeclareMathSymbol{A}\mathalpha{operators}{`A}
- \DeclareMathSymbol{B}\mathalpha{operators}{`B}
- \DeclareMathSymbol{C}\mathalpha{operators}{`C}
- \DeclareMathSymbol{D}\mathalpha{operators}{`D}
- \DeclareMathSymbol{E}\mathalpha{operators}{`E}
- \DeclareMathSymbol{F}\mathalpha{operators}{`F}
- \DeclareMathSymbol{G}\mathalpha{operators}{`G}
- \DeclareMathSymbol{H}\mathalpha{operators}{`H}
- \DeclareMathSymbol{I}\mathalpha{operators}{`I}
- \DeclareMathSymbol{J}\mathalpha{operators}{`J}
- \DeclareMathSymbol{K}\mathalpha{operators}{`K}
- \DeclareMathSymbol{L}\mathalpha{operators}{`L}
- \DeclareMathSymbol{M}\mathalpha{operators}{`M}
- \DeclareMathSymbol{N}\mathalpha{operators}{`N}
- \DeclareMathSymbol{O}\mathalpha{operators}{`O}
- \DeclareMathSymbol{P}\mathalpha{operators}{`P}
- \DeclareMathSymbol{Q}\mathalpha{operators}{`Q}
- \DeclareMathSymbol{R}\mathalpha{operators}{`R}
- \DeclareMathSymbol{S}\mathalpha{operators}{`S}
- \DeclareMathSymbol{T}\mathalpha{operators}{`T}
- \DeclareMathSymbol{U}\mathalpha{operators}{`U}
- \DeclareMathSymbol{V}\mathalpha{operators}{`V}
- \DeclareMathSymbol{W}\mathalpha{operators}{`W}
- \DeclareMathSymbol{X}\mathalpha{operators}{`X}
- \DeclareMathSymbol{Y}\mathalpha{operators}{`Y}
- \DeclareMathSymbol{Z}\mathalpha{operators}{`Z}
+ \@mathup{A}
+ \@mathup{B}
+ \@mathup{C}
+ \@mathup{D}
+ \@mathup{E}
+ \@mathup{F}
+ \@mathup{G}
+ \@mathup{H}
+ \@mathup{I}
+ \@mathup{J}
+ \@mathup{K}
+ \@mathup{L}
+ \@mathup{M}
+ \@mathup{N}
+ \@mathup{O}
+ \@mathup{P}
+ \@mathup{Q}
+ \@mathup{R}
+ \@mathup{S}
+ \@mathup{T}
+ \@mathup{U}
+ \@mathup{V}
+ \@mathup{W}
+ \@mathup{X}
+ \@mathup{Y}
+ \@mathup{Z}
}
-}
+\fi
+
% \end{macrocode}
% Avec l'option \texttt{upgreek}, on charge l'extension \textsf{upgreek}
% (sauf si elle est déjà chargée, ce qui évite les incompatibilités d'option)
@@ -681,8 +702,7 @@
% \texttt{Upgreek} transforme en outre les majuscules grecques pour garder
% le même style.
% \begin{macrocode}
-
-\ifthenelse{\boolean{upgreek}}{
+\ifupgreek
\@ifundefined{italpha}{\let\italpha\alpha}{
\PackageWarningNoLine{frenchmath}{Command
\string\italpha\space already exist \MessageBreak
@@ -721,9 +741,9 @@
\@ifundefined{itvarpi}{\let\itvarpi\varpi}{}
\@ifundefined{itvarsigma}{\let\itvarsigma\varsigma}{}
\@ifundefined{itvarphi}{\let\itvarphi\varphi}{}
-}{}
+\fi
-\ifthenelse{\boolean{upgreek}}{
+\ifupgreek
\renewcommand\alpha{\upalpha}
\renewcommand\beta{\upbeta}
\renewcommand\gamma{\upgamma}
@@ -753,9 +773,9 @@
\renewcommand\varrho{\upvarrho}
\renewcommand\varsigma{\upvarsigma}
\renewcommand\varphi{\upvarphi}
-}{}
+\fi
-\ifthenelse{\boolean{Upgreek}}{
+\ifUpgreek
\renewcommand\Gamma{\Upgamma}
\renewcommand\Delta{\Updelta}
\renewcommand\Theta{\Uptheta}
@@ -767,7 +787,7 @@
\renewcommand\Phi{\Upphi}
\renewcommand\Psi{\Uppsi}
\renewcommand\Omega{\Upomega}
-}{}
+\fi
\AtBeginDocument{\@ifpackageloaded{pstricks-add}{\psset{comma=true}}{}}
\DeclareMathSymbol{;}{\mathbin}{operators}{'73} % \mathpunct à l'origine
@@ -839,13 +859,14 @@
% \end{macrocode}
%
% \medskip
-% \begin{thebibliography}{25}
+% \begin{thebibliography}{26}
% \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{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}
@@ -867,6 +888,8 @@
% \url{http://tug.ctan.org/info/lshort/english/lshort.pdf}
% \bibitem{MAFR} \emph{La distribution \textsf{mafr}}, Christian Obrecht,
% CTAN, v1.0 17/09/2006.
+% \bibitem{MIS} \emph{\textsf{mismath} -- Miscellaneus mathematical macros},
+% Antoine Missier, CTAN, v2.5 24/02/2023.
% \bibitem{FRM} \emph{L'extension \textsf{tdsfrmath}}, Yvon Henel,
% CTAN, v1.3 22/06/2009.
% \bibitem{FOUR} \textsf{Fourier-GUT\hspace{-0.1em}\emph{enberg}},
@@ -895,9 +918,8 @@
% 2011, No.\@1.
% \url{https://tug.org/pracjourn/2011-1/beccari/Intcomma.pdf}
% \bibitem{BRACKETS} \emph{Intelligent brackets -- The \textsf{ibrackets} package},
-% Antoine Missier, v1.0 19/12/2022.
-% \bibitem{MIS} \emph{\textsf{mismath} -- Miscellaneus mathematical macros},
-% Antoine Missier, CTAN, v2.1 26/12/2022.
+% Antoine Missier, v1.1 26/12/2022.
+% \bibitem{DLJ} \emph{\textsf{dotlessj}}, David Carlisle, CTAN, v0.03 09/12/1998.
% \end{raggedright}
% \end{thebibliography}
diff --git a/Master/texmf-dist/source/latex/frenchmath/frenchmath.ins b/Master/texmf-dist/source/latex/frenchmath/frenchmath.ins
index 65dbcdfa9cc..8e0901845ea 100644
--- a/Master/texmf-dist/source/latex/frenchmath/frenchmath.ins
+++ b/Master/texmf-dist/source/latex/frenchmath/frenchmath.ins
@@ -1,5 +1,5 @@
%%
-%% Copyright (C) 2019-2022 by Antoine Missier <antoine.missier@ac-toulouse.fr>
+%% Copyright (C) 2019-2023 by Antoine Missier <antoine.missier@ac-toulouse.fr>
%%
%% This file may be distributed and/or modified under the conditions of
%% the LaTeX Project Public License, either version 1.3 of this license
@@ -21,7 +21,7 @@
This is a generated file.
-Copyright (C) 2019-2022 by Antoine Missier <antoine.missier@ac-toulouse.fr>
+Copyright (C) 2019-2023 by Antoine Missier <antoine.missier@ac-toulouse.fr>
This file may be distributed and/or modified under the conditions of
the LaTeX Project Public License, either version 1.3 of this license
diff --git a/Master/texmf-dist/tex/latex/frenchmath/frenchmath.sty b/Master/texmf-dist/tex/latex/frenchmath/frenchmath.sty
index 97eaa291844..46b718916e2 100644
--- a/Master/texmf-dist/tex/latex/frenchmath/frenchmath.sty
+++ b/Master/texmf-dist/tex/latex/frenchmath/frenchmath.sty
@@ -8,7 +8,7 @@
%%
%% This is a generated file.
%%
-%% Copyright (C) 2019-2022 by Antoine Missier <antoine.missier@ac-toulouse.fr>
+%% Copyright (C) 2019-2023 by Antoine Missier <antoine.missier@ac-toulouse.fr>
%%
%% This file may be distributed and/or modified under the conditions of
%% the LaTeX Project Public License, either version 1.3 of this license
@@ -22,19 +22,17 @@
%%
\NeedsTeXFormat{LaTeX2e}[2005/12/01]
\ProvidesPackage{frenchmath}
- [2023/01/22 v2.4 .dtx frenchmath file]
-\RequirePackage{ifthen}
-\newboolean{capsit}
-\DeclareOption{capsit}{\setboolean{capsit}{true}}
-\newboolean{lgrmath}
-\DeclareOption{lgrmath}{\setboolean{lgrmath}{true}}
-\newboolean{upgreek}
-\DeclareOption{upgreek}{\setboolean{upgreek}{true}}
-\newboolean{Upgreek}
-\DeclareOption{Upgreek}{\setboolean{Upgreek}{true}
- \setboolean{upgreek}{true}}
-\newboolean{noibrackets}
-\DeclareOption{noibrackets}{\setboolean{noibrackets}{true}}
+ [2023/02/24 v2.5 .dtx frenchmath file]
+\newif\ifcapsit
+\DeclareOption{capsit}{\capsittrue}
+\newif\iflgrmath
+\DeclareOption{lgrmath}{\lgrmathtrue}
+\newif\ifupgreek
+\DeclareOption{upgreek}{\upgreektrue}
+\newif\ifUpgreek
+\DeclareOption{Upgreek}{\Upgreektrue\upgreektrue}
+\newif\ifnoibrackets
+\DeclareOption{noibrackets}{\noibracketstrue}
\ProcessOptions \relax
\AtBeginDocument{
@@ -48,16 +46,17 @@
}
}
\RequirePackage{amsopn} % fournit \DeclareMathOperator
-\ifthenelse{\boolean{lgrmath}}{
+\@ifpackageloaded{mathptmx}{\RequirePackage{dotlessj}}
+\iflgrmath
\@ifpackageloaded{lgrmath}{}{
\RequirePackage[font=fcm,style=french]{lgrmath}}
-}{}
-\ifthenelse{\boolean{upgreek}}{
+\fi
+\ifupgreek
\@ifpackageloaded{upgreek}{}{\RequirePackage[Euler]{upgreek}}
-}{}
+\fi
\RequirePackage{xspace} % utile pour les commandes \curs, \ssi, \Oij
-\ifthenelse{\boolean{noibrackets}}{}{
- \RequirePackage{ibrackets}} % intelligent brackets
+\ifnoibrackets\else \RequirePackage{ibrackets} \fi % intelligent brackets
+
\RequirePackage{ncccomma} % depuis frenchmath 1.6
\@ifpackagewith{babel}{french}{}{
\RequirePackage{iftex}
@@ -72,39 +71,41 @@
\addto\extrasfrench{\mathcode`\,="8000\relax}
}{}
}
-
-\ifthenelse{\boolean{capsit}}{}{
+\newcommand*\@mathup[1]{
+ \DeclareMathSymbol{#1}{\mathalpha}{operators}{`#1}
+}
+\ifcapsit\else
\AtBeginDocument{
- \DeclareMathSymbol{A}\mathalpha{operators}{`A}
- \DeclareMathSymbol{B}\mathalpha{operators}{`B}
- \DeclareMathSymbol{C}\mathalpha{operators}{`C}
- \DeclareMathSymbol{D}\mathalpha{operators}{`D}
- \DeclareMathSymbol{E}\mathalpha{operators}{`E}
- \DeclareMathSymbol{F}\mathalpha{operators}{`F}
- \DeclareMathSymbol{G}\mathalpha{operators}{`G}
- \DeclareMathSymbol{H}\mathalpha{operators}{`H}
- \DeclareMathSymbol{I}\mathalpha{operators}{`I}
- \DeclareMathSymbol{J}\mathalpha{operators}{`J}
- \DeclareMathSymbol{K}\mathalpha{operators}{`K}
- \DeclareMathSymbol{L}\mathalpha{operators}{`L}
- \DeclareMathSymbol{M}\mathalpha{operators}{`M}
- \DeclareMathSymbol{N}\mathalpha{operators}{`N}
- \DeclareMathSymbol{O}\mathalpha{operators}{`O}
- \DeclareMathSymbol{P}\mathalpha{operators}{`P}
- \DeclareMathSymbol{Q}\mathalpha{operators}{`Q}
- \DeclareMathSymbol{R}\mathalpha{operators}{`R}
- \DeclareMathSymbol{S}\mathalpha{operators}{`S}
- \DeclareMathSymbol{T}\mathalpha{operators}{`T}
- \DeclareMathSymbol{U}\mathalpha{operators}{`U}
- \DeclareMathSymbol{V}\mathalpha{operators}{`V}
- \DeclareMathSymbol{W}\mathalpha{operators}{`W}
- \DeclareMathSymbol{X}\mathalpha{operators}{`X}
- \DeclareMathSymbol{Y}\mathalpha{operators}{`Y}
- \DeclareMathSymbol{Z}\mathalpha{operators}{`Z}
+ \@mathup{A}
+ \@mathup{B}
+ \@mathup{C}
+ \@mathup{D}
+ \@mathup{E}
+ \@mathup{F}
+ \@mathup{G}
+ \@mathup{H}
+ \@mathup{I}
+ \@mathup{J}
+ \@mathup{K}
+ \@mathup{L}
+ \@mathup{M}
+ \@mathup{N}
+ \@mathup{O}
+ \@mathup{P}
+ \@mathup{Q}
+ \@mathup{R}
+ \@mathup{S}
+ \@mathup{T}
+ \@mathup{U}
+ \@mathup{V}
+ \@mathup{W}
+ \@mathup{X}
+ \@mathup{Y}
+ \@mathup{Z}
}
-}
+\fi
-\ifthenelse{\boolean{upgreek}}{
+\ifupgreek
\@ifundefined{italpha}{\let\italpha\alpha}{
\PackageWarningNoLine{frenchmath}{Command
\string\italpha\space already exist \MessageBreak
@@ -143,9 +144,9 @@
\@ifundefined{itvarpi}{\let\itvarpi\varpi}{}
\@ifundefined{itvarsigma}{\let\itvarsigma\varsigma}{}
\@ifundefined{itvarphi}{\let\itvarphi\varphi}{}
-}{}
+\fi
-\ifthenelse{\boolean{upgreek}}{
+\ifupgreek
\renewcommand\alpha{\upalpha}
\renewcommand\beta{\upbeta}
\renewcommand\gamma{\upgamma}
@@ -175,9 +176,9 @@
\renewcommand\varrho{\upvarrho}
\renewcommand\varsigma{\upvarsigma}
\renewcommand\varphi{\upvarphi}
-}{}
+\fi
-\ifthenelse{\boolean{Upgreek}}{
+\ifUpgreek
\renewcommand\Gamma{\Upgamma}
\renewcommand\Delta{\Updelta}
\renewcommand\Theta{\Uptheta}
@@ -189,7 +190,7 @@
\renewcommand\Phi{\Upphi}
\renewcommand\Psi{\Uppsi}
\renewcommand\Omega{\Upomega}
-}{}
+\fi
\AtBeginDocument{\@ifpackageloaded{pstricks-add}{\psset{comma=true}}{}}
\DeclareMathSymbol{;}{\mathbin}{operators}{'73} % \mathpunct à l'origine