Suivant: , Précédent: , Monter: Line breaking   [Table des matières][Index]


9.5 \discretionary (point de césure généralisé)

Synopsis :

\discretionary{avant-saut}{après-saut}{sans-saut}

La commande \discretionary permet de contrôler finement la césure dans les cas où ne suffisent ni le contrôle standard de la césure fait l’algorithme de césure de TeX et les règles de césures données par les paquetages de gestion linguistiques, ni les moyens de contrôle explicites offerts par les commandes \hyphenation (voir \hyphenation) et \- (voir \- (césure à gré)).

\discretionary indique qu’un saut de ligne est possible à cet endroit. Dans le cas d’un saut de ligne, le texte avant-saut est placé immédiatement avant le saut, et le texte après-saut immédiatement après. Dans le cas sans saut de ligne le texte sans-saut est imprimé.

Les arguments de \discretionary ne peuvent contrenir que des caractères, des boîtes ou des crénages.

L’usage typique de \discretionary est par exemple de contrôler la césure au sein d’une formule mathématique en mode ligne (voir aussi Miscellanées mathématique (entrée \*)). Ci-dessous un exemple de contrôle de la césure au sein d’une adresse réticulaire, où l’on autorise la césure sur les obliques mais en utilisant une contr’oblique violette en lieu de trait d’union :

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{xcolor}
\usepackage{hyperref}
\usepackage{french}
\newcommand*\DiscrSlash{\discretionary{\mbox{\textcolor
 {purple}{\textbackslash}}}{/}{/}}
\begin{document}
Allez donc à \href{http://une/tr\%c3\%A8s/tr\%c3\%A8s/longue%
  /mais/vraiment/tr\%c3\%A8s/longue/adresse/r\%C3\%A9ticulaire%
  /index.html}{http://une\DiscrSlash très\DiscrSlash très\DiscrSlash
  longue\DiscrSlash mais\DiscrSlash vraiment\DiscrSlash
  très\DiscrSlash longue\DiscrSlash adresse\DiscrSlash
  réticulaire\DiscrSlash index.html}
\end{document}