Typographie d'une liste en ligne de nombres décimaux

Bonsoir,

tout est dans le titre :slight_smile:

Les listes en ligne utilisent la virgule comme séparateur entre les
éléments.

Qu’en est-il pour une liste en ligne de nombres décimaux ?

Christophe.

Quoi que tu fasses le résultat sera moche. Dans mon boulot on a l’habitude de mettre des point-virgules. Ça ne doit être conforme à aucune norme ou autre mais c’est lisible : 1,23; 5,34; 4,654.

Le 22 août 2024 23:37:10 GMT+02:00, Christophe Poulain xyz@xyz.tld a écrit :

Bonsoir,

tout est dans le titre :slight_smile:

Les listes en ligne utilisent la virgule comme séparateur entre les
éléments.

Qu’en est-il pour une liste en ligne de nombres décimaux ?

Christophe.

Bonjour,

Le 22/08/2024 à 23:37, Christophe Poulain a écrit :

tout est dans le titre :slight_smile:

J’ai trouvé ça
https://www.orthotypographie.fr/volume-I/alliage-avertissement.html#Anglais
ok c’est pour l’anglais mais le “Il n’y a pas d’espace après ces signes.
Cela les distingue des signes de ponctuation et permet de lire ceci sans
trop d’effort” peut aussi s’appliquer au français. Non ? Et surtout, on
n’est pas plus con que les anglais :slight_smile:

Avis tout personnel : avec des chiffres français ça fait plus joli
De Cabochon à Citation — Orthotypographie, de Jean-Pierre Lacroux (Lexique des règles typographiques françaises) :slight_smile:

Jean-Yves

Le 22 août 2024 à 23:37, Christophe Poulain xyz@xyz.tld a écrit :

Bonsoir,

tout est dans le titre :slight_smile:

Les listes en ligne utilisent la virgule comme séparateur entre les éléments.

Qu’en est-il pour une liste en ligne de nombres décimaux ?

Il est clair que les anglo saxons ont été plus malins que nous sur ce coup là !

Le problème vient de ce qu’en typo française,

— le séparateur décimal est la virgule (ni précédée ni suivie d’espace) : en termes texiens, c’est \mathord{,}, mais en pratique on obtient le même effet en la plaçant dans un groupe : $3{,}14$ plutôt que $3\mathord{,}14$.

