Pregunta

Me gustaría saber si hay una manera de obtener la sintaxis de Pharo en una aplicación web codificada en Iliad.

En realidad, el marco no debería importar, ya que lo que necesitaría es una cadena HTML simple del tipo:

<span style="color: rgb(102, 0, 0);">^</span> Set <span
style="color: rgb(0, 0, 153);">withAll:</span> <span
style="color: rgb(102, 0, 0);">self</span>

Supongo que esto no va a ser trivial en absoluto ... :)

¿Fue útil?

Solución

Escribimos un marcador de sintaxis pequeño, pero más bien completo, en Pharo para Seaside. Toma un método, lo analiza y emite anotado HTML. Solo tiene que especificar algunas reglas en CSS para cambiar el color de los diferentes nodos AST (selectores, cadenas, símbolos, números, palabras clave, variables).

Encontrará un ejemplo completo en el Webdoc proyectar sobre squeaksource. Busca el SourceFormatter clase, todo lo que necesitas está ahí.

Otros consejos

Muelle Admite resaltado de sintaxis. Un ejemplo puede ser encontrado aquí: http://book.seaside.st/. Esto se implementa en el paquete Pier-Shout (ver Repositorio de SqueakSource de Lukas Renggli).

También hay un Lexer SmallTalk para pigmentos que tiene un poco más de penetración que las alternativas basadas en SmallTalk.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top