Ajouter le support des italiques et gras au niveau des blocs en BBCode

Considérez ce texte :

[i]
Italique - Première ligne
Italique - Deuxième ligne
[/i]

Il s’affiche comme suit :

Italique - Première ligne
Italique - Deuxième ligne

Maintenant, considérez le même texte avec une ligne vide :

[i]
Italique - Première ligne

Italique - Deuxième ligne
[/i]

Il s’affiche comme suit :
[i]
Italique - Première ligne

Italique - Deuxième ligne
[/i]

(Le BBCode échoue)

Est-ce le comportement attendu ?

1 « J'aime »

Je ne pense pas que [i] soit conçu comme un balisage multi-lignes ? En d’autres termes, faites ceci :

[i]Italique - Première ligne[/i]

[i]Italique - Deuxième ligne[/i]
3 « J'aime »

À ma connaissance, le BBCode n’est pas entièrement spécifié pour couvrir ce cas, mais tous les exemples pertinents de BBCode sont sur une seule ligne. Il est donc peu probable qu’il s’agisse d’un bug.

La méthode habituelle pour activer le balisage sur plusieurs lignes consiste à ajouter des sauts de ligne HTML <br/> pour rendre explicites les lignes supplémentaires entre les balises. Cela fonctionne également ici :

bbcode [i] italique avec <br/> <br/> saut de ligne html [/i] exemple.

bbcode italique avec

saut de ligne html
exemple.

2 « J'aime »

@Remah, ajouter un &nbsp; fonctionne aussi :

[i]
Italique - Première ligne
&nbsp;
Italique - Deuxième ligne
[/i]

Rendu :

Italique - Première ligne
 
Italique - Deuxième ligne

@codinghorror, je pense que tu as raison, car le balisage suivant ne présente pas ce problème :

[code]
Bloc de code - Première ligne

Bloc de code - Deuxième ligne
[/code]
2 « J'aime »

Oui, le bloc bbcode en italique n’est pas implémenté comme un élément multiligne. C’est le comportement actuel souhaité. Il en va de même pour le gras. La raison pour laquelle j’ai agi ainsi est que les balises <i> et <b> sont également traitées comme des balises en ligne plutôt que de bloc en HTML.

Je suis ouvert à élargir ce cas d’utilisation s’il y a suffisamment de demandes à cet effet, mais pour l’instant, le système se comporte comme prévu.

3 « J'aime »

Écrire plusieurs paragraphes en italique ou en gras sans prendre la peine d’ajouter la balise de mise en forme à chaque paragraphe est l’un de ces types de messages de forum au faible rapport effort/gêne qui, à mon avis, ne devraient pas être encouragés.

7 « J'aime »