Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
composition:texte:renvois:references_croisees_entre_documents [2021/01/11 12:22] – Ajout de la traduction des éléments de la page anglaise et correction de la structure. yannick.tanguy | 3_composition:texte:renvois:references_croisees_entre_documents [2021/11/29 23:02] (Version actuelle) – Correction de la mise en forme. yannick.tanguy |
---|
====== Comment obtenir des références croisées à partir de plusieurs sources ? ====== | ====== Comment obtenir des références croisées à partir de plusieurs sources? ====== |
| |
Lors de la production d'un ensemble de documents interdépendants, vous souhaiterez probablement faire des références croisées //entre// ces documents ; mais, par défaut, <latex>\LaTeX</latex> ne le permet pas. | Lors de la production d'un ensemble de documents interdépendants, vous souhaiterez probablement faire des références croisées //entre// ces documents ; mais, par défaut, <latex>\LaTeX</latex> ne le permet pas. |
| |
===== Avec l'extension xr ===== | ===== Avec l'extension “xr” ===== |
| |
L'extension [[ctanpkg>xr|xr]] permet de répondre à ce besoin. Essayez de compiler les fichiers ''volume1.tex'' et ''volume2.tex'' qui servent d'exemple. | L'extension [[ctanpkg>xr]] permet de répondre à ce besoin. Essayez de compiler les fichiers ''volume1.tex'' et ''volume2.tex'' qui servent d'exemple. |
| |
<file latex volume1.tex> | <file latex volume1.tex> |
\documentclass{article} | \documentclass{article} |
\usepackage{xr} | \usepackage{xr} |
\externaldocument{volume1.tex} | \externaldocument{volume1} |
| |
\begin{document} | \begin{document} |
\externaldocument{volume1} | \externaldocument{volume1} |
</code> | </code> |
| |
| Cet exemple présuppose que ''volume1.tex'' et ''volume2.tex'' sont dans le même répertoire. |
| Si ce n'est pas le cas, il faut spécifier le chemin relatif ou absolu de ''volume1.tex'' : |
| |
| <code latex> |
| \externaldocument{../Volume-1/volume1} |
| </code> |
| |
| :!: Il ne faut pas indiquer l'extension ''.tex'' dans l'argument de la commande ''\externaldocument'', car ''xr'' utilise cet argument pour construire le nom du fichier ''.aux'' auquel il va se référer. Si vous écrivez ''\externaldocument{volume1.tex}'', vous obtiendrez l'erreur suivante : |
| |
| <code> |
| Package xr Warning: |
| No file volume1.tex.aux |
| LABELS NOT IMPORTED |
| </code> |
| |
| :!: Parce que ''xr'' utilise le fichier ''.aux'' du document extérieur, ''volume1.tex'' doit être compilé avant ''volume2.tex''. |
| |
==== Le cas des étiquettes ayant le même nom dans deux documents ==== | ==== Le cas des étiquettes ayant le même nom dans deux documents ==== |
</code> | </code> |
| |
===== Avec l'extension zref-xr ===== | ===== Avec l'extension “zref-xr” ===== |
| |
L'ensemble expérimental [[ctanpkg>zref|zref]] de Heiko Oberdiek comprend un mécanisme d'hyper-références croisées utilisant son extension [[ctanpkg>zref|zref-xr]]. L'utilisation est étroitement calquée sur celle de [[ctanpkg>xr|xr]] et de [[ctanpkg>xr-hyper|xr-hyper]]. En voici un exemple : | L'ensemble expérimental [[ctanpkg>zref]] de Heiko Oberdiek comprend un mécanisme d'hyper-références croisées utilisant son extension [[ctanpkg>zref|zref-xr]]. L'utilisation est étroitement calquée sur celle de [[ctanpkg>xr]] et de [[ctanpkg>xr-hyper]]. En voici un exemple : |
| |
<code latex> | <code latex> |
</code> | </code> |
| |
L'extension fournit toutes les fonctionnalités des anciennes extensions et peut traiter à la fois les étiquettes LaTeX « traditionnelles » et son propre style d'étiquettes. | L'extension fournit toutes les fonctionnalités des anciennes extensions et peut traiter à la fois les étiquettes <latex>\LaTeX</latex> « traditionnelles » et son propre style d'étiquettes. |
| |
----- | ----- |
| |
//Source:// [[faquk>FAQ-extref|Referring to labels in other documents]] | //Source:// [[faquk>FAQ-extref|Referring to labels in other documents]] |
| |