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 [2016/10/20 22:39] jejust |
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: | ||
- | ====== 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 ===== | ||
- | $\Reponse$ Par défaut, <latex>\TeX</latex> coupe tout mot composé à l'endroit exact du trait | + | Par défaut, <latex>\TeX</latex> [[2_composition:langues:cesure:la_cesure_ne_fonctionne_pas|coupe |
- | d'union et uniquement à cet endroit. Mais cela peut se modifier. Dans ce | + | tout mot composé à l'endroit exact du trait d'union et uniquement à cet endroit]]. |
- | but, le package [[ctanpkg>babel|babel]] possède une commande ''\allowhyphens'' qui | + | 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. | 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> | ||
- | <note> | + | Cette méthode a l'avantage de laisser à <latex>\TeX</latex> le soin de déterminer |
- | La commande ''hyphenation'' ne permet pas d'intégrer un trait | + | la césure dans la deuxième partie du mot. Notez que cette commande ne fonctionne pas |
- | d'union car ce caractère sert à indiquer un point de coupure et | + | avec un encodage T1 ; il est peu probable que vous soyez concerné·e. |
- | uniquement cela. | + | |
- | </note> | + | |
+ | 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]]. | ||
- | %Voici donc la solution : \newline | + | ===== Éviter d'introduire un deuxième tiret et trouver une autre solution ===== |
- | %''showhyphens''\marg{définissez''allowhyphens''-le}\newline | + | |
+ | ==== 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> | <code latex> | ||
- | \showhypens{définissez\allowhyphens-le} | + | 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> | </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) | ||
+ | }} | ||
+ | |||
+ | |||
+ | |||
- | donne alors comme points de coupure: dé-fi-nis-sez-le. | ||
- | % À FAIRE : comprendre le problème avec [T1] !! | ||