Quelques exemples pour ceux qui ne connaissent pas :

  • mettre en gras [b]texte[/b]
  • mettre en italique [i]texte[/i]
  • mettre un lien [url=http://url/]Nom[/url]

et attention accrochez vous, pour les listes :

[list=1]
[*]Faire les magasins
[*]Acheter un nouvel ordinateur
[*]Injurier son ordinateur lorsqu'il plante
[/list]

Je trouve le bbcode complexe, pas du tout intuitif. Nul quoi. Certes il faut proposer une alternative au manque d'édition wysiwyg correct dans les formulaires HTML (j'y reviendrais). Mais il faut que cette alternative soit la plus simple et la plus intuitive possible pour que les néophites puissent l'utiliser. Cela nécessite alors qu'il y ait le moins de chose à connaître pour structurer ses propos. En fait, comme si on écrivait à la main.

Le bbcode est à l'opposé de cette philosophie :

  1. C'est complexe à souhait. Par exemple pour les listes, pourquoi mettre toutes ces balises alors que l'analyseur de code n'a qu'à détecter un tiret en début de ligne (comme pour les moteurs wiki) ? Cette complexité est inutile (et déficiente : dans un forum phpbb, si on oublie le [*] en début de ligne, le balisage html générée est foireux)
  2. Cela n'est pas plus simple à écrire que le html à cause d'un système de balise à rallonge. Donc pourquoi faire apprendre aux utilisateurs un nième "langage" ? Pourquoi ne pas leur proposer directement d'écrire en html ?
  3. Pour nous, possesseurs de clavier azerty, c'est très chiant à utiliser, car on est obligé de faire des combinaisons de touches compliquées (altgr+"(" ou ")" pour avoir les [ et ].

Bref, finalement, écrire du HTML serait plus simple. Mais ce n'est pas la solution non plus.

L'utilisation d'outils comme htmlarea ou fckeditor semble la solution : ils proposent de faire de l'édition wysiwyg. Malheureusement, ils ont aussi leurs imperfections, comme j'en avais parlé en mars dernier, ce qui n'est pas satisfaisant (voir aussi le billet de Jedi/Sector One à ce propos).

Reste le wiki, à mi chemin entre un balisage affreux imposé par le bbcode et une génération de balise HTML déficientes dans les éditeurs wysiwyg.

(Bon, coté éditeur wysiwyg générant un balisage propre, Daniel s'en occupe et je ne vais pas tarder à l'aider, et coté wiki, vous avez bien sûr wikirenderer )