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/05/24 22:03] – joseph.wright | 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? ====== |
- | section: How do I do& | + | |
- | subsection: Hyphenation | + | |
- | permalink: / | + | |
- | date: 2014-06-10 | + | |
- | --- | + | |
- | # Stopping all hyphenation | ||
- | It may seem an odd thing to want to do (after all, one of TeX's | + | Cela peut sembler une drôle d' |
- | great advertised virtues is the quality of its hyphenation) but it's | + | est l'une des forces de TeX) mais c'est parfois nécessaire. |
- | sometimes necessary. | + | |
- | TeX's output is by default largely dependent on the presence of | + | |
- | hyphenation; | + | |
- | give. | + | |
- | TeX (slightly confusingly) offers four possible mechanisms for | + | <note important> |
- | suppressing hyphenation (there were only two prior to the extensions | + | Si vous utilisez couramment |
- | that arrived with TeX version& | + | des blocs de texte plutôt esthétiques. Or ceci est largement dépendant de l' |
+ | de la césure... Si vous abandonnez la césure, vous risquez d' | ||
+ | </ | ||
- | First, one can set the hyphenation penalties `\hyphenpenalty` and | ||
- | `\exhyphenpenalty` to an '' | ||
- | This means that all hyphenations will sufficiently penalise the line | ||
- | that would contain them, that the hyphenation won't happen. | ||
- | 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 | + | TeX offre quatre façons différentes de supprimer la césure |
- | exist. | + | que deux jusqu' |
- | 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 | ||
- | sufficiently large value that no hyphenation could possibly succeed, | ||
- | 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 | + | ===== Par les pénalités de coupure de mots ===== |
- | font by the command | + | |
- | ```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]({% post_url | + | ----- |
- | 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: | ||
+ | }} | ||