— le séparateur employé dans les listes, les n-uplets, les intervalles, etc. est encore la virgule, mais cette fois-ci avec une espace après est pas d’espace avant. En termes texiens, cette virgule-là est donc classée mathpunct, son statut par défaut, ce qui change tout, mais probablement pas suffisamment.
$(a,b,c)\in \symbb{R}^3$, le repère $(O,\vec{\imath},\vec{\jmath})$, $x_1,x_2,\ldots,x_n$, l’intervalle $[0,+\infty[$.

Donc en théorie, il n’y a pas de problème puisque les espacements différents suppriment en principe toute ambiguïté.

Le point $A$ de coordonnées $(0{,}1,0{,}2,0{,}3)$.

En réalité, la plupart trouveront que l’espace post virgule, est bien petit et que l’ambiguïté subsiste. Je ne vois que trois remèdes :

  1. Remplacer la virgule par un point-virgule.
  2. Augmenter la force des espaces de la seconde virgule, par exemple en la classant \mathrel
  3. Remplacer la virgule par un point-virgule et augmenter la force des espaces du point-virgule, par exemple en le classant \mathrel.

%%%%%%%%%%%%%%%%%%%%%
% !TEX TS-program = LuaLaTeX
\documentclass[a4paper,french]{article}
\usepackage{unicode-math,babel}
\newcommand\sepa{\mathrel{,}}
\newcommand\sepb{\mathrel{;}}

\begin{document}
$3\mathord{,}14$\quad $3{,}14$

$(a,b,c)\in \symbb{R}^3$, le repère $(O,\vec{\imath},\vec{\jmath})$, $x_1,x_2,\ldots,x_n$, l’intervalle $[0,+\infty[$

\begin{align*}
&(0{,}1,0{,}2,0{,}3)\
&(0{,}1;0{,}2;0{,}3)\
&(0{,}1\sepa 0{,}2\sepa 0{,}3)\
&(0{,}1\sepb 0{,}2\sepb 0{,}3)
\end{align*}

\end{document}
%%%%%%%%%%%%%%%%%%%%%%%

Personnellement, je trouve que la solution 1 n’apporte pas grand chose, et qu’en revanche la solution 2 peut suffire.

MAIS là où tout se complique, c’est que tu vas probablement vouloir reproduire cela au tableau, et attendre de jeunes élèves qu’ils reproduisent cela sur des cahiers. Et là, fini la gestion fine des espaces offerte par TeX.

Par conséquent si j’ai bien compris ta demande, il me semble que la meilleure solution sera 3. En tout cas, en tant qu’enseignant, le choix te revient…
Note que cette gestion des espaces est perfectible, sans doute. Tu peux par exemple jeter un œil à la façon dont amsmath définit la commande \colon.


Michel Bovani

Merci Michel pour ces précisions. Me reste plus qu’à choisir. :slight_smile:

Le ven. 23 août 2024 à 20:09, Michel Bovani xyz@xyz.tld a
écrit :

Le 22 août 2024 à 23:37, Christophe Poulain xyz@xyz.tld a
écrit :

Bonsoir,

tout est dans le titre :slight_smile:

Les listes en ligne utilisent la virgule comme séparateur entre les
éléments.

Qu’en est-il pour une liste en ligne de nombres décimaux ?

Il est clair que les anglo saxons ont été plus malins que nous sur ce coup
là !

Le problème vient de ce qu’en typo française,

— le séparateur décimal est la virgule (ni précédée ni suivie d’espace) :
en termes texiens, c’est \mathord{,}, mais en pratique on obtient le même
effet en la plaçant dans un groupe : $3{,}14$ plutôt que $3\mathord{,}14$.

— le séparateur employé dans les listes, les n-uplets, les intervalles,
etc. est encore la virgule, mais cette fois-ci avec une espace après est
pas d’espace avant. En termes texiens, cette virgule-là est donc classée
mathpunct, son statut par défaut, ce qui change tout, mais probablement pas
suffisamment.
$(a,b,c)\in \symbb{R}^3$, le repère $(O,\vec{\imath},\vec{\jmath})$,
$x_1,x_2,\ldots,x_n$, l’intervalle $[0,+\infty[$.

Donc en théorie, il n’y a pas de problème puisque les espacements
différents suppriment en principe toute ambiguïté.

Le point $A$ de coordonnées $(0{,}1,0{,}2,0{,}3)$.

En réalité, la plupart trouveront que l’espace post virgule, est bien
petit et que l’ambiguïté subsiste. Je ne vois que trois remèdes :

  1. Remplacer la virgule par un point-virgule.
  2. Augmenter la force des espaces de la seconde virgule, par exemple en la
    classant \mathrel
  3. Remplacer la virgule par un point-virgule et augmenter la force des
    espaces du point-virgule, par exemple en le classant \mathrel.

%%%%%%%%%%%%%%%%%%%%%
% !TEX TS-program = LuaLaTeX
\documentclass[a4paper,french]{article}
\usepackage{unicode-math,babel}
\newcommand\sepa{\mathrel{,}}
\newcommand\sepb{\mathrel{;}}

\begin{document}
$3\mathord{,}14$\quad $3{,}14$

$(a,b,c)\in \symbb{R}^3$, le repère $(O,\vec{\imath},\vec{\jmath})$,
$x_1,x_2,\ldots,x_n$, l’intervalle $[0,+\infty[$

\begin{align*}
&(0{,}1,0{,}2,0{,}3)\
&(0{,}1;0{,}2;0{,}3)\
&(0{,}1\sepa 0{,}2\sepa 0{,}3)\
&(0{,}1\sepb 0{,}2\sepb 0{,}3)
\end{align*}

\end{document}
%%%%%%%%%%%%%%%%%%%%%%%

Personnellement, je trouve que la solution 1 n’apporte pas grand chose, et
qu’en revanche la solution 2 peut suffire.

MAIS là où tout se complique, c’est que tu vas probablement vouloir
reproduire cela au tableau, et attendre de jeunes élèves qu’ils
reproduisent cela sur des cahiers. Et là, fini la gestion fine des espaces
offerte par TeX.

Par conséquent si j’ai bien compris ta demande, il me semble que la
meilleure solution sera 3. En tout cas, en tant qu’enseignant, le choix te
revient…
Note que cette gestion des espaces est perfectible, sans doute. Tu peux
par exemple jeter un œil à la façon dont amsmath définit la commande \colon.


Michel Bovani
https://tango.mathriochka.net

Le 23/08/24 à 20h09, Michel Bovani a écrit :

l’intervalle $[0,+\infty[$

Au passage, je signale le danger qu’il y a à ainsi manuellement saisir
les intervalles et on pourra préférer recourir aux commandes \inter...
du package tdsfrmath :

–8<---------------cut here---------------start------------->8—
\documentclass{article}
\usepackage{tdsfrmath}

\begin{document}
\begin{itemize}
\item Supposons $[0,+\infty[ \ni x$.
\item Supposons $\interfo{0 +\infty} \ni x$.
\item Supposons $x \in ]0,+\infty[$.
\item Supposons $x \in \interof{0 +\infty}$.
\end{itemize}
\end{document}
–8<---------------cut here---------------end--------------->8—

Ou alors, recourir au package ibrackets (incompatible avec
tdsfrmath) qui corrige automatiquement le problème des intervalles
saisis manuellement.

Denis

Le 24 août 2024 à 15:50, Denis Bitouzé xyz@xyz.tld a écrit :

Le 23/08/24 à 20h09, Michel Bovani a écrit :

l’intervalle $[0,+\infty[$

Au passage, je signale le danger qu’il y a à ainsi manuellement saisir
les intervalles et on pourra préférer recourir aux commandes \inter...
du package tdsfrmath :

Moi j’ajoute juste un \left et un \right, j’aurais dû le faire d’ailleurs… C’est pas la même chose ?


Michel Bovani

Bonjour,

Puisqu’on parle d’intervalles, j’ai l’habitude d’écrire par exemple :

supposons $[0,\infty\mathclose[ \ni x$ ou $x \in \mathopen]0,1]$

Est-ce incorrect ?

Laurent

Le 24 août 2024 à 15:50, Denis Bitouzé xyz@xyz.tld a écrit :

Le 23/08/24 à 20h09, Michel Bovani a écrit :

l’intervalle $[0,+\infty[$

Au passage, je signale le danger qu’il y a à ainsi manuellement saisir
les intervalles et on pourra préférer recourir aux commandes \inter...
du package tdsfrmath :

–8<---------------cut here---------------start------------->8—
\documentclass{article}
\usepackage{tdsfrmath}

\begin{document}
\begin{itemize}
\item Supposons $[0,+\infty[ \ni x$.
\item Supposons $\interfo{0 +\infty} \ni x$.
\item Supposons $x \in ]0,+\infty[$.
\item Supposons $x \in \interof{0 +\infty}$.
\end{itemize}
\end{document}
–8<---------------cut here---------------end--------------->8—

Ou alors, recourir au package ibrackets (incompatible avec
tdsfrmath) qui corrige automatiquement le problème des intervalles
saisis manuellement.

Denis

Bonjour,

Le 25/08/2024 à 08:59, Laurent Chéno a écrit :

Puisqu’on parle d’intervalles, j’ai l’habitude d’écrire par exemple :

supposons $[0,\infty\mathclose[ \ni x$ ou $x \in \mathopen]0,1]$

Est-ce incorrect ?

Pas du tout, c’est l’orthodoxie même ! les extensions interval.sty et
consorts ne sont que des habillages des commandes de base \mathopen et
\mathclose dont le but est de proposer une syntaxe plus intuitive.


Daniel Flipo