Estoy escribiendo un editor de código fuente en Java (para el código fuente de Java), y me gustaría agregar un resaltado de sintaxis simple (el colorido distintivo para las palabras clave sería suficiente). ¿Alguna sugerencia?¿Dónde puedo encontrar una biblioteca de resaltado de sintaxis para Java?
Respuesta
¿Algo como JSyntaxPane
, quizás?
Muy fácil de usar y extender JEditorKit que admite pocos idiomas. El objetivo principal es facilitar el diseño atractivo de Java Swing Editors con soporte para Syntax Highlighting.
Esto ya no se mantiene. Utilice ['RSyntaxTextArea'] (https://github.com/bobbylight/RSyntaxTextArea) para nuevos proyectos. – Navin
posible que desee ver en un editor existente (por ejemplo Notepad ++ - http://notepad-plus.sourceforge.net/uk/site.htm) y ver cómo el resaltado de sintaxis definida por el usuario se realiza (oneo de los plugins para comprobar - Gmod 10 Lua de resaltado de sintaxis). Apuesto a que Java (y otros idiomas) se hacen de manera similar ...
¿Qué hay de RSyntaxTextArea? Utiliza un modified BSD license.
¿Tan malo? Lo estoy usando en un proyecto y creo que es genial. Además, si quieres codificar tus propias cosas, puedes estudiarlo, ya que es de código abierto. – ktulur
Probado y se ve muy bien, al igual que las funciones como plegado de código. No es compatible con Python, es una pena. – chenyi1976
lo siento es compatible con Python. su sitio web me engañó, y su applet también. – chenyi1976
Debe consultar el prettify.js de Google. Aquí hay algunos trucos bastante buenos, y es posible que tengas una sensación más sólida para resaltar la sintaxis.
Eso es javaScript, no Java – ktulur
@ktulur: ¿Realmente lo miraste? Resalta la sintaxis para muchos idiomas, incluido Java. Esta será una excelente forma de aprender a escribir un algoritmo de resaltado de sintaxis. Específicamente uno que puede soportar múltiples idiomas. – GEOCHET
Ok, lo siento, estaba pensando en usar un componente existente, no en escribir sus propias cosas. Es por eso que cuando he leído ".js", estaba como "¿wtf?" – ktulur
Primero debe pensar en usar un analizador común para crear un AST (árbol de sintaxis abstracta) a partir de las fuentes. Existen algunas herramientas, primero encuentro google buscando en Internet javaparser. Parece que este analizador también registra números de línea y columnas, por lo que el AST de javaparser puede ser un buen modelo para el editor.
Simplemente procese el árbol, defina los colores para los tipos de nodo AST e imprímalo.
- 1. ¿Dónde puedo encontrar una biblioteca de ECommerce?
- 2. Biblioteca de resaltado de sintaxis en ActionScript
- 3. ¿Dónde encontrar una biblioteca java para leer archivos vcard?
- 4. ¿Dónde puedo encontrar una biblioteca ICQ para C#?
- 5. Resaltado de sintaxis
- 6. resaltado de sintaxis para javadoc?
- 7. resaltado de sintaxis para archivos sin extensiones
- 8. Resaltado de sintaxis C# para Confluence
- 9. ¿Dónde puedo encontrar una implementación de javax.validation. *?
- 10. Biblioteca de resaltado de sintaxis escrita en C/C++
- 11. ¿Dónde puedo encontrar una buena biblioteca .NET PDF?
- 12. Resaltador de sintaxis para Java
- 13. Dónde puedo encontrar una implementación de Java EL 3.0
- 14. NSTextView resaltado de sintaxis
- 15. Resaltado de sintaxis en MS Word
- 16. ¿Dónde puedo encontrar una biblioteca de análisis de elementos finitos para la plataforma .NET?
- 17. Resaltado de sintaxis personalizado para VS 2008
- 18. resaltado de sintaxis Vim para ruby 1.9
- 19. vim resaltado de sintaxis para jinja2?
- 20. Razor .cshtml resaltado de sintaxis para vim?
- 21. ¿Dónde puedo encontrar bcp para impulsar?
- 22. ¿Dónde puedo encontrar una interfaz AS400 a Java?
- 23. ¿Dónde puedo encontrar una lista de horarios?
- 24. Emacs Lisp resaltado de sintaxis
- 25. ¿Hay algún ejemplo de resaltado de sintaxis para DScintilla?
- 26. ¿Dónde puedo encontrar una buena guía para escribir C Collections?
- 27. C# - resaltado de sintaxis perfecta
- 28. resaltado de sintaxis PHP en Visual Web Developer?
- 29. ¿Dónde puedo encontrar "j_security_check"?
- 30. ¿Dónde puedo encontrar un convertidor de Java a C#?
no sé si me gustaría incluso utilizar el "casi" en la frase "casi incomprensible". –
Trató de mejorar esto de una manera que apoye la respuesta de mmyers. – Shog9
Acabo de ir con la parte "código para resaltar la sintaxis" e ignoré el resto. No tengo idea si eso es lo que está buscando o no. –