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:langues:cesure:desactiver_completement_la_cesure [2018/06/03 13:18] – samcarter | 3_composition:langues:cesure:desactiver_completement_la_cesure [2021/08/24 15:44] (Version actuelle) – Suite et fin de traduction. Ajout d'exemples de "\sloppy" et "\raggedright". jejust | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | --- | + | ====== Comment désactiver complètement la coupure des mots? ====== |
| - | title: Stopping all hyphenation | + | |
| - | category: usage | + | |
| - | tags: hyphenation | + | |
| - | permalink: / | + | |
| - | date: 2014-06-10 | + | |
| - | --- | + | |
| - | It may seem an odd thing to want to do (after all, one of TeX's | ||
| - | great advertised virtues is the quality of its hyphenation) but it's | ||
| - | sometimes necessary. | ||
| - | TeX's output is by default largely dependent on the presence of | ||
| - | hyphenation; | ||
| - | give. | ||
| - | TeX (slightly confusingly) offers four possible mechanisms for | + | Cela peut sembler une drôle d' |
| - | suppressing hyphenation | + | est l'une des forces de TeX) mais c'est parfois nécessaire. |
| - | that arrived with TeX version& | + | |
| - | First, one can set the hyphenation penalties `\hyphenpenalty` and | + | <note important> |
| - | `\exhyphenpenalty` to an " | + | Si vous utilisez couramment TeX, vous avez dû vous habituer à obtenir automatiquement |
| - | This means that all hyphenations will sufficiently penalise the line | + | des blocs de texte plutôt esthétiques. Or ceci est largement dépendant de l' |
| - | that would contain them, that the hyphenation won't happen. The | + | de la césure... Si vous abandonnez la césure, vous risquez d'être déçu par le résultat. |
| - | disadvantage of this method is that TeX will re-evaluate any | + | </ |
| - | paragraph for which hyphenations might help, which will slow TeX | + | |
| - | down. | + | |
| - | Second, one can select a language for which no hyphenation patterns | ||
| - | exist. | ||
| - | and the [`hyphenat`](https:// | ||
| - | `\nohyphens` command which sets its argument without any | ||
| - | hyphenation. | ||
| - | `\usepackage[none]{hyphenat}` | ||
| - | to prevent any hyphenation in a single-language document. | ||
| - | technique cannot work in a document in which [`babel`](https:// | ||
| - | language selection, since [`babel`](https:// | ||
| - | change into its language change facilities. | ||
| - | Third, one can set `\left-` and/or `\righthyphenmin` to a | + | TeX offre quatre façons différentes de supprimer la césure (il n'y en avait |
| - | sufficiently large value that no hyphenation could possibly succeed, | + | que deux jusqu' |
| - | since the minimum is larger than the length of the longest word | + | |
| - | TeX is willing to hyphenate (the appropriate value is 62). | + | |
| - | Fourth, one can suppress hyphenation for all text using the current | + | |
| - | font by the command | + | ===== Par les pénalités de coupure de mots ===== |
| - | ```latex | + | |
| + | Tout d' | ||
| + | des valeurs « infinies » (c' | ||
| + | suffisamment la ligne qui la contiendrait pour qu' | ||
| + | L' | ||
| + | pour lequel les césures pourraient être utiles, ce qui le ralentira. | ||
| + | |||
| + | <WRAP column 42ex> | ||
| + | **Césure standard**: | ||
| + | <code latex> | ||
| + | % | ||
| + | % | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | \documentclass[11pt]{article} | ||
| + | \usepackage[T1]{fontenc} | ||
| + | \usepackage[width=5.65cm, | ||
| + | \usepackage{lmodern} | ||
| + | \usepackage[french]{babel} | ||
| + | \pagestyle{empty} | ||
| + | |||
| + | \begin{document} | ||
| + | Longtemps, je me suis couché de bonne heure. Parfois, à peine ma bougie éteinte, mes yeux se fermaient si vite que je n' | ||
| + | \end{document} | ||
| + | </ | ||
| + | </ | ||
| + | <WRAP column 42ex> | ||
| + | **Sans césure**: | ||
| + | <code latex> | ||
| + | \hyphenpenalty=10000 | ||
| + | \exhyphenpenalty=10000 | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | \documentclass[11pt]{article} | ||
| + | \usepackage[T1]{fontenc} | ||
| + | \usepackage[width=5.65cm, | ||
| + | \usepackage{lmodern} | ||
| + | \usepackage[french]{babel} | ||
| + | \pagestyle{empty} | ||
| + | |||
| + | \hyphenpenalty=10000 | ||
| + | \exhyphenpenalty=10000 | ||
| + | |||
| + | \begin{document} | ||
| + | Longtemps, je me suis couché de bonne heure. Parfois, à peine ma bougie éteinte, mes yeux se fermaient si vite que je n' | ||
| + | \end{document} | ||
| + | </ | ||
| + | </ | ||
| + | <WRAP clear /> | ||
| + | |||
| + | |||
| + | ===== En utilisant une langue sans motifs de césure ===== | ||
| + | |||
| + | On peut sélectionner une langue pour laquelle aucun motif de césure n' | ||
| + | Certaines distributions créent pour cela une langue '' | ||
| + | et le paquetage [[ctanpkg> | ||
| + | qui compose son argument sans césure. | ||
| + | Vous pouvez charger [[ctanpkg> | ||
| + | <code latex> | ||
| + | \usepackage[none]{hyphenat} | ||
| + | </ | ||
| + | pour empêcher toute césure dans un document monolingue. | ||
| + | |||
| + | Cette technique ne peut pas fonctionner dans un document dans lequel [[ctanpkg> | ||
| + | est utilisé pour sélectionner la langue, puisque [[ctanpkg> | ||
| + | les paramètres de césure en même temps qu'il change la langue. | ||
| + | |||
| + | ===== En jouant sur les longueurs minimales des fragments coupés ===== | ||
| + | |||
| + | Les variables '' | ||
| + | la longueur minimale des fragments à gauche et à droite (respectivement) | ||
| + | d'une coupure de mot, en nombre de caractères. | ||
| + | |||
| + | Les valeurs standard en français et anglais sont: | ||
| + | <code latex> | ||
| + | \lefthyphenmin=2 | ||
| + | \righthyphenmin=3 | ||
| + | </ | ||
| + | |||
| + | Si vous leur donnez une valeur plus grande que la longueur du plus long mot existant, | ||
| + | vous désactiverez de fait la césure. | ||
| + | La valeur généralement conseillée est '' | ||
| + | \\ | ||
| + | |||
| + | :!: Les trois exemples ci-dessous n' | ||
| + | |||
| + | <WRAP column 33ex> | ||
| + | **Césure standard**: | ||
| + | <code latex> | ||
| + | \lefthyphenmin=2 | ||
| + | \righthyphenmin=3 | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | \documentclass[10pt]{article} | ||
| + | \usepackage[T1]{fontenc} | ||
| + | \usepackage[width=4.7cm, | ||
| + | \usepackage{lmodern} | ||
| + | \pagestyle{empty} | ||
| + | |||
| + | \begin{document} | ||
| + | \lefthyphenmin=2 | ||
| + | \righthyphenmin=3 | ||
| + | |||
| + | Longtemps, je me suis couché de bonne heure. Parfois, à peine ma bougie éteinte, mes yeux se fermaient si vite que je n' | ||
| + | \end{document} | ||
| + | </ | ||
| + | </ | ||
| + | <WRAP column 33ex> | ||
| + | **Petites valeurs**: | ||
| + | <code latex> | ||
| + | \lefthyphenmin=1 | ||
| + | \righthyphenmin=1 | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | \documentclass[10pt]{article} | ||
| + | \usepackage[T1]{fontenc} | ||
| + | \usepackage[width=4.7cm, | ||
| + | \usepackage{lmodern} | ||
| + | \pagestyle{empty} | ||
| + | |||
| + | \begin{document} | ||
| + | \lefthyphenmin=1 | ||
| + | \righthyphenmin=1 | ||
| + | |||
| + | Longtemps, je me suis couché de bonne heure. Parfois, à peine ma bougie éteinte, mes yeux se fermaient si vite que je n' | ||
| + | \end{document} | ||
| + | </ | ||
| + | </ | ||
| + | <WRAP column 33ex> | ||
| + | **Grandes valeurs**: | ||
| + | <code latex> | ||
| + | \lefthyphenmin=62 | ||
| + | \righthyphenmin=62 | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | \documentclass[10pt]{article} | ||
| + | \usepackage[T1]{fontenc} | ||
| + | \usepackage[width=4.7cm, | ||
| + | \usepackage{lmodern} | ||
| + | \pagestyle{empty} | ||
| + | |||
| + | \begin{document} | ||
| + | \lefthyphenmin=62 | ||
| + | \righthyphenmin=62 | ||
| + | |||
| + | Longtemps, je me suis couché de bonne heure. Parfois, à peine ma bougie éteinte, mes yeux se fermaient si vite que je n' | ||
| + | \end{document} | ||
| + | </ | ||
| + | </ | ||
| + | <WRAP clear /> | ||
| + | |||
| + | <note important> | ||
| + | '' | ||
| + | </ | ||
| + | |||
| + | ===== Par la méthode utilisée par LaTeX en interne ===== | ||
| + | |||
| + | Enfin, on peut supprimer la césure pour tout texte utilisant la police courante, | ||
| + | grâce à la commande: | ||
| + | < | ||
| \hyphenchar\font=-1 | \hyphenchar\font=-1 | ||
| - | ``` | + | </ |
| - | This isn't a particularly practical way for users to suppress | + | |
| - | hyphenation& | + | Ce n'est pas un moyen spécialement commode pour l'utilisateur, |
| - | document | + | doit être répétée pour chaque police utilisée dans le document, mais c'est ainsi que |
| - | in `tt` and other fixed-width | + | LaTeX supprime la césure dans les polices '' |
| + | |||
| + | |||
| + | ===== Comment choisir? ===== | ||
| + | |||
| + | Cela dépend de ce que vous voulez réellement faire... | ||
| + | Si le texte dont la césure doit être désactivé s' | ||
| + | votre seule possibilité est d' | ||
| + | en effet, la valeur de la langue peut être changée en cours de paragraphe | ||
| + | (comme la police courante), et avoir immédiatement un effet, | ||
| + | alors que les valeurs des pénalités et des longueurs minimales des fragments | ||
| + | ne sont utilisées qu'à la fin du paragraphe en cours pour mettre celui-ci en forme. | ||
| + | |||
| + | En revanche, si vous écrivez un document | ||
| + | vous //ne pouvez pas// désactiver la césure en utilisant une langue sans césure ou | ||
| + | les longueurs minimales des fragments, car toutes ces valeurs sont modifiées à chaque changement | ||
| + | de langue par [[ctanpkg> | ||
| + | |||
| + | |||
| + | ===== Comment améliorer le résultat? ===== | ||
| + | |||
| + | Si vous vous contentez de désactiver la césure pour une bonne partie du texte, | ||
| + | le bloc de texte aura une apparence « en dents de scie » sur la droite, | ||
| + | et de nombreuses lignes seront trop longues. | ||
| + | Pendant la compilation, | ||
| + | (à chaque ligne trop longue ou trop courte, en fait). | ||
| + | Pour éviter cela, vous avez deux options. | ||
| + | |||
| + | Le plus simple est d' | ||
| + | Cela demande à TeX d' | ||
| + | pour occuper tout l' | ||
| + | puis d' | ||
| + | Évidemment, | ||
| + | |||
| + | |||
| + | La meilleure solution consiste à composer le texte | ||
| + | [[3_composition: | ||
| + | (ou « en drapeau à droite »), avec la commande '' | ||
| + | pour se débarrasser au moins des lignes trop longues; | ||
| + | cette technique est « traditionnelle » (dans le sens où les dactylographes l'ont toujours fait) | ||
| + | et le résultat n'est pas forcément contraire au bon goût typographique. | ||
| + | |||
| + | Vous pouvez comparer le rendu ici: | ||
| + | |||
| + | <WRAP column 33ex> | ||
| + | **Césure juste désactivée**: | ||
| + | <code latex> | ||
| + | \lefthyphenmin=62 | ||
| + | \righthyphenmin=62 | ||
| + | % | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | \documentclass[10pt]{article} | ||
| + | \usepackage[T1]{fontenc} | ||
| + | \usepackage[width=4.6cm, | ||
| + | \usepackage{lmodern} | ||
| + | \usepackage[french]{babel} | ||
| + | \pagestyle{empty} | ||
| + | |||
| + | \begin{document} | ||
| + | \lefthyphenmin=62 | ||
| + | \righthyphenmin=62 | ||
| + | |||
| + | Longtemps, je me suis couché de bonne heure. Parfois, à peine ma bougie éteinte, mes yeux se fermaient si vite que je n' | ||
| + | \end{document} | ||
| + | </ | ||
| + | </ | ||
| + | <WRAP column 33ex> | ||
| + | **Avec '' | ||
| + | <code latex> | ||
| + | \lefthyphenmin=62 | ||
| + | \righthyphenmin=62 | ||
| + | \sloppy | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | \documentclass[10pt]{article} | ||
| + | \usepackage[T1]{fontenc} | ||
| + | \usepackage[width=4.6cm, | ||
| + | \usepackage{lmodern} | ||
| + | \usepackage[french]{babel} | ||
| + | \pagestyle{empty} | ||
| + | |||
| + | \begin{document} | ||
| + | \lefthyphenmin=62 | ||
| + | \righthyphenmin=62 | ||
| + | \sloppy | ||
| + | |||
| + | Longtemps, je me suis couché de bonne heure. Parfois, à peine ma bougie éteinte, mes yeux se fermaient si vite que je n' | ||
| + | \end{document} | ||
| + | </ | ||
| + | </ | ||
| + | <WRAP column 33ex> | ||
| + | **Avec '' | ||
| + | <code latex> | ||
| + | \lefthyphenmin=62 | ||
| + | \righthyphenmin=62 | ||
| + | \raggedright | ||
| + | </ | ||
| - | Which of the techniques you should use depends on what you actually | + | < |
| - | want to do. If the text whose hyphenation is to be suppressed runs | + | \documentclass[10pt]{article} |
| - | for less than a paragraph, your only choice is the no-hyphens | + | |
| - | language: the language value is preserved along with the text (in the | + | |
| - | same way that the current font is); the values for penalties and | + | |
| - | hyphen minima active at the end of a paragraph are used when | + | |
| - | hyphenation is calculated. | + | |
| - | Contrariwise, | + | \begin{document} |
| - | [`babel`](https:// | + | \lefthyphenmin=62 |
| - | throughout using either the no-hyphens language or the hyphen minima: | + | \righthyphenmin=62 |
| - | all those values get changed at a [`babel`](https:// | + | \raggedright |
| - | the penalties instead. | + | |
| - | If you simply switch off hyphenation for a good bit of text, the | + | Longtemps, je me suis couché de bonne heure. Parfois, à peine ma bougie éteinte, mes yeux se fermaient si vite que je n' |
| - | output will have a jagged edge (with many lines seriously overfull), | + | \end{document} |
| - | and your (La)TeX run will bombard you with warnings about overfull | + | </ |
| - | and underfull boxes (that is, really, lines). To avoid this you have | + | </ |
| - | two options. | + | <WRAP clear /> |
| - | The simplest route is to use `\sloppy` (or its environment version | ||
| - | `sloppypar`), | ||
| - | be underfull lines to fill the space offered, while prematurely | ||
| - | wrapping overfull lines and stretching the remainder. | ||
| - | The better bet is to set the text [ragged right](FAQ-ragright), | + | ----- |
| - | and at least get rid of the overfull lines; this technique is | + | // |
| - | " | + | * [[faquk>FAQ-hyphoff|Stopping all hyphenation]], |
| - | be expected to | + | * [[https:// |
| - | appeal | + | |
| - | for dissertations), | + | |
| - | style. | + | |
| + | {{htmlmetatags> | ||
| + | metatag-og: | ||
| + | metatag-og: | ||
| + | }} | ||

