Convertidor de UBB y HTML
TextoTodo se ejecuta en tu navegador: no se sube nada
Convierte código de foro —UBB, el dialecto `[b]` `[url]` `[img]` que usan Discuz! y sus parientes— a HTML, o al revés. El anidamiento es lo que importa: `[b]negrita[i]cursiva[/i]sigue negrita[/b]` tiene que producir etiquetas bien anidadas, y un conversor hecho a base de buscar y reemplazar no puede —solo una pila sabe a qué `[i]` pertenece cada `[/i]`, así que las herramientas de sustitución emiten etiquetas cruzadas que el navegador tiene que adivinar—. Tres decisiones más: las etiquetas que no se reconocen se conservan tal cual (`[hide]` y `[attach]` son extensiones de cada foro, y descartarlas borra en silencio el formato del usuario), los enlaces `javascript:` nunca se convierten en `<a>` clicables (la salida va a un foro: eso es un punto de entrada XSS), y los `<` y `&` del cuerpo se escapan (si no, «1 < 2» se vuelve una etiqueta mal formada que desvía todo lo que viene después).
Funciones
- Etiquetas en línea: negrita, cursiva, subrayado, tachado, color, tamaño, fuente y alineación
- Las dos formas de enlace ([url]dirección[/url] y [url=dirección]texto[/url]), además de correo e imágenes
- Citas (incluida la atribución [quote=nombre]), bloques de código y listas ordenadas y desordenadas
- Anidamiento cerrado en el orden correcto — lo que un conversor de buscar y reemplazar no puede hacer
- Las etiquetas sin cerrar se cierran al final, y las de cierre sobrantes se tratan como texto normal
- Los nombres de etiqueta no distinguen mayúsculas: [B] es lo mismo que [b]
- Los tamaños se mapean por la escala 1–7 de Discuz en vez de volverse font-size: 7px
- Los corchetes dentro de un bloque [code] no se tocan — eso es el código mismo
- Las etiquetas desconocidas sobreviven intactas, así que el formato del usuario no desaparece
- Los enlaces javascript: se degradan a texto plano en vez de producir un <a> clicable
- La dirección HTML → UBB cubre párrafos, listas, citas, bloques de código y formato en línea
- Todo se ejecuta localmente en el navegador; tu contenido nunca se sube
Cómo se usa
- Pega el código de foro o el HTML
- La dirección normalmente no hay que elegirla — si empieza por < se lee como HTML
- Desactiva la opción de saltos de línea si lo necesitas
- Copia el resultado
Preguntas frecuentes
- ¿Por qué el anidamiento necesita una pila?
- Porque qué `[i]` cierra cada `[/i]` solo se sabe viendo la secuencia completa de etiquetas. Un conversor que va buscando y reemplazando paso a paso convierte `[b]negrita[i]cursiva[/i]sigue negrita[/b]` en etiquetas cruzadas (`<strong>negrita<em>cursiva</strong>sigue negrita</em>`), y deja al navegador adivinar cómo repararlo. Ese tipo de error no lanza nada: la página simplemente se ve mal. Por eso aquí se recorre una vez con una pila, apilando y desapilando, y se cierra lo que quede abierto al final.
- ¿Qué pasa con las etiquetas que no reconoce?
- Se conservan exactamente tal cual: ni se convierten ni se eliminan. `[hide]` (ver respondiendo), `[attach]` (adjuntos) y `[media]` (video) son extensiones de cada foro sin equivalente fuera de Discuz, y la herramienta no tiene forma de saber en qué deberían convertirse. Conservarlas hace que el usuario vea de un vistazo que algo no se convirtió; borrarlas le devuelve un mensaje al que le faltan trozos, que nada en pantalla revela.
- ¿Por qué algunos enlaces no se convirtieron en enlaces?
- Porque su esquema es `javascript:`, `data:` o similar. La salida va a un foro o un blog, donde un enlace `javascript:` clicable es un punto de entrada XSS. Esta herramienta solo deja pasar http, https, ftp, mailto, tel y similares, conservando el texto y sin emitir ningún `<a>` para lo demás.
- ¿Cuántos píxeles son [size=5]?
- Los tamaños de Discuz son una escala de 1 a 7, no valores en píxeles; tomar el número como píxeles da `font-size: 7px`, que no se puede leer. Aquí se mapean por los valores que las plantillas de Discuz usan de verdad: 1→12px, 3→16px (el predeterminado), 5→24px, 7→48px. Un paso desconocido cae a 16px.
- ¿Los saltos de línea deberían volverse br?
- La convención del foro es que un salto de línea es un salto de línea, así que viene activado. Pero algunos sitios ya renderizan con `white-space: pre-wrap`, y ahí un `<br>` de más duplica cada línea en blanco. Si el espaciado te parece demasiado amplio tras pegar, desactiva la opción.
- ¿Se sube mi contenido?
- No. La conversión ocurre por completo en la memoria del navegador; la página no hace ninguna petición y funciona sin conexión.
Herramientas relacionadas
Entidades HTML
CifradoConvierte < > & y las comillas en entidades HTML y las devuelve en una sola pasada, así que &lt; da <, no un ángulo. En tu navegador.
Formateador HTML
FormatoFormatea HTML en línea por niveles de etiqueta, manteniendo el texto y las etiquetas en línea en la misma línea y el contenido de script o pre intacto.
Previsualizar Markdown
TextoEscribe Markdown a la izquierda y velo renderizado a la derecha: anclas, índice y bloques de código coloreados. El HTML pegado sigue siendo texto.
Limpiar texto
TextoLimpia una columna copiada de un log o una hoja: quita duplicados, ordena, borra líneas vacías, recorta espacios y quita la numeración de línea.
Comparar texto
TextoCompara dos textos línea a línea y resalta las líneas añadidas, borradas y sin cambios, alineando cada edición por diferencia mínima. Todo local.
Contador de palabras
Texto¿Cuánto mide este texto? Cuenta por separado caracteres chinos y palabras inglesas, con caracteres, líneas, bytes UTF-8, tiempo de lectura y SMS.