Les guillemets intelligents cassent le modèle de citation

Sur au moins deux sites Discourse différents, j’ai rencontré un problème où, lorsque je sélectionne du texte et que j’appuie sur « Citer » pour répondre, des guillemets intelligents sont utilisés à un endroit, ce qui casse l’apparence de mon message. Voici une capture d’écran d’un exemple de message qui s’affiche incorrectement en raison du guillemet intelligent à la fin de la première ligne (entre crochets) :

Cela se produit depuis des mois, et je viens seulement de comprendre ce qui se passait avec ces messages.

Je peux le reproduire environ 50 % du temps sur Safari 18.4 sur Mac OS 15.4 ainsi que sur une version antérieure de Safari sur Mac OS 15.3.

Le site que j’administre où je le vois exécute Discourse 3.4.2. Un autre site sur lequel je viens de le rencontrer exécute 3.4.0.beta3-dev.

Je crois avoir également vu d’autres personnes rencontrer ce problème sur mon site, mais je n’ai pas vérifié cela aujourd’hui.

1 « J'aime »

Bien sûr, une correction définitive devrait être apportée pour un bug, mais au cas où cela serait utile entre-temps, je mentionnerai qu’une solution de contournement pourrait consister à supprimer les guillemets doubles du paramètre du site Guillemets typographiques Markdown, ou à désactiver le paramètre du site Activer le typographe Markdown.

Je suppose que c’est cette fonctionnalité « Typographe Markdown » qui provoque le remplacement du caractère de guillemet double droit correct dans la balise BBCode par le caractère incorrect « intelligent » ou « guillemet courbé ».

C’est une bonne intuition, mais je me souviens d’un problème similaire il y a des années et je me rappelle que nous avons même du code dans Discourse qui convertit « → » pour gérer ce cas particulier.

@jtbayly ces sites ont-ils le nouveau compositeur activé ?

Ni la nouvelle composition n’est activée.

Un autre utilisateur rapporte que si je désactive les substitutions de guillemets intelligents dans Safari via Édition- substitutions- guillemets intelligents, cela résoudra le problème.

Je ne veux pas particulièrement faire cela, haha. J’aime mes guillemets intelligents la plupart du temps.

Je pense que c’est le problème, en plus du fait que nous imitons la saisie de l’utilisateur sur la textarea dans ce type d’ajout pour éviter de perdre l’historique d’annulation.

Je crois que cela peut être « résolu » avec un spellcheck="false" sur l’élément, mais cela a un inconvénient évident.

Ce qui cause le problème, c’est la citation incohérente, cela fonctionnerait s’il y avait le même style de guillemets des deux côtés – n’importe lequel de ces ensembles peut être utilisé :

C’est étrange que seul le deuxième guillemet ait été converti lors de la citation, les deux côtés sont convertis si le même BBCode est tapé manuellement.

2 « J'aime »

Le problème est également incohérent. Cela ne se produit pas à chaque fois, bien que je n’aie pas encore compris quand cela arrive et quand cela ne arrive pas.

C’est drôle que cela fonctionne avec tant d’options de guillemets différentes, mais celle-ci ne fonctionne pas. Je me demande…

Serait-ce en fait une correction simple et ne causerait pas de problèmes de faire correspondre les styles de guillemets incohérents ? " et ” en particulier ?

devrions-nous modifier notre analyseur pour autoriser la paire « » et diverses citations étranges et obscures qui se retrouvent dans le bbcode ?

1 « J'aime »