03 / GUÍAS
Markdown a HTML: un flujo de publicación limpio
Por qué Markdown es un formato fuente duradero, qué admite realmente un conversor limitado, cómo la desinfección y las reglas de enlaces mantienen segura la salida, qué pierde el viaje de vuelta desde HTML y dónde encaja la conversión en un flujo de documentación o blog.
Por qué Markdown es la fuente, no la exportación
Un flujo de publicación necesita un formato máster que sobreviva a herramientas, alojamientos y rediseños. Ese máster es el Markdown de texto plano: legible en cualquier editor, comparable en el control de versiones e independiente de la plantilla HTML que lo renderice este año.
La disciplina que lo hace funcionar es el flujo unidireccional: el Markdown se edita a mano, el HTML lo produce el conversor y nadie parchea la salida manualmente. En el momento en que el HTML exportado recibe ediciones a mano, hay dos másteres y acabarán divergiendo.
- PortablePortabilidad: un archivo Markdown se abre en cualquier editor y se convierte a HTML, PDF, diapositivas o un sistema de documentación sin proyecto de migración.
- ComparableRevisabilidad: los cambios de prosa aparecen como diffs de línea limpios, mientras que un máster en HTML entierra la edición de una palabra entre etiquetas y atributos.
- Estructura, no estiloSeparación de responsabilidades: la fuente porta la estructura—títulos, listas, citas—mientras el tema decide la tipografía, así que un rediseño nunca toca el archivo.
Qué convierte el subconjunto admitido—y qué se aplana
Los conversores deliberados admiten un subconjunto a propósito, porque cada constructo admitido es una vía más para colar marcado que nadie revisó. Conoce dónde se sitúa tu contenido respecto a esa línea antes de confiar en la conversión.
El Área de Markdown y HTML convierte exactamente este subconjunto. Una imagen escrita en sintaxis Markdown se degrada a su texto alternativo y un enlace; una tabla escrita en HTML crudo pierde su rejilla y conserva solo el texto de sus celdas. Redacta dentro del subconjunto y nada te sorprenderá al publicar.
- Conversiones limpiasConversión limpia: títulos de hasta seis niveles, párrafos, negrita, cursiva, tachado, código en línea, bloques de código con cercas, listas ordenadas y desordenadas, citas en bloque, reglas horizontales y enlaces en línea.
- Pérdidas conocidasSe aplana o se pierde: imágenes incrustadas, tablas, notas al pie, listas de tareas y bloques HTML en crudo no tienen representación en el subconjunto, así que desaparecen o se degradan a texto plano.
- Prueba con un artículo realLa prueba es simple: convierte un artículo representativo y lee la salida. Lo que falte en el resultado nunca estuvo en el contrato.
La desinfección es parte de publicar, no un extra
El HTML convertido está destinado a inyectarse en una página, y el marcado inyectado es una superficie de ataque. Un flujo limpio desinfecta por defecto: scripts, estilos, iframes, formularios, incrustaciones e imágenes se eliminan directamente, las etiquetas desconocidas se desenvuelven a su texto y los atributos se eliminan.
El panel de vista previa renderiza la salida desinfectada y nunca carga recursos remotos, así que ni siquiera pegar marcado hostil puede hacer que la propia herramienta llame a casa.
- Contenido activo eliminadoLos elementos con comportamiento activo—script, style, iframe, object, embed, svg, form, video, audio, img—se eliminan con su contenido, no solo se neutralizan.
- Atributos retiradosLos atributos desaparecen en bloque: nada de estilos en línea, nada de manejadores de eventos, nada de clases coladas desde la fuente. Un ancla conserva su href solo cuando supera la comprobación de esquema.
- Reportado, no silenciosoEl área informa de lo que eliminó—recuentos de nodos desechados y atributos retirados—así que la desinfección es un evento visible, no una mutación silenciosa.
Los enlaces solo conservan esquemas seguros
Un documento renderizado es en su mayoría enlaces, y los enlaces son donde la desinfección se vuelve específica. El conversor acepta URL http, https y mailto más #fragmentos dentro de la página; cualquier otra cosa—javascript:, data:, trucos de protocolo relativo—pierde su href y se renderiza como texto plano.
Comprueba la lista de permitidos contra tu contenido antes de estandarizar un conversor: un conjunto de documentación que enlaza legítimamente a espejos FTP o esquemas de aplicación propios necesita conservar esos enlaces a mano, porque ningún desinfectante sensato los dejará pasar automáticamente.
- Lista de esquemas permitidosLos enlaces supervivientes se sellan con rel="noreferrer noopener", de modo que un enlace seguido no puede ver ni scriptar la página desde la que se abrió.
- noopener noreferrerLa misma regla aplica en ambas direcciones: los enlaces escritos en Markdown se comprueban al convertir, y los href encontrados en HTML pegado se vuelven a comprobar tras la desinfección.
- Las etiquetas sobrevivenCuando un enlace pierde su esquema, el texto de la etiqueta permanece: la navegación rota se ve de inmediato en lugar de enviar una carga javascript: silenciosa.
El viaje de vuelta pierde cosas reales
Convertir HTML a Markdown es rescate, no ida y vuelta. La estructura que el subconjunto entiende—títulos, párrafos, énfasis, listas, citas, código—vuelve bien; todo lo demás fue descartado por el desinfectante antes de que la conversión empezara.
Trata el HTML-a-Markdown como una forma de sacar prosa de una página que ya no controlas: una exportación de un CMS viejo, un documento que solo existe como HTML renderizado. Luego repara lo que el viaje de vuelta no puede: vuelve a añadir las imágenes, reconstruye las tablas y, desde entonces, conserva el Markdown como máster.
- Las tablas colapsanLas tablas colapsan: sin sintaxis de tablas en el subconjunto, una rejilla de celdas se convierte en una ristra de texto de celdas, así que los datos tabulares necesitan reescritura o una exportación a CSV.
- El medio se eliminaImágenes, vídeo e incrustaciones interactivas desaparecen por diseño: el desinfectante los eliminó como contenido activo antes de construir el Markdown.
- El texto sobrevive al estiloEl formato fuera del subconjunto—spans, divs, clases, destinos de ancla—no deja rastro; el texto sobrevive, la presentación no.
Dónde encaja la conversión en un flujo de documentación o blog
El paso de conversión corre al publicar, una vez por artículo: redacta y revisa en Markdown, convierte a HTML desinfectado, verifica el resultado renderizado y envía. Todo ocurre en la pestaña del navegador—el borrador nunca se sube, lo que importa cuando el contenido es un lanzamiento no anunciado.
- Paso al publicarEl área acepta hasta 256 KiB de fuente y produce hasta 512 KiB de salida—holgado para un capítulo de libro—y reporta un error explícito al pasar de esos límites en lugar de truncar en silencio.
- Límites explícitosCopia la salida en el campo de tu CMS o descárgala como archivo; ambas vías toman el mismo documento desinfectado que mostró la vista previa.
- Reconvierte, no parcheesGuarda el Markdown en el control de versiones junto al código que documenta, y reconvierte tras cada edición en lugar de parchar HTML viejo.
El texto estructurado merece una rutina.
Los borradores Markdown y las cargas JSON comparten una disciplina: parsea primero, inspecciona la estructura y mantén toda la revisión en tu dispositivo.