Une nouvelle release pour mon framework Stato. Pas de nouveauté majeure, plutôt de nombreuses petites améliorations, ainsi qu'une réorganisation en 3 paquetages distincts : Mercury pour l'ORM, Gemini pour le middleware (View-Controller) et un paquetage de composants dans lequel j'ai placé entre autre le Mailer, les Services Web, les helpers Prototype, etc... Il me reste quelques améliorations et bugfixes à faire pour la version 1.0, qui ne devrait pas tarder.
lundi 26 novembre 2007
Slides Forum PHP 2007
Par Noc le lundi 26 novembre 2007, 13:36
jeudi 15 novembre 2007
A propos d'HTML, du DOM et des éditeurs WYSIWYG...
Par Noc le jeudi 15 novembre 2007, 08:29
L'un de mes projets en cours consiste à améliorer l'interface d'administration d'un CMS que je compte publier sous la forme d'un "engine" pour Stato. Ce CMS étant destiné à des utilisateurs lambda (c'est à dire inaptes à utiliser une syntaxe wiki et encore moins à coder du HTML à la main dans un textarea), j'avais dû me résoudre à intégrer un éditeur WYSIWYG écrit en Javascript. Mon choix à l'époque avait été d'utiliser TinyMCE. J'avais pu le customiser suffisamment pour bien l'intégrer dans le CMS, et mes utilisateurs étaient satisfaits.
En remaniant l'interface, j'ai décidé de cesser d'utiliser prototype et de le remplacer par extjs, qui propose notamment un composant tree très efficace. Séduit par les possibilités de cette librairie, et bien décidé à compenser son poids (463 Ko en version "minifiée") par une utilisation maximale de ses capacités, j'ai souhaité remplacer TinyMCE par l'éditeur HTML de extjs. Seulement voilà, cet éditeur est très léger, et beaucoup de fonctionnalités manquent par rapport à TinyMCE. J'ai donc créé une extension de cet éditeur, qui commence à vraiment prendre tournure. A ce sujet, créer une extension d'un composant de extjs est un jeu d'enfant...
Croyez-moi, travailler sur l'implémentation d'un éditeur HTML en Javascript est vraiment très formateur, j'ai appris beaucoup de choses sur le DOM, et notamment sur les différences d'implémentation du DOM et de CSS dans les navigateurs. Ce qui m'amène à vous faire part de la pensée suivante : en l'état actuel des spécifications HTML et CSS du W3C, il me parait impossible d'arriver à une implémentation "standard" dans tous les navigateurs. Les balises proposées par HTML sont de trop bas niveau, et le modèle de boîte est flou. Il faudrait s'inspirer du modèle de boîte de XUL pour en faciliter l'implémentation.
page 2 de 2 - billets suivants »