{"componentChunkName":"component---src-templates-post-template-js","path":"/posts/resaltar-codigo-con-gatsby-y-markdown/","result":{"data":{"markdownRemark":{"id":"92cf7706-4303-58db-876e-77e2991cdc7c","html":"<p>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.</p>\n<p>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 <a href=\"https://www.gatsbyjs.org/packages/gatsby-remark-prismjs/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">esta enlace</a>, la verdad es que no tuve que hacer mucho, simplemente seguí los pasos ahi descritos:</p>\n<ol>\n<li>Instalar el plugin</li>\n</ol>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">npm</span> <span class=\"token function\">install</span> --save gatsby-transformer-remark gatsby-remark-prismjs prismjs</code></pre></div>\n<ol start=\"2\">\n<li>\n<p>Editar el archivo gatsby-config.js</p>\n<div class=\"gatsby-highlight\" data-language=\"javascript\"><pre class=\"language-javascript\"><code class=\"language-javascript\">plugins<span class=\"token punctuation\">:</span> <span class=\"token punctuation\">[</span>\n<span class=\"token punctuation\">{</span>\nresolve<span class=\"token punctuation\">:</span> <span class=\"token template-string\"><span class=\"token template-punctuation string\">`</span><span class=\"token string\">gatsby-transformer-remark</span><span class=\"token template-punctuation string\">`</span></span><span class=\"token punctuation\">,</span>\noptions<span class=\"token punctuation\">:</span> <span class=\"token punctuation\">{</span>\n  plugins<span class=\"token punctuation\">:</span> <span class=\"token punctuation\">[</span>\n    <span class=\"token punctuation\">{</span>\n      resolve<span class=\"token punctuation\">:</span> <span class=\"token template-string\"><span class=\"token template-punctuation string\">`</span><span class=\"token string\">gatsby-remark-prismjs</span><span class=\"token template-punctuation string\">`</span></span><span class=\"token punctuation\">,</span>\n      options<span class=\"token punctuation\">:</span> <span class=\"token punctuation\">{</span>\n        classPrefix<span class=\"token punctuation\">:</span> <span class=\"token string\">\"language-\"</span><span class=\"token punctuation\">,</span>\n        inlineCodeMarker<span class=\"token punctuation\">:</span> <span class=\"token keyword\">null</span><span class=\"token punctuation\">,</span>\n        aliases<span class=\"token punctuation\">:</span> <span class=\"token punctuation\">{</span><span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n        showLineNumbers<span class=\"token punctuation\">:</span> <span class=\"token boolean\">false</span><span class=\"token punctuation\">,</span>\n        noInlineHighlight<span class=\"token punctuation\">:</span> <span class=\"token boolean\">false</span><span class=\"token punctuation\">,</span>\n        languageExtensions<span class=\"token punctuation\">:</span> <span class=\"token punctuation\">[</span>\n          <span class=\"token punctuation\">{</span>\n            language<span class=\"token punctuation\">:</span> <span class=\"token string\">\"superscript\"</span><span class=\"token punctuation\">,</span>\n            extend<span class=\"token punctuation\">:</span> <span class=\"token string\">\"javascript\"</span><span class=\"token punctuation\">,</span>\n            definition<span class=\"token punctuation\">:</span> <span class=\"token punctuation\">{</span>\n              superscript_types<span class=\"token punctuation\">:</span> <span class=\"token regex\">/(SuperType)/</span><span class=\"token punctuation\">,</span>\n            <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n            insertBefore<span class=\"token punctuation\">:</span> <span class=\"token punctuation\">{</span>\n              <span class=\"token keyword\">function</span><span class=\"token punctuation\">:</span> <span class=\"token punctuation\">{</span>\n                superscript_keywords<span class=\"token punctuation\">:</span> <span class=\"token regex\">/(superif|superelse)/</span><span class=\"token punctuation\">,</span>\n              <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n            <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n          <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n        <span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span>\n        prompt<span class=\"token punctuation\">:</span> <span class=\"token punctuation\">{</span>\n          user<span class=\"token punctuation\">:</span> <span class=\"token string\">\"root\"</span><span class=\"token punctuation\">,</span>\n          host<span class=\"token punctuation\">:</span> <span class=\"token string\">\"localhost\"</span><span class=\"token punctuation\">,</span>\n          global<span class=\"token punctuation\">:</span> <span class=\"token boolean\">false</span><span class=\"token punctuation\">,</span>\n        <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n      <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n    <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n  <span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span>\n<span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n<span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n<span class=\"token punctuation\">]</span></code></pre></div>\n</li>\n<li>\n<p>Incluir el css en el archivo gatsby-browser.js</p>\n<div class=\"gatsby-highlight\" data-language=\"javascript\"><pre class=\"language-javascript\"><code class=\"language-javascript\"><span class=\"token function\">require</span><span class=\"token punctuation\">(</span><span class=\"token string\">\"prismjs/themes/prism-solarizedlight.css\"</span><span class=\"token punctuation\">)</span></code></pre></div>\n</li>\n</ol>\n<p>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. :)</p>","fields":{"slug":"/posts/resaltar-codigo-con-gatsby-y-markdown/","tagSlugs":["/tag/react/","/tag/gatsby/","/tag/git-hub-pages/"]},"frontmatter":{"date":"2019-11-01T22:12:03.284Z","description":"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.","tags":["React","Gatsby","GitHub Pages"],"title":"Resaltar código con Gatsby y markdown","socialImage":"/media/image-2.jpg"}}},"pageContext":{"isCreatedByStatefulCreatePages":false,"slug":"/posts/resaltar-codigo-con-gatsby-y-markdown/"}}}