Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
2_composition:langues:cesure:permettre_la_coupure_des_mots_contenant_un_trait_d_union [2002/02/19 13:54] m2f |
2_composition:langues:cesure:permettre_la_coupure_des_mots_contenant_un_trait_d_union [2021/02/10 19:59] (Version actuelle) bdumont typo |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | \question{Comment définir les césures de groupes de mots conjugués avec un trait d'union ?} | + | ====== Comment obtenir une césure dans un mot ou groupe de mots qui contient déjà un trait d'union ? ====== |
+ | |||
+ | ===== Problème ===== | ||
+ | |||
+ | Par défaut, <latex>\TeX</latex> [[2_composition:langues:cesure:la_cesure_ne_fonctionne_pas|coupe | ||
+ | tout mot composé à l'endroit exact du trait d'union et uniquement à cet endroit]]. | ||
+ | C'est une cause possible de [[2_composition:texte:paragraphes:latex_fait_des_lignes_trop_longues|débordement]] | ||
+ | (avertissement ''overfull hbox''), comme dans l'exemple suivant : | ||
+ | |||
+ | <WRAP column 60ex> | ||
+ | <code latex> | ||
+ | Il fut un temps où la Russie était gouvernée depuis la ville de Saint-Pétersbourg. | ||
+ | Les tsars y habitaient et y gouvernaient. Puis les bolchéviks déplacèrent | ||
+ | le centre du pouvoir à Moscou. Aujourd'hui le pouvoir n'est plus détenu par les | ||
+ | bolchéviks, mais la capitale est toujours Moscou. | ||
+ | </code> | ||
+ | </WRAP> | ||
+ | <WRAP column 40ex> | ||
+ | <latex> | ||
+ | Il fut un temps où la Russie était gouvernée depuis la ville de Saint-Pétersbourg. | ||
+ | Les tsars y habitaient et y gouvernaient. Puis les bolchéviks déplacèrent | ||
+ | le centre du pouvoir à Moscou. Aujourd'hui le pouvoir n'est plus détenu par les | ||
+ | bolchéviks, mais la capitale est toujours Moscou. | ||
+ | </latex> | ||
+ | </WRAP> | ||
+ | <WRAP clear /> | ||
+ | |||
+ | Le problème peut aussi se produire avec des groupes verbaux, comme « définissez-le » | ||
+ | ou « observèrent-ils ». | ||
+ | |||
+ | Deux approches sont alors possibles | ||
+ | |||
+ | * Soit l'on force <latex>\TeX</latex> à introduire quand même une césure ; | ||
+ | * Soit l'on convient qu'introduire une coupure de mots là où il y a déjà un trait d'union n'est pas du meilleur effet, auquel cas il faut trouver une autre solution. | ||
+ | |||
+ | ===== Forcer la césure ===== | ||
+ | |||
+ | ==== Commandes de TeX ==== | ||
+ | |||
+ | Dans ce cas, la [[2_composition:texte:mots:introduire_des_coupures_de_mots#globalement|commande \hyphenation]] ne fonctionnera pas | ||
+ | pour la raison décrite plus haut. Cependant, vous pouvez utiliser la [[[[2_composition:texte:mots:introduire_des_coupures_de_mots#localement|commande \-]] | ||
+ | à l'endroit désiré. | ||
+ | |||
+ | <WRAP column 60ex> | ||
+ | <code latex> | ||
+ | Il fut un temps où la Russie était gouvernée | ||
+ | depuis la ville de Saint-Péters\-bourg. | ||
+ | Les tsars y habitaient et y gouvernaient. Puis les bolchéviks déplacèrent | ||
+ | le centre du pouvoir à Moscou. Aujourd'hui le pouvoir n'est plus détenu par les | ||
+ | bolchéviks, mais la capitale est toujours Moscou. | ||
+ | </code> | ||
+ | </WRAP> | ||
+ | <WRAP column 40ex> | ||
+ | <latex> | ||
+ | Il fut un temps où la Russie était gouvernée depuis la ville de Saint-Péters\-bourg. | ||
+ | Les tsars y habitaient et y gouvernaient. Puis les bolchéviks déplacèrent | ||
+ | le centre du pouvoir à Moscou. Aujourd'hui le pouvoir n'est plus détenu par les | ||
+ | bolchéviks, mais la capitale est toujours Moscou. | ||
+ | </latex> | ||
+ | </WRAP> | ||
+ | <WRAP clear /> | ||
+ | |||
+ | ==== Extensions ==== | ||
+ | |||
+ | L'extension [[ctanpkg>babel|babel]] possède une commande ''\allowhyphens'' qui | ||
+ | permet de laisser à <latex>\TeX</latex> le choix des autres coupures dans le mot. | ||
+ | Cette commande se place à gauche ou à droite du trait d'union suivant la partie | ||
+ | où l'on souhaite autoriser la césure, soit ici : | ||
+ | |||
+ | <code latex> | ||
+ | Saint-\allowhyphens{}Pétersbourg | ||
+ | </code> | ||
+ | |||
+ | Cette méthode a l'avantage de laisser à <latex>\TeX</latex> le soin de déterminer | ||
+ | la césure dans la deuxième partie du mot. Notez que cette commande ne fonctionne pas | ||
+ | avec un encodage T1 ; il est peu probable que vous soyez concerné·e. | ||
+ | |||
+ | FIXME **À intégrer :** D'autres extensions sont mentionnées | ||
+ | [[https://stackoverflow.com/questions/2193307/how-do-i-get-latex-to-hyphenate-a-word-that-contains-a-dash|ici]]. | ||
+ | |||
+ | ===== Éviter d'introduire un deuxième tiret et trouver une autre solution ===== | ||
+ | |||
+ | ==== Réécrire la phrase ==== | ||
+ | |||
+ | Souvent, il suffit d'une petite reformulation pour faire disparaître le problème. Par exemple : | ||
+ | |||
+ | <WRAP column 60ex> | ||
+ | <code latex> | ||
+ | Autrefois la Russie était gouvernée depuis la ville de Saint-Pétersbourg. | ||
+ | Les tsars y habitaient et y gouvernaient. Puis les bolchéviks déplacèrent | ||
+ | le centre du pouvoir à Moscou. Aujourd'hui le pouvoir n'est plus détenu par les | ||
+ | bolchéviks, mais la capitale est toujours Moscou. | ||
+ | </code> | ||
+ | </WRAP> | ||
+ | <WRAP column 40ex> | ||
+ | <latex> | ||
+ | Autrefois la Russie était gouvernée depuis la ville de Saint-Pétersbourg. | ||
+ | Les tsars y habitaient et y gouvernaient. Puis les bolchéviks déplacèrent | ||
+ | le centre du pouvoir à Moscou. Aujourd'hui le pouvoir n'est plus détenu par les | ||
+ | bolchéviks, mais la capitale est toujours Moscou. | ||
+ | </latex> | ||
+ | </WRAP> | ||
+ | <WRAP clear /> | ||
+ | |||
+ | N'appliquez cette correction que lorsque le texte et a mise en page sont établis définitivement : | ||
+ | sinon, il est possible que le problème se résolve de lui-même au cours de la rédaction. | ||
+ | |||
+ | ==== Suggérer un passage à la ligne au niveau du trait d'union ==== | ||
+ | |||
+ | Vous pouvez suggérer à <latex>\TeX</latex> de passer à la ligne au niveau du tiret existant | ||
+ | en utilisant la [[2_composition:texte:paragraphes:latex_fait_des_lignes_trop_longues#avec_la_commande_linebreak|commande \linebreak]]. | ||
+ | |||
+ | <WRAP column 60ex> | ||
+ | <code latex> | ||
+ | Il fut un temps où la Russie était gouvernée | ||
+ | depuis la ville de Saint-\linebreak[4]Pétersbourg. | ||
+ | Les tsars y habitaient et y gouvernaient. Puis les bolchéviks déplacèrent | ||
+ | le centre du pouvoir à Moscou. Aujourd'hui le pouvoir n'est plus détenu par les | ||
+ | bolchéviks, mais la capitale est toujours Moscou. | ||
+ | </code> | ||
+ | </WRAP> | ||
+ | <WRAP column 40ex> | ||
+ | <latex> | ||
+ | Il fut un temps où la Russie était gouvernée depuis la ville de Saint-\linebreak[4]Pétersbourg. | ||
+ | Les tsars y habitaient et y gouvernaient. Puis les bolchéviks déplacèrent | ||
+ | le centre du pouvoir à Moscou. Aujourd'hui le pouvoir n'est plus détenu par les | ||
+ | bolchéviks, mais la capitale est toujours Moscou. | ||
+ | </latex> | ||
+ | </WRAP> | ||
+ | <WRAP clear /> | ||
+ | |||
+ | Dans le cas présent, il est nécessaire de donner la valeur la plus élevée (4) à la commande ''\linebreak'' | ||
+ | car elle provoque un espacement très important entre les mots de la première ligne. Cela pourrait constituer | ||
+ | une gêne si la ligne suivante était beaucoup plus resserrée. | ||
+ | |||
+ | Notez que dans le cas où vous avez spécifié une valeur de 4 à ''\linebreak'', il faudra penser à supprimer la | ||
+ | commande si vous réécrivez le texte plus tard, sans quoi vous pourriez vous retrouver avec le résultat suivant : | ||
+ | |||
+ | <WRAP column 60ex> | ||
+ | <code latex> | ||
+ | La Russie était gouvernée depuis la ville de | ||
+ | Saint-\linebreak[4]Pétersbourg. Les tsars y habitaient et y gouvernaient. Puis les bolchéviks déplacèrent | ||
+ | le centre du pouvoir à Moscou. Aujourd'hui le pouvoir n'est plus détenu par les | ||
+ | bolchéviks, mais la capitale est toujours Moscou. | ||
+ | </code> | ||
+ | </WRAP> | ||
+ | <WRAP column 40ex> | ||
+ | <latex> | ||
+ | La Russie était gouvernée depuis la ville de Saint-\linebreak[4]Pétersbourg. | ||
+ | Les tsars y habitaient et y gouvernaient. Puis les bolchéviks déplacèrent | ||
+ | le centre du pouvoir à Moscou. Aujourd'hui le pouvoir n'est plus détenu par les | ||
+ | bolchéviks, mais la capitale est toujours Moscou. | ||
+ | </latex> | ||
+ | </WRAP> | ||
+ | <WRAP clear /> | ||
+ | |||
+ | ==== Modifier une coupure de ligne précédente === | ||
+ | |||
+ | Lorsque le mot qui déborde n'est pas sur la première ligne du paragraphe, il est | ||
+ | possible de faire terminer une des lignes précédentes légèrement avant ou après | ||
+ | l'endroit fixé par l'algorithme de <latex>\TeX</latex>. Considérons cet exemple : | ||
+ | |||
+ | <WRAP column 60ex> | ||
+ | <code latex> | ||
+ | Aujourd'hui, nous savons tous que la capitale de la Russie est Moscou. | ||
+ | Cependant, encore au début du XX\textsuperscript{e} siècle, | ||
+ | l'empereur vivait à Saint-Pétersbourg. | ||
+ | Puis les bolchéviks déplacèrent le centre du pouvoir à Moscou. | ||
+ | </code> | ||
+ | </WRAP> | ||
+ | <WRAP column 40ex> | ||
+ | <latex> | ||
+ | Aujourd'hui, nous savons tous que la capitale de la Russie est Moscou. | ||
+ | Cependant, encore au début du XX\textsuperscript{e} siècle, | ||
+ | l'empereur vivait à Saint-Pétersbourg. | ||
+ | Puis les bolchéviks déplacèrent le centre du pouvoir à Moscou. | ||
+ | </latex> | ||
+ | </WRAP> | ||
+ | <WRAP clear /> | ||
+ | |||
+ | Ici, le léger débordement est causé par le fait que <latex>\TeX</latex> | ||
+ | ne coupe pas « cependant » à la première syllabe. De ce fait, on constate | ||
+ | également que la première ligne a un espacement entre les mots exagérément large, | ||
+ | surtout comparé à la deuxième où les mots sont reserrés au maximum. | ||
+ | Si l'on ne peut pas reformuler le texte, une solution envisageable est d'autoriser | ||
+ | la césure entre les deux premières syllabes de « cependant ». Cela peut | ||
+ | paraître, en soi, inélégant, mais ce n'est pas inacceptable, et l'on évite du | ||
+ | même coup le débordement et une différence d'espacement trop visible entre les deux | ||
+ | premières lignes. | ||
+ | |||
+ | <WRAP column 60ex> | ||
+ | <code latex> | ||
+ | Aujourd'hui, nous savons tous que la capitale de la Russie est Moscou. | ||
+ | Ce\-pendant, encore au début du XX\textsuperscript{e} siècle, | ||
+ | l'empereur vivait à Saint-Pétersbourg. | ||
+ | Puis les bolchéviks déplacèrent le centre du pouvoir à Moscou. | ||
+ | </code> | ||
+ | </WRAP> | ||
+ | <WRAP column 40ex> | ||
+ | <latex> | ||
+ | Aujourd'hui, nous savons tous que la capitale de la Russie est Moscou. | ||
+ | Ce\-pendant, encore au début du XX\textsuperscript{e} siècle, | ||
+ | l'empereur vivait à Saint-Pétersbourg. | ||
+ | Puis les bolchéviks déplacèrent le centre du pouvoir à Moscou. | ||
+ | </latex> | ||
+ | </WRAP> | ||
+ | <WRAP clear /> | ||
+ | |||
+ | <note> | ||
+ | Pour les besoins de l'exemple, nous avons délibérément omis de charger | ||
+ | [[ctanpkg>babel]] ou [[ctanpkg>polyglossia]] avec l'option ''french'' : | ||
+ | en effet, l'algorithme de césure pour le français aurait coupé « cependant ». | ||
+ | </note> | ||
+ | |||
+ | |||
+ | {{htmlmetatags>metatag-keywords=(LaTeX, coupure) | ||
+ | metatag-og:title=(Comment définir les césures de groupes de mots conjugués avec un trait d'union?) | ||
+ | metatag-og:site_name=(FAQ LaTeX francophone) | ||
+ | }} | ||
- | \reponse Par défaut, \TeX coupe tout mot composé à l'endroit exact du | ||
- | trait d'union et uniquement à cet endroit. Mais cela peut se modifier. | ||
- | Dans ce but, le package \pack{french} (V4.02 et sup.) possède une | ||
- | commande \cmd{allowhyphens} qui permet de laisser à \TeX le choix des | ||
- | autres coupures dans le mot. | ||
- | \begin{Rq} | ||
- | la commande \cmd{hyphenation} ne permet pas d'intégrer un trait | ||
- | d'union car ce caractère sert à indiquer un point de coupure et | ||
- | uniquement cela. | ||
- | \end{Rq} | ||
- | Voici donc la solution : | ||
- | \cmd{showhyphens}\marg{définissez\cmd{allowhyphens}-le} donne alors comme | ||
- | points de coupure : dé-fi-nis-sez-le. | ||