@Syntax Highlighting en Cocoa TextView? ¿Experiencias? Sugerencias? Ideas? [duplicar

Posible duplicado:
Coloración sintáctica para la aplicación Cocoa

Estoy interesado en resaltado de sintaxis en unCaca Vista de texto

Encontré varios recursos:

approach con flex, a través deflexiona patrón combinado contextStorageDidProcessEditing en unTextView delegado. En este enfoque, toda la cadena se analiza en cada evento de entrada, por lo tanto, el rendimiento se degrada.

CocoaDev tiene unown página sobre el tema de resaltado de sintaxis:

UtilizarNSTextStorageDidProcessEditingNotification, luego obtenga el rango editado y simplemente aplique el color allí. El rango puede ser límites de palabras o cualquier cosa; esto definitivamente mejora el rendimiento.

Mencionado allí:Xcode, por ejemplo, solo colorea el texto que se encuentra actualmente en la pantalla y difiere el color del resto del documento hasta que se desplace por él. ¿Cómo se implementaría esto?

UtilizarNSLayoutManager - a través de Los atributos temporales [que] se usan solo para dibujar en pantalla y no son persistentes de ninguna manera ... como dicen los documentos, pero que no colorea el último rango editado, hasta que se ingrese un carácter de espacio en blanco.

Custom Helper como UKSyntaxColoredDocument - agradable, pero la definición del lenguaje se realiza a través de la lista de propiedades; ¿Cómo usar definiciones de lenguaje adicionales / existentes?

Ninguno de los enfoques me parece realmente extensible o robusto (excepto el 4. quizás ...).

Soy consciente de las bibliotecas existentes robustas para SH como pigmeos; y de PyObjC.

Pregunt: ¿Cómo sería posible usar alguna biblioteca existente, p. me gusta pigmeos para tener un resaltado de sintaxis extensible y de alto rendimiento en un CocoaTextView?

Not: Sé que esta pregunta es muy amplia (y demasiado larga). Experiencias y sugerencias, así como soluciones son bienvenidas. Gracias

Encontró otro hilo similar al respecto: Coloración sintáctica para la aplicación Cocoa

Respuestas a la pregunta(2)

Su respuesta a la pregunta