Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Eclipse Platform Discussion :

Base de données interne Eclipse


Sujet :

Eclipse Platform

  1. #1
    Membre du Club
    Base de données interne Eclipse
    Bonjour,

    Je suis en train (j essaye) de faire un plug-in Editor pour eclipse. Ce plugin doit faire la coloration syntaxique, l'autocomplétion des mots clés et l'autocomplétion des attributs de mes objects.

    Les 2 premiers points fonctionnent mais je n'arrive pas à faire le troisième.

    Le fonctionnement que j'attends est celui qui existe lorsqu'on manipule du java. Par exemple, on crée une classe TOTO en java avec l'attribut tata.
    Lorsqu'on importe la classe TOTO dans une autre classe, on accède aux différents éléments (fonction, attributs) de la classe.

    Je voudrais avoir ce fonctionnement pour mon éditeur. Est ce possible ? Si oui comment le faire (Tuto, aide)?

    Merci

  2. #2
    Modérateur

    Salut,

    Je ne comprends pas pourquoi tu cherches à refaire un éditeur qui existe déjà (et quel rapport avec les bases de données (titre) ?). Pour savoir comment Eclipse réalise la complétion (appelée Content Assist dans Eclipse) des éléments des classes, tu peux justement étudier le code de cet éditeur et des fonctionnalités qui lui sont associées (La documentation pour manipuler ces concepts se trouve ici : http://help.eclipse.org/neon/nav/3). Il y a par ailleurs un tutoriel qui explique comment mettre en place son propre éditeur Eclipse avec justement un éditeur Java en exemple, avec Content Assist : http://help.eclipse.org/neon/index.j...editor_ex.html.
    Si tu veux le faire complètement toi-même sans te baser sur le toolkit, tu peux simplement utiliser un parser Java, comme JavaParser pour les .java. Pour les .class, pour éviter d'avoir à monter les classes et faire de la réflexion, tu peux utiliser quelquechose comme Apache BCEL ou JavaAssist (c'est peut-être un peu too much pour ça, mais je ne connais pas d'API qui fait que l'extraction des méthodes et attributs visibles d'un .class).
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  3. #3
    Membre du Club
    Merci pour ta réponse, je vais regarder ça. J'ai besoin de créer mon propre editor pour gérer des types de fichier (extension propre à moi) non gérés par Eclipse.

  4. #4
    Modérateur

    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  5. #5
    Membre émérite
    Et si tu vises plus large qu'Eclipse, tu peux regarder le Language Server Protocol: https://github.com/Microsoft/languag...erver-protocol et en faire une implementation pour ton langage. Ensuite, si tu installes https://github.com/eclipselabs/eclip...nguage-service, tu n'as plus qu'a te connecter a ce serveur de langage pour recuperer completion, hover, erreurs,...
    Si tu ne souhaites pas utiliser de serveur de langage, tu peux aussi utiliser le nouvel editeur generique https://www.eclipse.org/eclipse/news...generic-editor qui te permet justement d'ajouter le support d'un langage sans avoir a re-implementer tout un editeur. J'ai mis a jour la FAQ pour mentionner ca.
    Pour du HTML, CSS, JavaScript, TypeScript, JSon, Yaml, Node... dans Eclipse IDE, installe Eclipse Wild Web Developer
    Pour du Rust dans Eclipse IDE, installe Eclipse Corrosion
    Follow me on twitter

  6. #6
    Membre du Club
    Merci pour l'aide. Je vais regarder ça de près.