MarkdownLab

¿Qué es Markdown?

Una forma de texto plano para escribir documentos con formato — legible tal cual, y legible por máquinas.

Un lenguaje de formato en texto plano

Markdown es un lenguaje de marcado ligero para añadir formato —encabezados, texto en negrita y cursiva, enlaces, listas y código— a texto plano usando un pequeño conjunto de convenciones basadas en signos de puntuación. Un solo par de asteriscos pone el texto en cursiva, un par doble lo pone en negrita, y una almohadilla al principio de una línea la convierte en un encabezado. No hay que aprender ningún formato de archivo aparte ni usar ninguna aplicación especial para escribirlo: un documento Markdown es un archivo .md o .txt que puedes abrir en cualquier editor de texto.

La idea central es que el Markdown sin formatear ya debería ser legible y tener sentido como texto plano —a diferencia de HTML, donde un párrafo envuelto en etiquetas <p><strong> es considerablemente más difícil de leer en su forma cruda que en el resultado renderizado. El Markdown se convierte, o se «renderiza», a HTML (u otro formato) para mostrarse.

Una breve historia

Markdown fue creado por John Gruber en 2004, con aportes sobre la sintaxis de Aaron Swartz. El objetivo original de Gruber, expuesto en las notas de la primera versión del formato, era una sintaxis «tan fácil de leer y de escribir como fuera posible» —lo bastante legible como para que un correo electrónico o un mensaje de foro en texto plano que la usara tuviera pleno sentido para alguien que nunca hubiera visto Markdown antes.

Sin embargo, esa especificación original dejaba varios casos límite ambiguos —distintas herramientas no coincidían en cómo manejar cosas como listas anidadas o énfasis junto a signos de puntuación. En 2014, un grupo que incluía a Jeff Atwood y John MacFarlane publicó CommonMark, una especificación estricta y sin ambigüedades diseñada para que Markdown se comportara igual en todas las implementaciones. La mayoría de los analizadores de Markdown modernos —incluido el que usan las propias herramientas de este sitio— se basan en CommonMark.

Un ejemplo breve

Así es como se ve en la práctica esa idea de «legible incluso sin renderizar». Este texto plano:

## Weekly update

Shipped the new **onboarding flow** and fixed the *login redirect* bug.

Next up:
- Finish the billing page
- Write release notes

se renderiza como un encabezado, un párrafo con una frase en negrita y otra en cursiva, y una lista con dos elementos —pero incluso antes de renderizarlo, ya puedes leerlo y entender exactamente lo que dice. Ese es todo el sentido del formato.

Dónde se usa Markdown hoy

Markdown se ha convertido en la sintaxis de formato en texto plano por defecto en una enorme variedad de herramientas:

  • Plataformas para desarrolladores —GitHub, GitLab y Bitbucket renderizan archivos README, incidencias y descripciones de pull requests escritos en Markdown.
  • Herramientas de chat y comunidad —Reddit, Discord y Slack admiten una sintaxis similar a Markdown para negrita, cursiva y formato de código en los mensajes.
  • Aplicaciones de notas y documentación —Notion, Obsidian y muchos generadores de sitios estáticos (entre ellos Jekyll, Hugo y las capas de contenido de Next.js) almacenan el contenido como archivos Markdown.
  • Redacción técnica y blogs —herramientas de documentación como GitBook y Read the Docs, y plataformas de blogs como Ghost y dev.to, aceptan Markdown como su formato de redacción principal en lugar de un editor de texto enriquecido.
  • Cuadernos de ciencia de datos —Jupyter y herramientas de cuadernos similares usan celdas Markdown para texto narrativo y explicaciones junto a celdas de código ejecutable.
  • Modelos de lenguaje de gran tamaño —herramientas de IA conversacional como ChatGPT y Claude dan formato en Markdown a la mayoría de sus respuestas, porque les permite señalar encabezados, listas y bloques de código con muy poco texto adicional. Consulta Markdown para LLMs para saber por qué.

CommonMark frente a GitHub Flavored Markdown

La mayor parte de lo que la gente entiende hoy por «Markdown» es una de estas dos cosas relacionadas:

FunciónCommonMarkGitHub Flavored Markdown
Encabezados, énfasis, listas, enlaces
TablasNo
Listas de tareasNo
TachadoNo
Autoenlaces (URLs sueltas)No
Estado de la especificaciónEspecificación formalSuperconjunto de CommonMark

En la práctica, GFM es lo que la mayoría de la gente escribe en el día a día —es la sintaxis que renderiza GitHub, y la que admiten las propias herramientas de este sitio. Consulta la hoja de referencia de Markdown para el detalle completo, incluyendo exactamente qué filas son de CommonMark y cuáles son extensiones de GFM.

Esta distinción importa en la práctica cuando mueves un documento entre herramientas: si pegas una tabla o una lista de tareas en un analizador que solo implementa CommonMark estricto, el marcado de la tabla se convierte en un simple párrafo y las casillas se quedan como el texto literal [ ] en lugar de renderizarse. Si un fragmento de Markdown se ve bien en GitHub pero se rompe en otro sitio, normalmente la causa es una función exclusiva de GFM.

Primeros pasos

Si eres nuevo en Markdown, tres piezas de sintaxis cubren la mayor parte de lo que necesitas para empezar: una almohadilla para un encabezado (# Heading), asteriscos para el énfasis (**bold** o *italic*), y un guion para un elemento de lista (- item). Todo lo demás —tablas, bloques de código, enlaces— se basa en la misma lógica de texto plano.

La forma más rápida de familiarizarte con él es escribir un documento breve y ver cómo se renderiza. Abre el editor de Markdown y escribe unas líneas —el panel de vista previa se actualiza a medida que escribes, así que puedes ver exactamente qué produce cada elemento de sintaxis. Mantén la hoja de referencia abierta en otra pestaña mientras te familiarizas con la sintaxis.

Por qué ha perdurado

Antes de Markdown existieron muchos lenguajes de marcado, y muchos más han aparecido desde entonces. Lo que ha mantenido a Markdown relevante durante dos décadas es que nunca pidió a nadie instalar nada ni aprender un conjunto de herramientas pesado —es solo texto, así que funciona en un cliente de correo, una terminal, una ventana de chat o un editor de código sin ningún soporte especial. Esa baja barrera de entrada también explica por qué encaja de forma natural con el contenido generado por máquinas: un script, la respuesta de una API o un modelo de lenguaje pueden emitir Markdown como una simple cadena de texto, y seguirá siendo legible tanto si quien lo recibe sabe renderizarlo como si no. Dos décadas después del lanzamiento original de Gruber, esa combinación —legible por humanos, escribible por máquinas y prácticamente sin dependencias— sigue siendo la razón por la que Markdown continúa apareciendo en herramientas nuevas en lugar de ser reemplazado por ellas.