Nuevo Visual Studio Editor para T4 templates

Durante este mes de mayo estuve trabajando en un editor de T4 templates como parte de SFT, así que ahora ya dispones de un editor con intellisense y colorizing como el editor para ASP.NET, puedes bajar ClariuS Software Factories Toolkit aquí.

Colorizing, Blocks Intellisense y Validación

En este release el editor provee colorizing e intellisense para los bloques T4, como ser directivas, class features y bloques. Respecto a las directivas este provee intellisense para aquellas directivas conocidas asi como para sus propiedades y valores. Un coas interesante es que para quellas propiedades conocidas las cuales representen types, el intellisense provee una lista completa de los types contenidos en el project actual y sus referencias.

t4editor

Validation

Como el editor de ASP.NET también tienes validación del documento en tiempo real.

t4editorvalidation

Previsualización de transformaciones.

Otro interesante feature, es la posibilidad de correr los templates en tiempo de diseño, basicamente como sabes existen dos contextos comunes para la ejecución, estos son el host de DSLTools y el host de GAX. Para este último host, puedes especificar los valores de las propiedades a través del property window, también puedes especificar valores para tipos complejos utitlizando ui editors y type converters si fueran necesarios como se muestra a continuación:

t4editorproperties

Así que para ejecutar la transformación solo tienes que especificar algunos valores para las properties y correr el comando «preview transformation» el cual esta situado en el solution explorer o en el menu contextual del editor. Una vez ejecutado el template obtendras un archivo temporal con el output de la transformación. Si especificaste la directiva output extension este archivo temporal tendra reemplazada su extensión .tmp por la indicada, esto es util para que vs instancie el editor adecuado en funcion del output.

La transformación puede fallar por diferences motivos, en el caso de que falle por problemas de compilación, estos errores seran mostrados en el error task list de visual studio, pudiendo acceder directamente a la linea del template que produce el error, sin embargo si los errores de la transformación son durante la ejecución de la transformación es decir, luego de compilar, estos errores serán mostrados en un archivo de output temporal.

Debugging

Desafortunadamente en esta versión el editor aun no tiene soporte para debugging, pero en el mientras puedes chequear el blog de GarethJ en donde tiene un post que explica como puedes debuggear. Espero en próximas versiones podeamos incluir este soporte.

Que se viene…

Ya estamos trabajando en el soporte para contained languages, esto es colorizing e intellisense al código contenido dentro del template del mismo modo a como trabaja el editor de ASP.NET.

Enjoy.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *