titulo longitud keywords etiqueta description descripcion crear como syntax editor syntax-highlighting lazarus

syntax - longitud - meta title y meta descripcion



¿Cómo se construye la sintaxis? (2)

Ahora estoy construyendo un editor de desarrolladores usando Lazarus y, como todo buen editor de desarrolladores, necesita tener un resaltado de sintaxis, por eso quiero saber algunas cosas:

  • ¿Cómo se construye normalmente el resaltado de sintaxis (utilizando muchos if para cambiar la fuente en un TextField ?
  • TSynEdit es muy bueno para hacer esto?
  • ¿Cómo usar TSynEdit (enlaces y recursos)?

De hecho, puede ver un excelente ejemplo si mira el editor de SharpDevelop . Está implementado en C # pero usa un gran OOP que debería ser fácilmente portable a otras plataformas o idiomas.

La mayoría de los resaltadores de sintaxis elaborados en casa tienden a usar el control de texto enriquecido de MS Windows, pero generalmente son lentos y molestos y realmente se ralentizan cuando se agrega un montón de código.


Puede leer el código fuente de Eclipse o VIM. En Eclipse encontrará una base de Árbol sintáctico abstracto. Además de esto, hay analizadores que están cuidadosamente escritos para tolerar errores, ya que el código en progreso a menudo no satisface la gramática completa del lenguaje. El resaltado usa la información en el árbol de sintaxis.