Ceci est une ancienne révision du document !


Comment faire référence plusieurs fois à la même note de bas de

page~?} %6.32 \label{footnote-multi-ref}

$\Reponse$ Le package fixfoot permet de définir une note en bas de page, sous forme de commande que l'on pourra utiliser plusieurs fois. Voir l'exemple~\vref{ex=fixfoot}.

\begin{docexemple}{Plusieurs références à la même note avec % fixfoot\label{ex=fixfoot}} \documentclass[a4paper]{article} % test file for fixfoot.sty % – see that file for licence conditions % first release to ctan 2000/02/09 \usepackage{fixfoot} \DeclareFixedFootnote{\blah}{blah di blah} \begin{document}

  \noindent       here we are again\blah

\par\noindent happy as can be\blah \clearpage\noindent all good friends\blah \par\noindent and jolly good company\blah \end{document} </code>

$\Reponse$ Il faut \emph{décomposer} la commande footnote en deux : la première, footnotemark\oarg{numero}, place la marque de renvoi à la note de bas de page ; la seconde, footnotetext\oarg{numero}\marg{texte}, crée la note elle-m\^eme. La solution b\^ete serait la suivante :

Ici, du bla-bla\footnotemark[1] avec un renvoi vers 
la première note\footnotemark[2]. Si je veux à 
nouveau faire référence à la première 
note\footnotemark[1], c'est pas compliqué.
\footnotetext[1]{\`A propos de bla-bla.}
\footnotetext[2]{Au sujet d'autre chose...}

$\Reponse$ La « solution » précédente a le désagréable défaut d'avoir le numéro « en dur » dans le code. Si l'on crée une nouvelle note de bas de page avant, il va falloir changer les numéros à la main. C'est totalement contraire à l'esprit de \LaTeX.

Une solution plus propre consiste à faire une référence croisée entre les notes de bas de page. L'exemple précédent deviendra donc : % 1 2 3 4 5X 6 %23456789012345678901234567890123456789012345678901234567890

Ici, du bla-bla\footnote{\`A propos de bla-bla.
\label{footnote}} avec un renvoi vers la première
note\footnote{Au sujet d'autre chose...}. Si je
veux à nouveau faire référence à la
première note\footnotemark[\ref{footnote}], c'est
pas compliqué.

Cependant, cette solution ne fonctionne pas à la première compilation, car footnotemark ne re\c coit pas comme argument optionnel un numéro. Pour éviter ce problème, on pourra utiliser la commande suivante : % 1 2 3 4 5X 6 %23456789012345678901234567890123456789012345678901234567890

\makeatletter
\def\myref#1{%
  \expandafter\ifx\csname r@#1\endcsname\relax
    0\@latex@warning{Reference `#1' on page 
              \thepage \space undefined}%
  \else
    \ref{#1}%
  \fi}
\makeatother
 
Ici, du bla-bla\footnote{\`A propos de bla-bla.
\label{footnote}} avec un renvoi vers la première
note\footnote{Au sujet d'autre chose...}. Si je
veux à nouveau faire référence à la
première note\footnotemark[\myref{footnote}],
c'est pas compliqué.

La macro myref affiche la référence si elle existe, sinon elle écrit $0$ tout en avertissant l'utilisateur.

3_composition/texte/renvois/faire_reference_plusieurs_fois_a_une_note_de_bas_de_page.1476998105.txt.gz · Dernière modification: 2016/10/20 23:15 par jejust
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0