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/12/02 22:34] – jejust | 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: | ||
- | ====== | + | ====== |
- | 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 3). | + | 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 '' | ||
- | '' | ||
- | 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 (il n'y en avait |
- | exist. | + | que deux jusqu'à la version 3 de TeX). |
- | and the [[ctanpkg> | + | |
- | '' | + | |
- | hyphenation. | + | |
- | '' | + | |
- | to prevent any hyphenation in a single-language document. | + | |
- | technique cannot work in a document in which [[ctanpkg> | + | |
- | language selection, since [[ctanpkg> | + | |
- | change into its language change facilities. | + | |
- | Third, one can set '' | ||
- | 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 | + | |
+ | 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: | ||
<code latex> | <code latex> | ||
\hyphenchar\font=-1 | \hyphenchar\font=-1 | ||
</ | </ | ||
- | This isn't a particularly practical way for users to suppress | ||
- | hyphenation --- the command has to be issued for every font the | ||
- | document uses --- but it's how LaTeX itself suppresses hyphenation | ||
- | in '' | ||
- | Which of the techniques you should use depends on what you actually | + | Ce n'est pas un moyen spécialement commode pour l' |
- | want to do. If the text whose hyphenation is to be suppressed runs | + | doit être répétée pour chaque police utilisée dans le document, mais c'est ainsi que |
- | for less than a paragraph, your only choice is the no-hyphens | + | LaTeX supprime la césure dans les polices '' |
- | 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, | ||
- | [[ctanpkg> | ||
- | throughout using either the no-hyphens language or the hyphen minima: | ||
- | all those values get changed at a [[ctanpkg> | ||
- | the penalties instead. | ||
- | If you simply switch off hyphenation for a good bit of text, the | + | ===== Comment choisir? ===== |
- | output will have a jagged edge (with many lines seriously overfull), | + | |
- | and your (La)TeX | + | Cela dépend de ce que vous voulez réellement faire... |
- | and underfull boxes (that is, really, lines). | + | Si le texte dont la césure doit être désactivé s' |
- | two options. | + | 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 multilingue en utilisant l' | ||
+ | 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{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 | ||
+ | </ | ||
- | The simplest route is to use '' | + | < |
- | '' | + | \documentclass[10pt]{article} |
- | be underfull lines to fill the space offered, while prematurely | + | |
- | wrapping overfull lines and stretching the remainder. | + | |
+ | | ||
+ | \usepackage[french]{babel} | ||
+ | \pagestyle{empty} | ||
- | The better bet is to set the text [[FAQ-ragright|ragged right]], | + | \begin{document} |
- | and at least get rid of the overfull lines; this technique is | + | \lefthyphenmin=62 |
- | " | + | \righthyphenmin=62 |
- | be expected to | + | \raggedright |
- | appeal to the specifiers of eccentric document layouts (such as those | + | |
- | for dissertations), | + | |
- | style. | + | |
+ | 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 /> | ||
- | --- | ||
- | //Source:// [[faquk> | + | ----- |
+ | //Sources:// | ||
+ | * [[faquk> | ||
+ | * [[https:// | ||
- | {{htmlmetatags> | + | {{htmlmetatags> |
- | metatag-og: | + | metatag-og: |
metatag-og: | metatag-og: | ||
}} | }} | ||