2009-04-24 21 views

Respuesta

12

Comencé en this one. Era un año desactualizado cuando lo usé, pero los conceptos se han mantenido igual.

Lo mejor que puedo sugerir en lugar de un instructivo sería buscar un idioma que ya esté integrado y ver cómo lo hacen. Aquí está el consejo real: no elija uno con un nombre de paquete que comience con org.eclipse (como el de la hormiga). El eclipse ofrece mucho soporte, es mucho más fácil ver qué código necesita escribir si comienza con otro prefijo de paquete. Intente buscar en los complementos groovy o scala, por ejemplo.

En mi experiencia, es el error resaltar cuál es el más difícil de hacer con precisión; el siguiente más difícil es la asistencia de contenido.

Si tiene el control del compilador o tiempo de ejecución del idioma en el que está escribiendo un editor, hace la vida mucho más fácil si puede hacer que el compilador le proporcione todos los datos que su IDE necesitará para presentarlo para el usuario (por ejemplo, lista de tokens - para colorear la sintaxis, información sobre herramientas; la asistencia del contenido será mucho mejor, porque no está simulando un compilador, sino que usa el real, lo mismo con el resaltado de error).

El IDE tiene la tarea relativamente fácil de errores sólo se exhiben, y el colorante, etc.

Una vez que lo tienes abajo para mostrar sólo, el editor de XML de ejemplo se ve bastante útil.

Gran parte de las reglas de partición que he encontrado menos útiles; Siempre terminé construyendo el mío: la búsqueda binaria sobre una lista de tokens es extremadamente útil.

6

Probablemente esté buscando algo como este artículo sobre la construcción Eclipse editors with JFace text. Tiene lo suficiente como para comenzar y atraviesa el resaltado de sintaxis, la asistencia de contenido, el contorno del contenido y los marcadores de error.

11

El mejor que he visto en un editor de texto basado en Eclipse estándar es

http://www.ibm.com/developerworks/edu/os-dw-os-ecl-commplgin1.html

(que tienen que registrarse para obtener una cuenta gratuita de IBM). Prashant Deva, autor de un plugin ANTLR2 realmente agradable hizo esto.

También es posible que desee ver en las herramientas que van a generar un editor:

proyecto de modelado de Eclipse (EMF/TMF/GMF)

http://www.eclipse.org/modeling/

TMF ayuda a construir editores de texto; GMF ayuda a construir editores gráficos. un buen libro está disponible (también en los libros de safari)

Tutorial en: http://wiki.eclipse.org/index.php/GMF_Tutorial

Una buena introducción en GMF: http://www.ibm.com/developerworks/opensource/library/os-ecl-gmf/

lenguajes dinámicos Kit de herramientas

http://www.eclipse.org/dltk/

Tutoriales disponibles desde ese sitio. Tenga en cuenta que también puede usar DLTK para editar el lenguaje estático; la parte "dinámica" proviene de la configuración y el inicio del intérprete.

xtext (ahora parte de TMF)

http://wiki.eclipse.org/Xtext

Nota: buena ayuda de contenido puede ser bastante difícil; realmente implica un análisis de seguimiento para cada terminal en su gramática. Puede simplificarlo bastante simplemente haciendo un seguimiento de los símbolos y palabras clave definidos y simplemente sugiriendo todo lo que coincida con el prefijo existente. Los generadores de arriba lo hacen un poco más fácil, pero no son perfectos.

¡Buena suerte!

1

Todas estas respuestas son buenas, y miré, y usé, los tutoriales relacionados anteriormente.

Agregaría this one, de Charles University en Praga. Se ha actualizado recientemente, mientras que los mencionados anteriormente son de hace 5-10 años.

No estoy seguro de que las cosas hayan cambiado tanto, pero dado que fue útil para mí, lo estoy agregando aquí.

Cuestiones relacionadas