Le problème
Soit le les lignes suivantes :
\documentclass{article}
\usepackage{polyglossia}
\setmainlanguage{french}
\setotherlanguage{english}
\usepackage[french=guillemets]{csquotes}
\begin{document}
\enquote{x}
\end{document}
Avant la version 1.42.4 de polyglossia, des espaces étaient automatiquement insérées au niveau des guillemets.
Après cette version, les espaces disparaissent.
La solution
Le problème a été introduit par un commit visant à résoudre un autre problème.
On pourrait évidemment surcharger le fichier french.ldf
modifié par ce commit pour revenir à l’ancien fichier. Toutefois, il n’est en généralement pas conseillé de surcharger un fichier entier : on ne profite pas des évolutions futures.
Cependant il est assez simple de corriger cela. Il suffit de rétablir au sein de la commande \french@punctuation
les codes commentés, et ce grâce à la commande \apptocmd
qui permet d’ajouter des morceaux de code à la fin d’une commande déjà existante.
Comme la commande \french@punctuation
contient des @
, et que les commandes que l’on souhaite insérer aussi, il faut entourer notre \apptocmd
de \makeatletter
…\makeatother
.
Cela étant, le seul bout de code à insérer dans le préambule est :
\apptocmd{\french@punctuation}{%
\XeTeXinterchartoks \french@punctguillstart 255 = {\nobreakspace\xpg@nospace}% "« " -> "«~"
\XeTeXinterchartoks 255 \french@punctguillend = {\xpg@unskip\nobreakspace}% " »" -> "~»"
}{}{}
Je ne manquerais pas de vous tenir au courant lorsque la nouvelle version de polyglossia sera sortie, mais il faudra alors passer à la TeXLive 2017, la TeXLive 2016 étant gelée.
Corrigenda : si vous utiliser TeXLive 2016, lisez l’article suivant "Polyglossia et XeLaTeX 3.14159265-2.6-0.99996 (TeXLive 2016)".
Vos commentaires
# Le 25 avril 2016 à 13:49, par alfa8my En réponse à : Bug avec polyglossia 1.42.4
Merci, ce problème me turlupinait !
# Le 10 juin 2016 à 10:31, par achemel En réponse à : Bug avec polyglossia 1.42.4
Bonjour,
La solution ci-dessus n’a pas fonctionné pour moi.
En revanche, grâce à https://github.com/josephwright/csq..., voici ce qui fonctionne :
Merci en tout cas pour ce blog, je suis en train de faire ma thèse (sciences humaines) grâce à vous sur LaTeX... Bravo pour le travail et les conseils. Je ne suis absolument pas une spécialiste... et j’y arrive :-)
# Le 10 juin 2016 à 10:47, par Maïeul En réponse à : Bug avec polyglossia 1.42.4
C’est parce que vous utiliser une version récente de XeLaTeX. Il y a un ticket ouvert sur le sujet, mais je crains qu’il ne soit résolu prochainement. Je comptais publier un billet à ce sujet ce week-end.
# Le 10 juin 2016 à 10:52, par Maïeul En réponse à : Bug avec polyglossia 1.42.4
ps : il manque les antislash dans votre exemple. Et puis pour faire bien il faudrait aussi corriger un bug sur certains signes typo.
Voir ce que j’utilise.
# Le 10 juin 2016 à 12:15, par achemel En réponse à : Bug avec polyglossia 1.42.4
Ah oui, les antislash... c’est la première fois que je poste du code sur un blog, alors je n’ai pas trop su utiliser « code », etc. J’ai pourtant fait copier/coller depuis TeXstudio.
Il est vrai que je rencontre ces problèmes (et d’autres... comme les numéros de notes en bas de page soudainement plus en exposant et bizarrement suivis d’un point [grr.. trouvé un début de réponse, mais qu’un début... re-grr]) depuis que je suis passée à la distribution 2016 de TeXLive, parce que, peut-être bêtement, je me dis qu’il faut passer au plus récent... Je suis même repassée à la distri 2015 pour un rapport à rendre hier soir (ce qui m’embête, parce que je n’ai pas assez de mémoire sur mon Mac pour garder les deux distri ensemble).
Bon, petits tracas, qui valent quand la peine d’être vécus tant l’apport de LaTeX est un soulagement dans la rédaction d’un très long document !
Encore merci pour votre lien vers votre package et pour tout le reste.
PS : je me suis inscrite sur gravatar, comme vous le conseillez, mais ce n’est pas « mon image » (de très belles marguerites) qui apparaît :-(
# Le 10 juin 2016 à 14:15, par Maïeul En réponse à : Bug avec polyglossia 1.42.4
Le problème de gravatar était juste une histoire de cache, parce que vous vous êtes inscrits après-coup. Pas très grave.
Pour ce qui est des notes, c’est un changement survenu dans la version 1.24.4 de polyglossia. Ce type de note correspond plus à la norme française.
Ce qui est moche, c’est qu’il n’ont pas prévenu, et surtout pas mis d’option pour rendre cela facultatif.
Cela étant, on peut contourner cela assez facilement. Remplacer
\setmainlanguage{french}
par :# Le 10 juin 2016 à 16:10, par achemel En réponse à : Bug avec polyglossia 1.42.4
GÉ-NIAL !!!!!
Ça marche !!!! Merci beaucoup...