@abelthorne & fabux : J'ai bien compris vos arguments, et je suis même d'accord avec certains : ce serait peut-être plus cool de permettre une mise en forme du code.
Et effectivement, la balise code fait l'objet d'un traitement particulier qui empêche l'imbrication des balises à l'intérieur.
Mais ce que j'essaie de vous expliquer, c'est que ce fonctionnement est
voulu (et
logique).
La balise code est
justement là POUR EMPECHER cette mise en forme !
Mon argument sur la police fixe n'ayant pas porté (même si je suis à peu près sûr que tous les sytèmes ne disposent pas d'une version "gras" ou "italique" de la police system par défaut, mais bon..), je vais en développer 2 autres, plus concrets :
1) Je publie un
code C :
#include <stdio.h>
main()
{
int b;
char *tab[2];
tab[0] = "toto";
b = 0;
printf("%s\n", tab[b]);
}
Comment voulez-vous que le parser fasse la différence entre le
[b]
de mon code, et un éventuel
[b]
de
mise en gras ??? (puisque c'est le bbcode utilisé pour cette fonctionnalité).
J'ai évidemment pris un exemple particulier (qui peut d'ailleurs se décliner si ma variable s'appelle 'i' ou 'color'), mais cela montre l'idée : on ne
peut pas pré-supposer de ce qui peut être publié en tant que "code". Code HTML, code PHP, code C (ou code Lisp pour les anciens 😉), ou même code bbcode !! (cf. exemple ci-dessous).
2) Je
réponds à un utilisateur qui me demande "
Comment mettre en gras une partie de mon message ?" :
Il faut que tu utilises le bbcode comme cela : [b]ton texte[/b]
Si les bbcodes étaient interprêtés dans le code ci-dessus, JAMAIS mon utilisateur n'aurait compris la démarche...
La balise code (et son traitement) répond donc à un
besoin spécifique, qui est,
en plus de la police "fixed", la
non-interprêtation du bbcode....
J'espère que ces exemples vous convaincront.
PS @admins : vous devriez implémenter la balise [c] (code en ligne), cela aurait simplifié mon message... 😉