Pega Markdown y obten HTML conforme al estandar al instante, con opciones para autoenlazado, tipografia inteligente, saltos de linea duros y HTML sin procesar.
Entra Markdown, sale HTML conforme al estandar. Todo se convierte mientras escribes. Las cuatro opciones cambian el comportamiento del analizador y la vista previa muestra el resultado renderizado, para revisar el marcado y la salida a la vez.
Opciones del analizador
–
Vista previa
La libreria de Markdown no se cargo, asi que la conversion no esta disponible. Recarga la pagina.
Markdown, CommonMark y los sabores intermedios
Por que dos analizadores discrepan sobre tu documento
Markdown se publico en 2004 como un script de Perl y una pagina de prosa, sin gramatica formal. Esa informalidad explica su difusion y tambien que el mismo documento se renderice distinto en herramientas distintas. La implementacion original dejo decenas de casos sin definir: que hace un marcador de lista con tres espacios de sangria, como se anida el enfasis dentro de una palabra, si un encabezado necesita una linea en blanco delante. Cada implementador resolvio esos huecos adivinando, y adivinaron cosas distintas.
CommonMark existe para cerrar esa brecha. Es una especificacion precisa con varios cientos de pruebas de conformidad que cubren exactamente los casos ambiguos que el original dejo abiertos. Este conversor usa markdown-it, que supera la suite completa de CommonMark, de modo que la salida coincide con la de GitHub, Reddit, Discourse y la mayoria del utillaje moderno. Si un documento se renderiza aqui, se renderizara igual alli.
GitHub Flavored Markdown es un superconjunto anadido encima: tablas, tachado, listas de tareas y URLs autoenlazadas. Las tablas y las listas de tareas funcionan en esta herramienta, y por eso el documento de ejemplo incluye ambas. La distincion importa cuando escribes para un destino que no controlas, porque una tabla no forma parte de CommonMark estricto y un analizador riguroso la dejara pasar como texto plano.
Que cambian realmente las cuatro opciones
El autoenlazado convierte una URL suelta en un ancla. Es comodo para changelogs y notas, pero se desvia de CommonMark, que exige angulos alrededor de un enlace suelto. Desactivalo si la salida debe ser portable a un analizador estricto.
La tipografia inteligente sustituye comillas rectas por curvas y convierte -- en una raya. Es lo correcto para prosa y erroneo para cualquier cosa con fragmentos de codigo fuera de un bloque, porque destrozara alegremente una opcion de linea de comandos. Los tramos de codigo y los bloques cercados nunca se tocan.
Los saltos duros cambian el significado de un salto de linea unico. Por defecto Markdown une lineas consecutivas en un solo parrafo, que es lo que asumen la mayoria de documentos. La entrada tipo chat, donde la gente pulsa Intro para cambiar de linea, necesita esta opcion activada o el formato se colapsa.
El paso de HTML sin procesar es el que tiene consecuencias de seguridad. Con la opcion desactivada, un <img onerror=...> en el origen se escapa y se muestra como texto. Con ella activada, se emite como marcado vivo. Dejala desactivada para cualquier contenido enviado por usuarios.
Sanear es un trabajo aparte
El error mas comun en cualquier flujo con Markdown es suponer que el conversor te protege. No lo hace, ni debe hacerlo. Incluso con el HTML sin procesar desactivado, el destino de un enlace sigue bajo control del atacante, asi que [pulsa](javascript:alert(1)) produce un ancla que el navegador puede respetar. La sintaxis de Markdown por si sola basta para construir un ataque funcional.
El patron correcto es convertir, luego sanear y luego insertar. Pasa el HTML por un saneador dedicado como DOMPurify con una lista de etiquetas y atributos permitidos, y solo entonces colocalo en la pagina. Hazlo en el servidor si el contenido se mostrara a alguien distinto de su autor, porque el saneado en cliente lo esquiva cualquiera que pueda hablar directamente con tu API. Esta herramienta renderiza la vista previa localmente en tu navegador con tu propia entrada, que es un modelo de amenaza distinto al de publicar el Markdown de otra persona.
Preguntas frecuentes
Que dialecto de Markdown sigue?
CommonMark, mas las extensiones de GitHub que markdown-it activa por defecto, como tablas y listas de tareas. Supera la suite completa de conformidad de CommonMark, asi que la salida coincide con GitHub, Discourse y la mayoria de renderizadores modernos.
Es seguro publicar directamente el HTML generado?
No. Pasalo siempre por un saneador como DOMPurify antes de insertarlo en una pagina, sobre todo si no escribiste tu el contenido. Aun con el HTML sin procesar desactivado, los destinos de enlace siguen bajo control del atacante y una URL javascript: puede colarse.
Por que desaparecieron mis saltos de linea simples?
El Markdown estandar une lineas consecutivas en un parrafo; un salto duro necesita dos espacios finales o una linea en blanco. Activa la opcion de salto simple si tu origen es texto tipo chat donde cada Intro debe ser un salto.
Puedo pegar HTML en el lado de Markdown?
Si, si activas la opcion de HTML sin procesar. En caso contrario las etiquetas se escapan y se muestran como texto literal, que es el valor seguro por defecto. Mezclar HTML es valido, pero los bloques deben separarse con lineas en blanco.
Se sube mi contenido a algun sitio?
No. markdown-it se ejecuta integramente en tu navegador y la pagina no hace ninguna peticion de red con tu texto. Puedes cargar la pagina, desconectarte y seguir convirtiendo.
Por que la tipografia inteligente rompe mi codigo?
Reescribe comillas y guiones en la prosa, asi que una opcion como --dry-run escrita fuera de un tramo de codigo se convierte en raya. Envuelve los fragmentos en acentos graves: el analizador nunca aplica sustitucion tipografica dentro de codigo.