" Je ne suis pas du tout content de l'intérêt que suscite cette publication. " => Serais-tu jaloux ??
Plus sérieusement, je vais oublier les trois premières lignes que tu as post car elles ne méritent pas d'être.
L'interet du code de elguevel, c'esrt justmement la technique qui permet d'analyser le code HTML pour en extraire les différentes parties: c'est ça le rôle d'un parser.
Après, si tu veux interpréter le code pour afficher la page, il te faut un analyseur lexical, qui retourne des lexèmes (en anglais cela se dit "token" , un parser par exemple mais es expressions régulières sont plus efficaces), puis un analyseur syntaxique et enfin un analyseur sémantique.
Je ne pense pas que l'ambition de elguevel est de rivaliser avec Firefox ou Opéra.
assemple
Messages postés65Date d'inscriptionvendredi 14 mai 2004StatutMembreDernière intervention16 décembre 2011 1 nov. 2005 à 09:59
Je ne suis pas du tout content de l'intérêt que suscite cette publication.
Je ne critique en rien le travail de Damien LEVEUGLE, que j'ai d'ailleurs trouvé très bien.
Mais, à peine diffusé (nous sommes mardi), il y a déjà 5 commentaires.
La semaine dernière j'ai publié une boite de message améliorée, intégrant un interpréteur HTML, lui-même utilisable indépendanment de la boîte de message, comme suit :
TextHTMLOut(CanvasCible : TCanvas ;
X,Y : Integer ;
ChaineHTML : String ;
Var Hauteur : String )
J'ai commencé un éditeur HTML WYSIWYG, que j'ai d'ailleurs du mal a terminer (les tags sont invisible donc hors sélection éventuelle... comment appliquer un changement de format ?)
Un éditeur HTML WYSIWYG, c'est quand même mieux qu'un éditeur avec coloration syntaxique.
J'ai pensé qu'il devrait être ensuite facile de créer un éditeur HTML/PHP WYSIWYG et SYNTAXIQUE.
Ce serait génbial non ?
Qui veux les sources de l'éditeur HTML ?
NOTA : dépuis que j'ai commencé l'éditeur, je me suis rendu compte que sur certaines balises je ne respectais pas la norme HTML. Ce n'ai pas trop grave tant que l'on conserve une parfaite compatibilité de l'Editeur vers les Explorateurs Standard, ce qui est à peu près le cas.
On pourrait développer ça en open source
SAUF s'il existe DEJA un éditeur HTML WYSIWYG (en Delphi, of course !)
Pendant la frappe ... ce n'est pas si simple.
Ce qu'il faudrait, c'est faire débuter le parser un peu avant (mais de combien) le curseur et le faire arreter s'il se rend compte qu'il ne modifie plus rien.
J'essaye sur mon parser (c'est toujours plus simple si c'est le sien) et je t'avertis si je trouve.
@ ++ Flo
elguevel
Messages postés718Date d'inscriptionjeudi 19 décembre 2002StatutMembreDernière intervention22 novembre 20163 24 oct. 2005 à 19:53
merci florenth de tes commentaires, mais c'est grace a ta source que j'ai compris le fonctionnement de TParser :-)
Sinon pour le Bug je sais ce que sais mais je ne sais pas comment le contourner : Il sagit en faite du caractère ' propre au delimiteur de chaine sous delphi (vu que le parseur est au départ celui de Delphi).
sinon tu as une idée à ma première question ... comment colorer syntaxyquement pendant la frappe ?
C'est encore moi: j'ai trouvé un bug !
Enregistre cette page au format HTML seul et execute ton parser.
J'ai une erreur ligne 127 je ne vois pas à quoi c'est dû.
Des commentaires, en veux tu en voila !
Première impression: le code est bien présenté et correctement indenté : +
La coloration s'effectue snas bug : +
Par contre, je trouve dommage que si on a dans une balise que le 480 et le 316 soit de la même couleur que width= et height= : -
Mais enfin, rien de sorcier à modifier.
Bilan final : +
Ce parser est efficace est simple à mettre en oeuvre.
Dommage qu'il y ait un bug au niveau du doctype qui n'est pas coloré de la même façon suivant les pages.
NB: dnas les procédures de la classe TParse, ce n'est pas la peine d'écrire Self.SourcePos, Self.NextToken, ... car Self. est implicite. tu abrège ta sourse et améliore sa lisibilité !
10 févr. 2008 à 13:55
1 nov. 2005 à 10:30
Plus sérieusement, je vais oublier les trois premières lignes que tu as post car elles ne méritent pas d'être.
L'interet du code de elguevel, c'esrt justmement la technique qui permet d'analyser le code HTML pour en extraire les différentes parties: c'est ça le rôle d'un parser.
Après, si tu veux interpréter le code pour afficher la page, il te faut un analyseur lexical, qui retourne des lexèmes (en anglais cela se dit "token" , un parser par exemple mais es expressions régulières sont plus efficaces), puis un analyseur syntaxique et enfin un analyseur sémantique.
Je ne pense pas que l'ambition de elguevel est de rivaliser avec Firefox ou Opéra.
1 nov. 2005 à 09:59
Je ne critique en rien le travail de Damien LEVEUGLE, que j'ai d'ailleurs trouvé très bien.
Mais, à peine diffusé (nous sommes mardi), il y a déjà 5 commentaires.
La semaine dernière j'ai publié une boite de message améliorée, intégrant un interpréteur HTML, lui-même utilisable indépendanment de la boîte de message, comme suit :
TextHTMLOut(CanvasCible : TCanvas ;
X,Y : Integer ;
ChaineHTML : String ;
Var Hauteur : String )
J'ai commencé un éditeur HTML WYSIWYG, que j'ai d'ailleurs du mal a terminer (les tags sont invisible donc hors sélection éventuelle... comment appliquer un changement de format ?)
Un éditeur HTML WYSIWYG, c'est quand même mieux qu'un éditeur avec coloration syntaxique.
J'ai pensé qu'il devrait être ensuite facile de créer un éditeur HTML/PHP WYSIWYG et SYNTAXIQUE.
Ce serait génbial non ?
Qui veux les sources de l'éditeur HTML ?
NOTA : dépuis que j'ai commencé l'éditeur, je me suis rendu compte que sur certaines balises je ne respectais pas la norme HTML. Ce n'ai pas trop grave tant que l'on conserve une parfaite compatibilité de l'Editeur vers les Explorateurs Standard, ce qui est à peu près le cas.
On pourrait développer ça en open source
SAUF s'il existe DEJA un éditeur HTML WYSIWYG (en Delphi, of course !)
Salut à tous (et à toutes ... si peu nombreuses)
Diégo DELPY
24 oct. 2005 à 21:45
Ce qu'il faudrait, c'est faire débuter le parser un peu avant (mais de combien) le curseur et le faire arreter s'il se rend compte qu'il ne modifie plus rien.
J'essaye sur mon parser (c'est toujours plus simple si c'est le sien) et je t'avertis si je trouve.
@ ++ Flo
24 oct. 2005 à 19:53
Sinon pour le Bug je sais ce que sais mais je ne sais pas comment le contourner : Il sagit en faite du caractère ' propre au delimiteur de chaine sous delphi (vu que le parseur est au départ celui de Delphi).
sinon tu as une idée à ma première question ... comment colorer syntaxyquement pendant la frappe ?
Merci encore, et @+
Damien
24 oct. 2005 à 17:24
Enregistre cette page au format HTML seul et execute ton parser.
J'ai une erreur ligne 127 je ne vois pas à quoi c'est dû.
24 oct. 2005 à 17:18
Première impression: le code est bien présenté et correctement indenté : +
La coloration s'effectue snas bug : +
Par contre, je trouve dommage que si on a dans une balise que le 480 et le 316 soit de la même couleur que width= et height= : -
Mais enfin, rien de sorcier à modifier.
Bilan final : +
Ce parser est efficace est simple à mettre en oeuvre.
Dommage qu'il y ait un bug au niveau du doctype qui n'est pas coloré de la même façon suivant les pages.
NB: dnas les procédures de la classe TParse, ce n'est pas la peine d'écrire Self.SourcePos, Self.NextToken, ... car Self. est implicite. tu abrège ta sourse et améliore sa lisibilité !