2016-01-20 2 views
0

Donc, voici le cas, j'ai un langage basé sur javascript personnalisé, qui vient avec son éditeur et ses outils, installé comme plugin dans Eclipse. Le problème est qu'il n'y a pas de formateur de code et j'ai besoin d'éditer chaque ligne à la main. J'ai testé le forrmater JS sur ce code et cela fonctionne très bien, puisque les deux langues sont assez similaires. Fondamentalement Je dois en quelque sorte lier/ajouter/appliquer le formateur à cet éditeur de code.Dans Eclipse, puis-je ajouter un formateur de code à l'éditeur existant

La question générale, j'ai deux éditeurs de code A et B. Puis-je modifier le code en utilisant l'éditeur de code de A et formater le code en utilisant le formatter code de B.

Mon progrès jusqu'à présent (après avoir creusé sur Internet). J'ai trouvé quelques solutions, mais elles ne sont pas faciles à utiliser ou à configurer.

  • créer cron job batch/shell pour écouter les modifications dans vos fichiers, et utiliser un outil cli comme js-beautify pour formater automatiquement le code. Pas très pratique parce que vous avez besoin de rafraîchir les fichiers, et il n'y a pas de choses cool comme sauver des actions par exemple
  • suggéré par de nombreux forums, implémentez votre propre plugin eclipse, problème est (dans mon cas) que ce plugin vient en troisième partie à moi et je ne peux pas faire partie de son processus de libération.

Toute aide sera grandement appréciée!

Répondre

0

Vous pouvez écrire un plug-in externe sur ce qui est déjà en place, il n'est pas nécessaire d'éditer le code existant ou de faire partie de cette version. Le plug-in peut alors mettre en œuvre des "sauvegardes". Par exemple, le plug-in AnyEdit supprime les espaces de fin dans le cadre d'une sauvegarde sur n'importe quel éditeur si AnyEdit est installé. Donc, je voudrais regarder cela EPL source code et voir si vous pouvez tourner votre propre solution assez facilement. Si vous n'êtes pas sûr où commencer, peut-être regarder où il est hooked in:

private void hookOnCommand(String commandId) { 
     ICommandService service = (ICommandService) PlatformUI.getWorkbench().getService(
       ICommandService.class); 
     Command command = service.getCommand(commandId); 
     PreExecutionHandler listener = new PreExecutionHandler(commandId); 
     command.addExecutionListener(listener); 
} 
+0

Merci pour le commentaire, en effet ce tout outil d'édition est bon, mais il n'a pas de fonctionnalité pour embellir le code. Comme le fait le plugin JS. J'ai besoin de définir les conventions de style de code (comme dans le formateur java) et de les donner à n'importe qui contribuant au projet (au format xml par exemple) –

+0

@BorislavStoilov Je ne recommandais pas AnyEdit comme solution finale à votre problème , il montre plutôt comment accrocher des actions de sauvegarde. En utilisant de tels hooks, vous pouvez résoudre votre "question générale, j'ai deux éditeurs de code A et B. Puis-je éditer le code en utilisant l'éditeur de code de A et formater le code en utilisant le formateur de code de B." –