Traduction du billet
First official release of patBBCode de php-tools:
Mon parseur de balises BBCode,
patBBCode, est disponible en v1.0.0beta. Cette petite librairie permet de transformer des balises BBCode dans n'importe-quel contenu ASCII, et est basée sur un parseur SAX. Une seule expression régulière suffit pour récupérer toutes les balises, ensuite la transformation des balises est gérée par des objects filtres très faciles à programmer, ou directement par patBBCode dans le cas de balises 'simples' sans attributs.
La
documentation complète est disponible, et comme d'habitude une
série d'exemples aussi inclus dans l'archive d'installation permet de vite démarrer.
Certains sont déjà familiers avec patBBCode, mais avec cette publication il y encore du nouveau. Les objets filtres peuvent maintenant ajouter leurs propres messages d'erreur, par ex. si un attribut vital manque. Mais la plus grosse addition est le Describer, un objet additionnel qui permet de décrire un objet patBBCode existant. En clair, le Describer peut être utilisé pour générer une documentation complète de toutes les balises autorisées. Disponible en plusieurs formats par le choix d'un Driver, cette documentation peut par ex. être affichée comme guide à l'utilisateur:
// créer le descripteur
$descr =& patBBCode::createDescriber();
// créer le driver - le driver HTML livre
// directement du code HTML à intégrer dans
// une page existante.
$driver =& $descr->createDriver( 'HTML' );
// dire au descripteur d'utiliser ce driver
// $descr->setDriver( $driver );
// et afficher la documentation
echo $descr->describe( $BBCode );
Le bout de code ci-dessus donne
ce résultat - vous le trouverez dans les exemples de la librairie. Pour l'instant, le driver HTML est très simple, je compte en ajouter un pour patTemplate qui permettra de générer cette documentation exactement dans le style de la page dans laquelle elle sera intégrée. Petit avantage de taille: la doc peut être générée dans une des trois langues intégrées, Anglais, Français et Allemand.