Merci pour vos avis.
J'avoue que malgré tout le mal que je pense de cet onglet "source", je rechigne à le supprimer. M'enfin pour l'instant il ne fonctionne pas du tout sur ma version de travail.
Ymai a écrit :Tant pis pour l'aspect didactique de l'onglet "Source" qui permet de voir le code à tout instant. C'est bien utile, mais si cela stabilise le logiciel, il n'y a pas de question.
Justement, l'idée serait de remplacer cet onglet "Source" par Firebug. On pourrait ainsi voir le code HTML s'écrire au fur et à mesure, en bas de la fenêtre KompoZer ; et quand on sélectionne une ligne de code dans Firebug, ça sélectionnerait la partie correspondante dans la fenêtre wysiwyg.
Par ailleurs, avec Firebug il est impossible d'écrire du code HTML "corrompu" - i.e. en oubliant des tags, des "/>", des guillemets pour les attributs, etc. - alors que quand on écrit du code corrompu avec l'onglet "source", dans le meilleur des cas on pourrit son document HTML (la faute à KompoZer qui doit reconstruire l'arbre DOM en se basant sur du code HTML erronné), dans le pire on crashe KompoZer.
Bref, je pense qu'il rendrait les mêmes services que l'onglet "source". Accessoirement, cette extension est activement développée et rencontre un franc succès chez les webmestres « à l'ancienne » (= Firefox + éditeur texte). Et par ailleurs, il est probable que ça me prenne moins de temps à adapter Firebug à KompoZer plutôt que d'essayer de récupérer l'onglet "source".
De plus, je voudrais profiter de mon boulot actuel sur KompoZer pour le débarrasser de tous les composants qui ont été implémentés à la truelle (Nvu/KpZ repose sur un vieux noyau avec 15 000 lignes de patches non documentées) et qui le pénalisent en termes de stabilité et de pérennité.
L'exemple-type de ce genre de bricolage qui apporte plus de problèmes que de solutions, c'est l'onglet "source" de Nvu/KompoZer. Tentative d'expication, pour finir d'assommer tout le monde :
- Dans Netscape/SeaMonkey Composer, l'onglet "source" est un vrai éditeur texte.
Pas de coloration syntaxique, mais pas de plantage non plus (ou si peu).
- Dans Nvu/KompoZer, l'onglet "source" est un éditeur HTML.
On édite en wysiwyg le code "viewsource" (= le code mis en couleur quand on fait un Ctrl+U sous Firefox). Donc non seulement la coloration syntaxique n'est pas temps réel, mais en plus on édite un document HTML qui représente le code source, et au moment de revenir en vue "normale", on convertit ce document HTML en texte puis on reconstruit l'arbre DOM à partir du texte obtenu.
En résumé, pour modifier le code HTML avec cet onglet source, ça donne :
- création du document "viewsource" à partir du DOM du document HTML courant
- édition du document "viewsource" avec un éditeur HTML wysiwyg
- conversion du document "viewsource" ainsi modifié en texte brut
- régénération du DOM du document HTML à partir du texte brut obtenu
Après, on s'étonne que ça plante... moi, ce qui m'étonne, c'est que ça puisse fonctionner.
Firebug, lui, assure une vraie coloration syntaxique, et ne modifie que l'élément HTML en cours d'édition. On travaille directement sur l'arbre DOM du document courant, on ne fait jamais de conversion texte <-> html. Non seulement c'est plus respectueux de l'architecture logicielle de Nvu/KpZ, mais surtout on ne risque donc pas de corrompre tout le document juste parce qu'on a voulu ajouter un attribut HTML à la main.
Pour l'instant je n'ai rien décidé, peut-être que je ferai les deux (onglet source + firebug), ou peut-être que je n'arriverai pas à finir le portage de KompoZer. Je ne fais que prendre des avis. ;-)