Dans un document, je voudrais que l'appel de \section renvoie "Partie A", "Partie B", etc. dans mon pdf au lieu de la numérotation habituelle ; je voudrais que ces entrées apparaissent correctement dans la table des matières (jusqu'ici, le problème est bien renseigné), mais je voudrais également qu'un \label puis \ref appliqué à une section renvoie simplement le numéro de la section : A, B, C... et là, ça coince.

\documentclass[french]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{amsmath,amssymb}
\usepackage{lmodern}
\usepackage[a4paper]{geometry}
\usepackage{titletoc}
\usepackage{babel}
\renewcommand{\thesection}{Partie \Alph{section}}
\titlecontents{section}%
[3.8em]% retrait à gauche
{\addvspace{0pt}}% matériel avant commun aux entrées numérotées ou pas
{\contentslabel{2.3em}\hspace{2.3em}}% avant lorsqu ' il y a un numéro %%ajout d'espace avec \hspace{2.3em}
{\hspace{-2.3em}}% avant lorsqu ' il n ' y a pas de numéro
{\titlerule*[0.75em]{.}\contentspage}% points de suspension et numéro de page
[\addvspace{0pt}]% matériel après

\begin{document}

\tableofcontents

\section{Ensemble des nombres réels \label{reels}}

On l'appelle $\mathbb{R}$.

\section{Ensemble des nombres complexes \label{complexes}}

On l'appelle $\mathbb{C}$.

Les calculs de la partie \ref{reels} se généralisent à la partie \ref{complexes}.

\end{document}

(code adapté de ce sujet)

Je pourrais évidemment écrire "d'après la \ref{reels}..." mais je ne veux pas de majuscule dans ma référence.

Posée 30 Jul '23, 21:57

gnut's gravatar image

gnut
7113
Taux d'acceptation : 0%

Modifiée 30 Jul '23, 23:38


Bon entre-temps j'ai trouvé et je vais auto-répondre, peut-être que ça servira à quelqu'un... la solution que j'ai trouvée se trouve dans la combinaison des packages titletoc et titlesec. titlesec contient la commande \titleformat qui redéfinit proprement la commande \section et titletoc contient la commande \titlecontents qui l'insère dans la table des matières comme je veux.

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{amsmath,amssymb}
\usepackage[a4paper]{geometry}
\usepackage[french]{babel}
\usepackage{titletoc,titlesec}

\renewcommand{\thesection}{\Alph{section}}
\titleformat{\section}[hang]{\normalfont\LARGE\bfseries}{Partie \thesection}{18.5pt}{}

\titlecontents{section}%
[0em]% decalage a gauche
{\addvspace{1em plus 0pt}\bfseries}% code avant
{Partie \thecontentslabel\quad}% code lorsque qu'il y a un numero
{}% code lorsque qu'il n'y a pas un numero
{\hfill\contentspage}% code pour le numero de page
[\addvspace{0pt}]% code apres

\begin{document}

\tableofcontents

\section{Ensemble des nombres réels \label{reels}}

On l'appelle $\mathbb{R}$.

\subsection{Une première idée}
\subsubsection{Une première sous-idée}
\subsubsection{Une deuxième sous-idée}

\section{Ensemble des nombres complexes \label{complexes}}
On l'appelle $\mathbb{C}$.

Les calculs de la partie \ref{reels} se généralisent à la partie \ref{complexes}.
\end{document}

Bon ce qui me gêne c'est que je ne connais pas les valeurs par défaut dont je veux au maximum me rapprocher mais le résultat me semble visuellement satisfaisant.

Lien permanent

Publiée 31 Jul '23, 01:29

gnut's gravatar image

gnut
7113
Taux d'acceptation : 0%

Modifiée 31 Jul '23, 01:29

Votre réponse
(dés)activer l'aperçu

Suivre cette question

Par courriel :

Une fois que vous serez enregistré, vous pourrez souscrire à n'importe quelle mise à jour ici

Par flux RSS :

Réponses

Réponses et commentaires

Bases de Markdown

  • *italique* ou _italique_
  • **gras** ou __gras__
  • Lien ::[texte](http://url.com/ "Titre ")
  • Image : ?![alt texte](/path/img.jpg "Titre ")
  • Liste numérotée : 1. Foo 2. Bar
  • Pour ajouter un passage à la ligne, ajoutez deux espaces à l'endroit où vous souhaitez que la ligne commence.
  • Les balises HTML de base sont également prises en charge.