Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2208 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Appliquer un style sur du texte, par reconnaissance syntaxique

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Appliquer un style sur du texte, par reconnaissance syntaxique

n°383771
Cherrytree
cn=?
Posté le 06-05-2003 à 09:29:21  profilanswer
 

Voilà, dans un TextComponent à définir (JEditorPane à première vue), je souhaite afficher du XML. J'aimerais afficher de manière distincte les commentaires, les clés, les valeurs, les chaînes "<", ">" et "</"... Bref formater mon XML pour en faciliter la lecture, y compris pendant l'édition.
 
J'ai survelé le Java Tutorial, mais c'est un peu léger comme ressource sur le sujet. Pourriez-vous me fournir quelques pistes ?


---------------
Le site de ma maman
mood
Publicité
Posté le 06-05-2003 à 09:29:21  profilanswer
 

n°383889
bobuse
Posté le 06-05-2003 à 10:19:33  profilanswer
 

[:drapo]
 
tu cherches des renseignements sur quoi : le parsing ou l'embedding, ou les deux ?


---------------
get amaroK plugin
n°383900
Cherrytree
cn=?
Posté le 06-05-2003 à 10:25:52  profilanswer
 

Les deux, je suppose. L'analyse du document doit être facilitée par quelques classes fournies par Sun, de même que la mise à jour de l'affichage. C'est encore un peu flou pour moi.


---------------
Le site de ma maman
n°384482
Cherrytree
cn=?
Posté le 06-05-2003 à 15:09:39  profilanswer
 

[:drasche]


---------------
Le site de ma maman
n°384486
chrisbk
-
Posté le 06-05-2003 à 15:11:00  profilanswer
 

y'avait deja eu un topic la dessus, mais j'arrive pas a le retrouver.
 
Perso j'en avais fait, mais c'etait juste de la reconnaissance de mot cle, et non de zone comme tu le souhaite la (mais si tu veux je peux te developper comment j'avais fait)

n°384494
walli
Posté le 06-05-2003 à 15:14:50  profilanswer
 

j'avais un code qui faisait ça, mais j'arrive pas à remettre la main dessus :(
vais chercher encore.


---------------
NP :
n°384496
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 06-05-2003 à 15:16:16  profilanswer
 

Alors je connais à peine le sujet mais vala ce que je vais pouvoir en dire :
* effectivement, un JEditorPane ou un JTextPane semblent appropriés pour l'affichage et les définitions de styles ;
* pour le traitement, c'est toi qui vas devoir te le palucher. Les regexp font des merveilles dans ce domaine.
 
Bref : java.util.regex, javax.swing.text pour les Styles, StyleConstraints, etc... qui vont pouvoir donner à un texte spécifié l'affichage et le format désirés.


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°384602
Cherrytree
cn=?
Posté le 06-05-2003 à 15:54:53  profilanswer
 

Hum... Intéressant. chrisbk, walli, Taiche > avez-vous des sources d'inspiration ? J'imagine qu'il doit y avoir une notion de refreshrate pour recalculer l'affichage, de même que des optimisations locales par rapport au curseur...


---------------
Le site de ma maman
n°384615
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 06-05-2003 à 15:59:45  profilanswer
 

Bin moi je parlais surtout lors du premier affichage. Après, lors de l'édition, je me baserais sur un système d'événements plutôt que de faire du refresh, ça me semble plus adapté.
Si tu veux un bon exemple, t'as Jext ( http://www.jext.org ) qui est un éditeur de code Open Source et où tu pourras trouver des exemples. Je sais pas si ça correspondra à tes besoins mais ça fait déjà un exemple.


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°384645
chrisbk
-
Posté le 06-05-2003 à 16:08:04  profilanswer
 

Cherrytree a écrit :

Hum... Intéressant. chrisbk, walli, Taiche > avez-vous des sources d'inspiration ? J'imagine qu'il doit y avoir une notion de refreshrate pour recalculer l'affichage, de même que des optimisations locales par rapport au curseur...


 
bon moi c'etait vraiment QUE pour les mots cles. C'etait en C++ sans aucune lib mais bon, C++ ou java ca changera rien...
 
J'etais parti sur un arbre N-aire. Chaque noeud contenait un caractere, et un boolean indiquant si le noeud etait terminal ou non (et bien sur une liste de fils)
 

  • l'utilisateur tape quelque chose :

je recup le caractere, regarde dans mon arbre si il y a un fils contenant ce caractere. si oui et si le noeud est marque comme terminal je colorie, sinon ben rien (je decolorie, meme)
 
 

  • a deplacer le curseur

j'analyse  le mot sur lequel il se trouve, et envoie le debut du mot dans l'arbre
 
ca necessite pas mal de reglage pour marcher comme il faut (par exemple faire gaffe a ne pas colorier "int" dans "integer" si "int" est un mot cle), faire gaffe aussi aux blagues possibles (espace en milieu d'un mot cle deja colorie, backspace, saut de ligne et tout ca), mais dans l'ensemble ca marchait bien
 
niveau optim, en C++ j'avais la possibilite de desactiver le rafraichissement de la fenetre pendant mes calculs / changement de couleur. En java je sais pas (je connais bpc trop peu java pour te dire si oui ou non c possible)
 
edit : pour les zones ca doit etre plus complexe puisqu'il faut retrouver le "contexte" dans lequel se situe le mot..... avec un parser ok, mais ca m'etonnerait que ca soit viable niveau perf
 


Message édité par chrisbk le 06-05-2003 à 16:10:16
mood
Publicité
Posté le 06-05-2003 à 16:08:04  profilanswer
 

n°384659
Cherrytree
cn=?
Posté le 06-05-2003 à 16:14:00  profilanswer
 

Merci en tous cas.


---------------
Le site de ma maman
n°384996
artemice
( - ;
Posté le 06-05-2003 à 19:17:15  profilanswer
 

moi je vien de faire un projet de traduction et d'annimation d'algo et pour mettre en forme g utilisé se bon vieu html c cool et c facil pour l'utilisateur de paramètrer mais le xml ça doit commencer à devenir coton ... :jap:

n°386211
Cherrytree
cn=?
Posté le 07-05-2003 à 16:37:56  profilanswer
 

artemice a écrit :

moi je vien de faire un projet de traduction et d'annimation d'algo et pour mettre en forme g utilisé se bon vieu html c cool et c facil pour l'utilisateur de paramètrer mais le xml ça doit commencer à devenir coton ... :jap:  


Génial !


---------------
Le site de ma maman
n°386279
artemice
( - ;
Posté le 07-05-2003 à 17:13:09  profilanswer
 

:pfff:  :kaola: facile c******


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Appliquer un style sur du texte, par reconnaissance syntaxique

 

Sujets relatifs
ma feuille de style toute bête ne marche pas! pourquoi??Création d'un bouton faisant apparaitre zone texte dans FLASH
[liens hyper texte]...anchor ?...[HTML] texte restant visible malgré le defilement de l'ascenseur?
afficher le texte d'1 fichier txt dans une page htm sans php possible?[FLASH \ PHP]problème avec un champ de texte.
[VB] Automatisation initialisation de donnée ds un type style record[C] Lire un fichier texte
Texte ecrit verticalement ??capacité de sortie d une feuille de style
Plus de sujets relatifs à : Appliquer un style sur du texte, par reconnaissance syntaxique


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR