Priorité/Gravité :
Moyenne
Plateforme
Système d’exploitation
Windows 11
Navigateur
Google Chrome 141.0.7390.123
Discourse
ad36231adab58a8a249bfe8139aade2bde2134d3
Description :
Il existe deux styles de mise en forme de « texte préformaté » :
- en ligne : à utiliser avec du contenu non textuel dans un passage de texte (par exemple, « appelez la fonction
foo»), ou une seule ligne courte de contenu non textuel. - bloc : à utiliser avec plusieurs lignes de contenu non textuel.
L’utilisateur peut adopter l’une des deux approches pour appliquer la mise en forme lors de l’utilisation de l’éditeur :
- proactive : le mode de mise en forme est activé avant l’ajout du contenu à formater
- rétroactive : le contenu est ajouté sous forme non formatée, puis sélectionné et la mise en forme est appliquée à cette sélection.
L’application de la mise en forme de « texte préformaté » à une sélection multiligne utilise le style « en ligne » inapproprié dans les conditions suivantes :
- L’éditeur est en mode « éditeur de texte enrichi »
- La mise en forme est appliquée rétroactivement
- Un saut de ligne forcé n’est pas présent dans le contenu sélectionné.
Cela rend le message difficile à lire et le contenu non textuel difficile à copier (une exigence courante pour le partage de code).
Étapes de reproduction :
- Ouvrez l’éditeur.
- Placez le commutateur de mode de l’éditeur sur la position « éditeur de texte enrichi ».
- Tapez
foodans l’éditeur. - Appuyez sur le raccourci clavier Shift+Entrée pour ajouter un « saut de ligne doux ».
- Tapez
bardans l’éditeur.
N’ajoutez pas de saut de ligne. - Appuyez sur le raccourci clavier Ctrl+Shift+Début pour sélectionner tout le contenu de la fin de la ligne 2 au début du message.
- Cliquez sur le bouton </> dans la barre d’outils de l’éditeur.
Chacune des lignes sélectionnées a été formatée individuellement dans le style en ligne :
foo
bar
Le comportement correct aurait été de placer le contenu dans un seul bloc de code :
foo
bar
Contexte supplémentaire
J’ai choisi l’approche de saisir manuellement le contenu pour la démo afin d’éviter d’introduire la complication inutile de prendre en compte la mise en forme qui peut être présente dans le contenu copié, en fonction de la source d’où il est copié. Cependant, le défaut se produit également avec le contenu collé et les conditions de contenu ne contenant pas de saut de ligne seront plus probables avec un tel contenu (car l’utilisateur utilisera probablement Entrée en tapant, même s’il ne voulait pas réellement de saut de ligne).
Le défaut ne se produit pas si vous utilisez « Tout sélectionner » / Ctrl+A pour sélectionner le contenu.
L’éditeur Markdown a le comportement correct de toujours placer le contenu sélectionné dans un bloc de code lorsque la mise en forme de « texte préformaté » est appliquée rétroactivement à une sélection multiligne.
Je suis en mesure de reproduire le défaut sur try.discourse.org en « mode sans échec » (https://meta.discourse.org/t/how-to-use-discourse-safe-mode/53504).
Initialement signalé sur Why did the Forum functions change? - #37 by sterretje - Website and Forum - Arduino Forum

