La mise en surbrillance des URL n'est pas conforme aux spécifications

P.S. Lorsque j’ai essayé de publier, j’ai vu apparaître le message d’erreur « Une erreur s’est produite : Désolé, les nouveaux utilisateurs ne peuvent mettre que 2 liens dans un message. ». Je ne sais pas quel type de spam cela est censé empêcher, car un lien suffit à la plupart des spammeurs, mais maintenant je dois remplacer certains de mes liens markdown joliment formatés par des notes de bas de page textuelles. Le processus d’ajout d’une note de bas de page dans l’éditeur markdown par défaut est en soi tellement buggé et frustrant qu’il mérite un rapport séparé.


P.S.S. Il semble que les références basées sur Markdown soient également comptées comme des liens. Je les supprime en faveur de chiffres en exposant Unicode. À la 40e minute de ma tentative d’écrire ce message.


Selon STD 66 / RFC 3986¹ (liste extraite lisible par l’homme²), 81 caractères peuvent être non échappés dans un fragment d’URL ou une file d’attente. Cette liste, triée par ordre ASCII par le framework « Foundation³ » dans le langage de programmation Swift : !$&'()*+,-./0123456789:;=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~

Voici une URL contenant plusieurs de ces caractères : Example Domain'()*+,-./0123456789:;=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~ Comme vous pouvez le voir, la mise en surbrillance est coupée à un certain point.

En travaillant sur mon projet qui utilise ces 81 caractères pour encoder des données binaires dans des fragments (à la manière de base64, mais de manière plus compacte), j’ai vérifié maintenant la mise en surbrillance conforme aux spécifications sur plusieurs sites Web. Bien qu’un bug similaire ait été, de manière incohérente, présent dans d’autres endroits (comme le forum GitHub incapable de mettre en surbrillance le dernier caractère s’il s’agit d’un ~), Discourse a la plus grande sélection de symboles cassés. Certains caractères peuvent ou non casser la mise en surbrillance en fonction d’un contexte mystérieux, je ne pense donc pas pouvoir composer une liste complète.

¹ Google rfc/rfc3986.txt
² Recherchez la réponse Stack Overflow #26119120
³ Recherchez la documentation/foundation/nscharacterset/urlfragmentallowed sur Apple > Developer


P.S.S.S. Certaines adresses e-mail standard ne sont pas non plus mises en surbrillance. J’utiliserai mon deuxième lien pour pointer vers https://e-mail.wtf pour quelques exemples.

Non mis en surbrillance, mais devrait l’être :

orgmail(to John Doe)@example.com
“:(){ :|: };:”@example.com
magic@[::1]

1 « J'aime »

Bienvenue dans notre communauté !

Merci d’avoir posté ceci. Je ne pense pas que ce que vous signalez soit un Bug en soi, j’ai donc déplacé cela vers Feature. Cela pourrait en fait appartenir à quelque chose comme Dev car c’est très technique.

C’est une limite pour les nouveaux utilisateurs, afin d’empêcher les spammeurs de publier beaucoup de liens. Une fois que vous aurez passé un peu de temps ici, cette limite sera automatiquement levée. Ici sur meta, j’ai augmenté la limite de 2 URL par défaut à 5 car elle semble plutôt stricte et nous avons également des mesures anti-spam basées sur l’IA en place qui attrapent tout le spam, quel que soit le nombre de liens.

Si vous avez d’autres commentaires à ce sujet, n’hésitez pas à créer un sujet dans Site feedback.