-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Système de plugin #63
Comments
Bonne idée, mais ça serait colossal comme boulot étant donné que l'appli n'est pour l'instant pas pensé pour. Mais on peut dores et déjà développer dans ce sens pour la suite. |
Oui bien sur, cest pas tout simple a mettre en place. Je n'ai jamais fais sa, tu as quelques conseil a me donner pour un facilité ce futur travail? |
Le truc c'est que pour un système de plugin il faut mettre en place une API (une interface Java quoi) qui sera generique à tous les plugins. Un plugin sera juste un jar à télécharger et à charger dans le système de plugin. En gros c'est l'API qu'il faudra bien penser, ce qui necessite de définir ce qu'on veut que nos plugins fassent. |
Ici et à la ligne 30, le résultat n'est pas le bon... J'aimerais obtenir ce dossier: https://github.com/WinXaito/zest-writer/tree/plugins/src/main/resources/com/zestedesavoir/zestwriter/plugins |
Pour information tu obtiens quoi entre |
Le dossier plugins, mais le mauvais (Celui dans les build qui contient mes classes compilé (PluginsLoader.class, etc.)) |
Ah ça c'est normal, quand ton projet est compilé, tout passe dans ton répertoire de build. Et tu as donc tes classes ainsi que tes ressources dans ce même répertoire. Le contenu de ton répertoire plugins dans Est-ce qu'il y'a une raison particulière pour laquelle tu veux explicitement le répertoire plugin de |
Euh bah pour placer les plugins. En l'occurence mon "FirstPlugin.jar", et il ne se trouve pas dans se dossier la après la compilation. |
Ah je comprend mieux. Mais je pense que tu pars sur la mauvaise solution. Tu ne devrais pas mettre les plugins dans ton répertoire projet. Car lorsqu'il sera empaqueté, il ira dans un jar et tu n'aura pas la possibilité de rajouter un nouveau plugin à l'intérieur de ton jar. De plus même si tu arrivais à trouver un moyen de rajouter les plugins dans ton jar, à chaque mise à jour les plugins dans ton jar seront écrasés. Je te conseillerais la dessus d'avoir une variable a renseigner dans le |
Oui effectivement. |
J'aimerais juste savoir, par rapport à ce que j'avais proposer, c'est à dire mettre le module de rendu (Donc Jython et compagnie) sous forme de plugin. Ceci afin, pour les gens qui se plaignait que Zest-Writer prenait énormément de RAM, ainsi que ceux qui ont une petite connexion et qui ne veulent pas l'installer de leur facilité la vie. On pourrait imaginer un autre plugin qui demande à un serveur (VPS) de faire le rendu, donc avec nécessité de connexion. (Mais bon, on ne peut pas avoir le beurre et l'argent du beurre). (Et au passage, c'est déjà plus ou moins fonctionnel ! Création d'un JAR pour le plugin, sont importation, interprétation et pour le moment gestion des Event de la fenêtre principale) |
Bonne question. Mon avis la dessus, c'est que l'application se doit rester massivement utilisable hors ligne, sinon on en perd un gros intérêt. L'idée d'avoir le module de rendu de Zds (avec jython et cie) en plugin est superbe. Par contre l'idée d'avoir un serveur qui fasse le rendu me séduit moins car on aura du mal à avoir un truc qui fasse du temps réel correctement, et je ne suis pas sur d'avoir un serveur à disposition dimensionné pour ça. Maintenant, moi je vois plutôt la possibilité d'utiliser un autre moteur de rendu markdown dispo en hors ligne, plus léger et écrit en pure Java(oui je pense très fortement au formidable pegdown) quitte à ce qu'il ne soit pas compatible full syntaxe zds. ça permettrai d'avoir un éditeur markdown sur lequel on peut choisir son moteur de rendu. Ce qui rendrait l'éditeur utile pour d'autres que les auteurs de ZdS par exemple. Voilà un peu ma vision des choses, dit moi ce que tu en penses à la lumière de ça.
Ah ça je savais pas. Mes yeux brillent. ___ |
Nonono :p dans cette version "légère" je pensais juste mettre un bouton pour avoir le rendu quand l'utilisateur le désire. Pas du temps réel.
Cest a toi de voir. Pourquoi pas l'intégrer aussi sous forme de plugin. On aurait donc 3 types de version selon les plugins:
|
Je rejoins ta conclusion. Ceci dit, je prioriserais les 2 premiers Le mar. 3 mai 2016 12:15, WinXaito notifications@github.com a écrit :
|
Pour les plugins, il faudrait avoir une certaine documentation. Je la fais où et comment ? |
Je pensais a mettre en place le système de documentation, mais je ne me suis pas encore fixé sur la techno. Mais ça sera certainement à base de markdown. Je dirais que dans un premier temps tu peux créer un dossier |
Ça joue merci ! |
Petite question encore, comment je fais pour lancer ZW en mode debug ? (Pour avoir les |
La conf par défaut est déjà configurée en mode debug. |
Ah pour les logs oui, mais y a pas moyen d'avoir directement dans la console ? (Bon j'avais pas penser au fichier logs donc je peux au moins les voir maintenant) |
il y'a moyen de l'avoir dans la console oui. faudrait que je fasse un |
J'aurais besoin de ton avis ici. Actuellement, je gère quelques événement, et le plugin peut récupéré la classe Je ne pense pas que ça soit dérangeant, c'est même mieux, car le plugin est libre de faire ce qu'il veut et je ne dois pas recodé toutes les fonctions pour lui appliquer des "limites". De toute façon c'est à l'utilisateur de faire attention à ce qu'il installe, car rien n'empêche un plugin d'exécuter du code malicieux et ce pour tous les systèmes de plugins que je connaisse. Je pense arriver gentiment au bout pour cette PR. J'aimerais pouvoir géré les plugins avec un |
L'idéal serait de ne pas forcement avoir access a toute la MainApp, mais Je vais juste prendre le temps de tester ça proprement (et éventuellement Le sam. 14 mai 2016 12:12, WinXaito notifications@github.com a écrit :
|
Yep merci |
Hello, du nouveau ici ? |
J'avoue que j'ai eu la flemme de m'y pencher. Je regarderai ça sans doute Le jeu. 16 juin 2016 19:50, WinXaito notifications@github.com a écrit :
|
Je me demandais s'il était difficile de mettre en place un système de Plugin ? Cela permettrais de mettre certaines choses en options pour ceux qui préfère un éditeur simple et léger. (Par exemple le rendu, MathJax, etc).
The text was updated successfully, but these errors were encountered: