Una de las acciones comunes para un programador, es compartir un fragmento de código. Esta acción sirve tanto para mostrar algo en una charla o evento, como para favorecer la colaboración entre los distintos compañeros. Hoy os muestro las que para mí, son las tres mejores formas de compartir estos fragmentos.
Prism syntax highlighter: la mejor opción para compartir código en una web
A la hora de compartir código, un caso muy común es que el destino de ese código sea una web. Para este tipo de soporte, yo me decanto por una opción que muestre el código en modo texto, como ya os comente en este artículo anterior. Así cualquier persona podrá copiarlo fácilmente, para luego trabajar con él.
Aplicar resaltado de sintaxis al código en una web, es algo para lo que se han desarrollado multitud de proyectos. Sin embargo, suelen dar problemas, tanto de rendimiento, ya que es un proceso complejo, como a la hora de su extensibilidad (añadir más lenguajes).
El proyecto que para mí ha solucionado todo lo anterior ha sido Prism, el cual cuenta con las siguientes características principales:
- Soporte de múltiples lenguajes, de manera modular.
- Disponibilidad de varios temas, para elegir el que case mejor con la web donde se usará.
- Sin dependencias de otros proyectos
- Rápido parseo del código fuente
- Ampliamente probado en grandes proyectos (Drupal, Mozilla…)
printf("Prism está resaltando el código de mi blog");
GitHub Gist: la mejor opción para compartir fragmentos de manera colaborativa
Otra cuestión común, es querer compartir código de manera que otros puedan verlo, revisarlo, añadirlo al suyo propio, valorarlo, etc. En este caso, publicarlo en un blog y utilizar la opción anterior, no es la manera más sencilla, ni la mejor de conseguirlo. Para alcanzar estos objetivos, yo usaría Github Gist, la heramienta de GitHub para fragmentos de código. Esta característica es una de las grandes desconocidas de la plataforma de compartición de código más popular, hoy propiedad de Microsoft. Entre sus características más destacadas están:
- Permite compartir el fragmento de código de múltiples maneras (url, iframe, zip).
- Soporta multitud de lenguajes con resaltado de sintaxis.
- Se puede dividir el código a compartir entre múltiples ficheros y agruparlos todos en el mismo fragmento.
- Cuenta con elementos para conseguir interacción social (comentarios, estrellas, etc).
Carbon: la mejor opción todo en uno
Para finalizar, no siempre el soporte elegido permite la interacción. En estos casos, las opciones anteriores pierden gran parte de su valor, ya que tendríamos que capturar el resultado que generan y esto suele generar imágenes de baja resolución. Para evitar lo anterior, El proyecto Carbon, permite introducir nuestro fragmento, aplicarle el resaltado deseado y exportar el resultado como imagen de alta resolución. Sin embargo, no solo es de resaltar su capacidad para exportar el resultado como imagen, sino que permite:
- Personalizar multitud de aspectos como la fuente, el tipo de ventana, el fondo, etc.
- Reconocer de manera automática el lenguaje del código introducido.
- Compartir el resultado rápidamente en Twitter, con un click
- Exportar el resultado como url, iframe, imagen o vector.
Espero que te haya gustado el artículo de hoy, un saludo.
Jorge Durán
Latest posts by Jorge Durán (see all)
- [Remix] Multitud de recursos para .NET - 18 junio, 2021
- ¿Qué es un puntero y cómo se usan? - 4 junio, 2021
- Los 10 mejores paquetes nuget que tienes que instalar - 26 abril, 2021