Coloreo de sintaxis para GLSL/HLSL/CG: NShader

Otra extensión más para Visual Studio: NShader, que colorea la sintaxis del código fuente de los distintos lenguajes de programación de shaders existentes. Tiene soporte para las siguientes extensiones de archivos:

  • GLSL: .glsl, .frag, .vert, .fp, .vp
  • HLSL: .fx
  • CG: .cg, .cgfx

image La diferencia se nota

De momento sólo incluye el coloreo, pero están planeados, entre otras cosas, la inclusión de un analizador de sintaxis y un sistema de autocompletado. Y como es un proyecto de CodePlex, si algún usuario considera que necesita algo más, siempre puede añadirlo él mismo.

¿La única pega? Que como todas las demás extensiones, no se puede instalar en las versiones Express de VS.

CopySourceAsHTML: formatea tu código como HTML

¿Alguna vez os habéis encontrado redactando un artículo o tutorial, y al tener que insertar código fuente sólo habéis conseguido copiar un amasijo de caracteres sin tabulación y con los retornos de línea a su libre albedrío? Seguramente habéis acabado sacando una captura de pantalla e insertando el susodicho como una imagen estática. Pues esto se va a acabar, gracias al add-in CopySourceAsHTML disponible para Visual Studio.

Éste add-in ha pasado casi desapercibido a pesar de tener unas cuantas versiones a su espalda, siendo la primera de ellas para VS .NET 2003 (aún disponible para descargar por si alguien sigue usándolo 😉 ). Su uso es tán fácil como descargarlo, ejecutar el instalador, y la próxima vez que abramos el Visual Studio dispondremos de una nueva opción en el menú Edición (y en el emergente también) llamada Copy As HTML…

image

Cuando pinchemos en ella, accederemos a un diálogo con distintas opciones sobre el formato final:

image

Las pestañas File Style, Line Style y Block Style sirven para definir estilos personalizados para cada uno de los elementos nombrados, pero las opciones interesantes están en la pestaña General. En ella podemos seleccionar si queremos numerar las líneas y en qué número empezarían (Number lines from), limitar la longitud de la línea (Wrap lines), quitar la tabulación (Remove line indentation) o cambiar el tamaño de tabulación y fuente. También es recomendado desactivar Embed styles para evitar que incluya los estilos como propiedades de los tags HTML, porque puede resultar en un código bastante largo y redundante. Es más bonito y práctico que los agrupe dentro de un <style> en forma de clases 😀

Y por último, incluyo un trozo de código de ejemplo formateado usando CopySourceAsHTML, para que podáis comprobar lo efectivo que es:

1 using System;

2 using System.Collections.Generic;

3 using System.Linq;

4 using System.Text;

5

6 namespace ColoreoSintaxis

7 {

8 /// <summary>

9 /// También colorea comentarios y summary

10 /// </summary>

11 class Program

12 {

13 static void Main(string[] args)

14 {

15 System.Console.Out.Write(“Hola, mundo!”);

16 }

17 }

18 }

No sé vosotros, pero yo pienso sacarle bastante provecho a partir de ahora 😉