41 votes

Comment puis-je créer un surligneur de syntaxe Eclipse personnalisé

J'ai été le développement d'un compilateur pour un langage nouveau. J'ai pensé qu'il serait bien de pouvoir démontrer son développement dans une syntaxe conscients de l'environnement. La langue a tout à fait quelques-uns des mots-clés personnalisés, et sa structure est sensiblement différente de celle commune des langages comme Java ou C/C++.

Comment puis-je développer une syntaxe personnalisés highligher pour Eclipse? J'ai vu des références à quelques plugins, mais la documentation n'est pas assez approfondie pour mon débutant besoins.

J'ai une grammaire/REs pour ma langue, ainsi que des listes de mots-clés pertinents.

34voto

zvikico Points 7279

On dirait que vous faites affaire avec un DSL (Domain specific Language). Ce que vous cherchez sonne exactement comme XText. Voici un extrait de la page:

Xtext est un framework/outil pour le développement de l'externe textuelle des Dsl. Décrivez simplement votre propre DSL en utilisant Xtext est simple EBNF la grammaire de la langue et le générateur va créer un parser, un AST-méta-modèle (mise en œuvre en EMF) ainsi qu'un plein de fonctionnalités d'Eclipse Éditeur de Texte à partir de ce.

Aussi, découvrez cette vidéo qui est un entretien avec l'une des personnes derrière elle. Je suis sûr que vous allez le prendre à partir d'ici :-)

Vous pouvez également vouloir vérifier ce plugin. Pas exactement ce que vous cherchez, mais pourrait être un bon début.

16voto

Uri Points 50687

L'infrastructure Eclipse utilise assez complexe modèle de document pour faire de la coloration syntaxique (ils appellent ça la coloration, ne pas mettre en valeur), il n'est pas aussi simple qu'il est dans d'autres éditeurs.

Si vous voulez vraiment essayer et mess avec elle, vous pouvez lire la suite de l'Eclipse plug-in guide du développeur.

(Le lien ci-dessus est maintenant mort. Ce peut être un document similaire.)

7voto

Fabio Zadrozny Points 11951

C'est justement l'un des objectifs de la LiClipse (http://brainwy.github.io/liclipse/): facilement faire un éditeur de texte avec coloration syntaxique, base de l'achèvement de code, contour, etc ciblage de l'Éclipse.

Pas de java sont les compétences requises pour ajouter une nouvelle langue (principalement la création d'une nouvelle .liclipse, qui est un YAML -- fichier dans le bon endroit et la création de quelques règles de base-à-dire de la façon de partitionner votre langue -- c'est à dire: habituellement juste la séparation de code à partir des commentaires de chaînes-et spécifier les mots-clés que vous avez dans la partition serait déjà vous donner la bonne coloration syntaxique).

Si vous le téléchargez, il y a un certain nombre d'exemples de plugins\com.brainwy.liclipse.editor\langues et il y a certains documents de base à http://brainwy.github.io/liclipse/supported_languages.html et http://brainwy.github.io/liclipse/scope_definition.html sur la façon de le faire.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X