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:underscore_dans_un_label [2017/07/22 09:16] – Mots-clefs OpenGraph. jejust | 3_composition:texte:renvois:underscore_dans_un_label [2022/07/12 13:57] (Version actuelle) – [Solution simple et généralement suffisante] '\' → ''\'' dbitouze | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== Comment utiliser un underscore | + | ====== Comment utiliser un tiret bas dans le texte hors du mode mathématique? ====== |
- | Usually the underscore with its standard catcode " | + | ===== Problème ===== |
- | does not cause problems, if used inside '' | + | |
+ | Par défaut, le tiret bas ('' | ||
+ | |||
+ | ===== Comment faire pour le tiret bas soit traité comme un caractère normal ===== | ||
+ | |||
+ | ==== Cas où le tiret bas est considéré comme un caractère normal sans ajout d' | ||
+ | |||
+ | Le tiret bas est considéré par défaut comme un caractère normal dans les arguments de : | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * compteurs | ||
+ | * paramètres de placement (comme '' | ||
+ | |||
+ | Par exemple: | ||
+ | |||
+ | <WRAP column 40ex> | ||
<code latex> | <code latex> | ||
\documentclass{article} | \documentclass{article} | ||
Ligne 12: | Ligne 30: | ||
\end{document} | \end{document} | ||
</ | </ | ||
+ | </ | ||
+ | <WRAP column 30ex> | ||
+ | < | ||
+ | \documentclass{article} | ||
+ | \pagestyle{empty} | ||
+ | \begin{document} | ||
+ | \section{Hello World} | ||
+ | \label{sec_hello} | ||
+ | See section 1. | ||
+ | \end{document} | ||
+ | </ | ||
+ | </ | ||
+ | <WRAP clear /> | ||
+ | |||
+ | Si vous rencontrez quand même le message d' | ||
+ | vous utilisez sans doute | ||
+ | une extension qui modifie le comportement du tiret bas (autre que [[ctanpkg> | ||
+ | Dans ce cas, vous devez appliquer l'une des solutions suivantes. | ||
+ | |||
+ | |||
+ | ==== Solution simple et généralement suffisante ==== | ||
+ | |||
+ | L' | ||
+ | * En mode mathématique, | ||
+ | * Dans le corps du texte, affiche un tiret bas ; | ||
+ | * S'il est précédé du caractère '' | ||
+ | |||
+ | Dans la plupart des cas, cela correspond à l' | ||
+ | qu'il n'est plus considéré comme un caractère normal [[3_composition: | ||
+ | ou de manière plus limitée en utilisant l' | ||
+ | |||
+ | <WRAP column 65ex> | ||
+ | <code latex> | ||
+ | \documentclass{article} | ||
+ | |||
+ | \usepackage[french]{babel} | ||
+ | \usepackage{underscore} | ||
+ | |||
+ | \begin{document} | ||
+ | |||
+ | \section{Le fichier test_tiret-bas.pdf} | ||
+ | \label{sec_tiret} | ||
+ | Nous étudions ici le fichier test_tiret-bas.pdf. | ||
+ | |||
+ | \section{Autre section} | ||
+ | Voir la section \ref{sec_tiret}. | ||
+ | |||
+ | \end{document} | ||
+ | </ | ||
+ | </ | ||
+ | <WRAP column 30ex> | ||
+ | < | ||
+ | \documentclass{article} | ||
+ | |||
+ | \usepackage[french]{babel} | ||
+ | \usepackage{underscore} | ||
+ | |||
+ | \pagestyle{empty} | ||
+ | \begin{document} | ||
+ | \section{Le fichier test\string_tiret-bas.pdf} | ||
+ | \label{sec_hello} | ||
+ | Nous étudions ici le fichier test\string_tiret-bas.pdf. | ||
+ | |||
+ | \section{Autre section} | ||
+ | Voir la section 1. | ||
+ | \end{document} | ||
+ | </ | ||
+ | </ | ||
+ | <WRAP clear /> | ||
+ | |||
- | Also shorthands of package [[ctanpkg> | ||
- | because babel patches the '' | ||
- | support for shorthands. | ||
- | ===== Active underscore ===== | + | ==== Solution plus souple mais plus complexe |
- | Probably you are using a package that makes the underscore | + | Si les effets du tiret bas ont été redéfinis par d' |
- | Then it becomes more complicate. A workaround is '' | + | on peut, au lieu de charger l' |
- | to make the active underscore behave as normal | + | qui indique que le caractère qui suit immédiatement doit être traité comme un caractère |
+ | (plus précisément, | ||
<code latex> | <code latex> | ||
Ligne 28: | Ligne 114: | ||
</ | </ | ||
- | Also the label name is written into the '' | + | Comme le nom de l' |
- | read again at the end of document. | + | il faut assigner au tiret bas la catégorie (//catcode//) 12 lors de la lecture de ce fichier |
- | Here the catcode | + | |
<code latex> | <code latex> | ||
Ligne 37: | Ligne 122: | ||
</ | </ | ||
- | If the unknown package makes the catcode of the underscore active | + | Si l' |
- | before | + | avant le '' |
- | during the reading of the '' | + | pendant la lecture du fichier |
<code latex> | <code latex> | ||
Ligne 48: | Ligne 133: | ||
</ | </ | ||
- | The complete example: | + | Voici le code complet de l' |
+ | <WRAP column 45ex> | ||
<code latex> | <code latex> | ||
\documentclass{article} | \documentclass{article} | ||
Ligne 63: | Ligne 149: | ||
\fi | \fi | ||
\begin{document} | \begin{document} | ||
- | \section{Hello World} | + | \section{Bonjour !} |
- | \label{sec\string_hello} | + | \label{sec\string_bonjour} |
- | See section \ref{sec\string_hello}. | + | Voir section \ref{sec\string_bonjour}. |
\end{document} | \end{document} | ||
</ | </ | ||
- | + | </ | |
- | ===== Package underscore ===== | + | <WRAP column 30ex> |
- | + | <latexdoc> | |
- | Depending on the package that makes the underscore active, | + | |
- | the scope of the activeness and the definition of the underscore, | + | |
- | there might be more comfortable ways. | + | |
- | For example, package [[ctanpkg>underscore]] makes the underscore active | + | |
- | and that breaks the referencing system. But the package supports babel. | + | |
- | The underscore behaves as shorthand and is supported, if babel is loaded: | + | |
- | + | ||
- | <code latex> | + | |
\documentclass{article} | \documentclass{article} | ||
- | + | \pagestyle{empty} | |
- | \usepackage[english]{babel} | + | |
- | \usepackage{underscore} | + | |
\begin{document} | \begin{document} | ||
- | \section{Hello World} | + | \section{Bonjour !} |
- | \label{sec_hello} | + | \label{hello} |
- | See section | + | Voir section |
\end{document} | \end{document} | ||
- | </code> | + | </latexdoc> |
+ | </ | ||
+ | <WRAP clear /> | ||
----- | ----- | ||
- | //Source:// [[https:// | + | //Sources:// |
+ | * [[https:// | ||
+ | * [[texdoc> | ||
- | {{htmlmetatags> | + | {{htmlmetatags> |
- | metatag-og: | + | metatag-og: |
metatag-og: | metatag-og: | ||
}} | }} | ||