Artículos

Resaltar código con Gatsby y markdown

Si ya leiste mi post anterior, sabes que estoy intentando hacer un blog generado estáticamente(los posts no se almacenan en bases de datos, sino que son archivos planos) para publicar las cosas que se me ocurran. Bueno, pues una de las cosas que normalmente se me ocurren publicar estan relacionadas con el mundo de la programación y con este tipo de contenido se requiere de compartir fragmentos de código relacionados al post, lo cual en realidad nos trae a este post.

Despues de configurar mi entorno de trabajo para Gatsby siguiendo el tutorial del sitio web de Gatsby, lo siguiente que hice fue instalar un nuevo plugin que me permitiera resaltar la sintaxis del código en mis posts, el plugin lo puedes encontrar en esta enlace, la verdad es que no tuve que hacer mucho, simplemente seguí los pasos ahi descritos:

  1. Instalar el plugin
npm install --save gatsby-transformer-remark gatsby-remark-prismjs prismjs
  1. Editar el archivo gatsby-config.js

    plugins: [
    {
    resolve: `gatsby-transformer-remark`,
    options: {
      plugins: [
        {
          resolve: `gatsby-remark-prismjs`,
          options: {
            classPrefix: "language-",
            inlineCodeMarker: null,
            aliases: {},
            showLineNumbers: false,
            noInlineHighlight: false,
            languageExtensions: [
              {
                language: "superscript",
                extend: "javascript",
                definition: {
                  superscript_types: /(SuperType)/,
                },
                insertBefore: {
                  function: {
                    superscript_keywords: /(superif|superelse)/,
                  },
                },
              },
            ],
            prompt: {
              user: "root",
              host: "localhost",
              global: false,
            },
          },
        },
      ],
    },
    },
    ]
  2. Incluir el css en el archivo gatsby-browser.js

    require("prismjs/themes/prism-solarizedlight.css")

Y listo, como pudiste ver en los fragmentos de código anteriores ya tenemos resaltado de la sintaxis. De ahora en adelante todo lo que escriba con formatos de código en mis post con extension .md se van a mostrar con sintaxis resaltada. :)