Numéro de référence faux

Bonjour la liste,
Dans l’ECM, ci-dessous j’ai créé une commande \Capacite, avec compteur. La commande en que telle fonctionne bien mais c’est son appel qui ne fonctionne pas.
En effet, quand je fais appel à la capacité 2 (dernière ligne), la référence ne marche pas. J’attends “Les valeurs sont celles de la capacit'e \ref{CapB}.” mais j’obtiens “Les valeurs sont celles de la capacit'e 1.”, où la valeur 1 est celle du numéro de chapitre.
Comment faire ?
Merci pour vos éclairages !
Arnaud Gazagnes

********************** ECM

\documentclass[12pt,a4paper,]{article}

\newcounter{numcap}\setcounter{numcap}{0}\newcommand{\numerocap}{\stepcounter{numcap}{\textbf{\arabic{numcap}}}}

\newcommand{\Capacite}[1]{\textbf{Capacit'e \numerocap}\par #1}

\begin{document}
\section{S}

\Capacite{A}\bigskip

\Capacite{B}\label{CapB}\bigskip

\Capacite{C}\bigskip

Les valeurs sont celles de la capacit'e \ref{CapB}.

\end{document}

********************** Fin ECM

Bonjour,

Je ne peux pas tester là mais essayez déjà de remplacer \stepcounter par
\refstepcounter.

Cordialement,
Céline Chevalier

Le lun. 14 août 2023, 08:46, Gazagnes Arnaud xyz@xyz.tld a
écrit :

Bonjour la liste,
Dans l’ECM, ci-dessous j’ai créé une commande \Capacite, avec compteur. La
commande en que telle fonctionne bien mais c’est son appel qui ne
fonctionne pas.
En effet, quand je fais appel à la capacité 2 (dernière ligne), la
référence ne marche pas. J’attends « Les valeurs sont celles de la
capacit'e \ref{CapB}. » mais j’obtiens « Les valeurs sont celles de la
capacit'e 1. », où la valeur 1 est celle du numéro de chapitre.
Comment faire ?
Merci pour vos éclairages !
Arnaud Gazagnes

********************** ECM

\documentclass[12pt,a4paper,]{article}

\newcounter{numcap}\setcounter{numcap}{0}\newcommand{\numerocap}{\stepcounter{numcap}{\textbf{\arabic{numcap}}}}

\newcommand{\Capacite}[1]{\textbf{Capacit'e \numerocap}\par #1}

\begin{document}
\section{S}

\Capacite{A}\bigskip

\Capacite{B}\label{CapB}\bigskip

\Capacite{C}\bigskip

Les valeurs sont celles de la capacit'e \ref{CapB}.

\end{document}

********************** Fin ECM

Bonjour la liste,
Lorsque je saisis"$a\equiv b\pod n$", le “n” est entre parenthèses. D’après les conventions actuelles, il devrait être entre crochets.
Y a-t-il une commande ?
Sinon, sans difficulté, je saisirai "$a\equiv b\ [n]$ …
Arnaud Gazagnes

Le 15/08/2023 à 09:52, Gazagnes Arnaud a écrit :

Lorsque je saisis"$a\equiv b\pod n$", le “n” est entre parenthèses.
D’après les conventions actuelles, il devrait être entre crochets.
Y a-t-il une commande ?
Sinon, sans difficulté, je saisirai "$a\equiv b\ [n]$ …

Les notations sont diverses et variées:

https://fr.wikipedia.org/wiki/Congruence_sur_les_entiers#Notation

Le package amsmath ne propose pas la notation avec crochets mais on peut
s’inspirer de la définition de \pmod:

\documentclass{article}
\usepackage{amsmath}
\makeatletter
\newcommand\bracketmod[1]{%
\allowbreak\if@display\mkern 18mu\else\mkern 8mu\fi[#1]%
}
\makeatother
\begin{document}
\begin{gather}
a \equiv b \mod n\
a \equiv b \bmod n\
a \equiv b \pmod n\
a \equiv b \pod n\
a \equiv b \bracketmod n
\end{gather}
\end{document}

Cordialement,

 Paul Gaborit

Bonjour,

Outre la bonne solution proposée par Paul, si vous avez beaucoup de maths à composer en français, il peut être intéressant d’adopter le package frenchmath (relativement récent puisque sorti en 2019 et régulièrement mis à jour, c’est pourquoi il peut être utile de régulièrement regarder les nouveautés sur le CTAN ou sur les publications qui font de la veuille sur les nouveautés — comme la Lettre GUTenberg — car la documentation de référence, notamment sous la forme de livres, n’est pas forcément très à jour).

Le package frenchmath fournit la commande \cmod pour ce que vous souhaitez.

Sa définition est relativement simple (\newcommand*\cmod[1]{\quad[#1]}). Mais elle ne s’adapte pas à l’environnement mathématique (la définition procurée par Paul produit un espacement différent, plus faible, lorsque la commande est employée dans une formule en ligne, par rapport à ce qui est obtenu hors ligne). C’est peut-être un point dont il faudrait faire part à l’auteur de frenchmath, si c’est mieux du point de vue de la typographie française ?

Voici donc une démonstration inspirée de celle de Paul, avec l’ajout de la commande \cmod pour pouvoir faire les comparaisons :

\documentclass[11pt]{article}
\usepackage{amsmath}
\usepackage{frenchmath} % pour la commande \cmod
\makeatletter
\newcommand\bracketmod[1]{%
\allowbreak\if@display\mkern 18mu\else\mkern 8mu\fi[#1]%
}
\makeatother
\begin{document}
\begin{gather}
a \equiv b \mod n\
a \equiv b \bmod n\
a \equiv b \pmod n\
a \equiv b \pod n\
a \equiv b \bracketmod n\
a \equiv b \cmod n
\end{gather}

$a \equiv b \bracketmod n$

$a \equiv b \cmod n$
\end{document}

Outre frenchmath, qui peut répondre à votre question, le package mismath du même auteur peut également apporter quelques commandes utiles, par exemple pour mieux ajuster la hauteur des flèches sur certains caractères lorsqu’on compose des vecteurs avec la notation fléchée. Évidemment, avec plus de 6450 packages à ce jour sur le CTAN, il est difficile de savoir trouver l’information. Même la toute nouvelle troisième édition de The LaTeX Compagnon n’a pas cité ces deux nouveaux packages, ce qui se comprend, la rédaction de la refonte a débuté il y a quelques années et même en deux volumes, le nombre de pages (près de 2000) reste limité, et la spécificité de frenchmath ne touche guère le public anglophone. C’est pourquoi, le mieux reste de régulièrement regarder les nouveautés présentes sur le CTAN pour repérer des packages qui peuvent se révéler fort utiles. Cela peut être chronophage, j’en conviens.

Le 15 août 2023 à 10:48, Paul Gaborit xyz@xyz.tld a écrit :

Le 15/08/2023 à 09:52, Gazagnes Arnaud a écrit :

Lorsque je saisis"$a\equiv b\pod n$", le “n” est entre parenthèses. D’après les conventions actuelles, il devrait être entre crochets.
Y a-t-il une commande ?
Sinon, sans difficulté, je saisirai "$a\equiv b\ [n]$ …

Les notations sont diverses et variées:

https://fr.wikipedia.org/wiki/Congruence_sur_les_entiers#Notation

Le package amsmath ne propose pas la notation avec crochets mais on peut s’inspirer de la définition de \pmod:

\documentclass{article}
\usepackage{amsmath}
\makeatletter
\newcommand\bracketmod[1]{%
\allowbreak\if@display\mkern 18mu\else\mkern 8mu\fi[#1]%
}
\makeatother
\begin{document}
\begin{gather}
a \equiv b \mod n\
a \equiv b \bmod n\
a \equiv b \pmod n\
a \equiv b \pod n\
a \equiv b \bracketmod n
\end{gather}
\end{document}

Cordialement,

Paul Gaborit