Generador de Tablas Markdown - Crea y Edita Tablas Visualmente en Línea
Crea y edita tablas Markdown con un editor visual de cuadrícula. Configura alineación de columnas, importa CSV/Markdown y obtén salida GFM en tiempo real — 100% del lado del cliente.
Preguntas Frecuentes
¿Qué es un generador de tablas Markdown y por qué lo necesito?
Un generador de tablas Markdown es una herramienta visual que te permite crear tablas en sintaxis Markdown sin escribir manualmente caracteres de barra vertical (|), guiones (-) y dos puntos de alineación (:). Escribir tablas Markdown a mano es tedioso y propenso a errores. Este generador visual proporciona una cuadrícula tipo hoja de cálculo donde escribes el contenido de las celdas, configuras la alineación de columnas y obtienes una salida Markdown perfectamente formateada al instante.
¿Cómo uso este generador de tablas Markdown?
Comienza escribiendo contenido directamente en las celdas de la cuadrícula. La primera fila siempre es la fila de encabezado. Usa los botones de la barra de herramientas para agregar o eliminar filas y columnas. Para configurar la alineación de columnas, haz clic en el botón de alineación en cada encabezado de columna. El Markdown generado aparece en el panel de salida en tiempo real mientras editas.
¿Están seguros mis datos? ¿Se envían datos fuera del navegador?
Tus datos están 100% seguros y nunca salen de tu navegador. Toda la edición de tablas y generación de Markdown se realiza del lado del cliente usando JavaScript que se ejecuta directamente en tu navegador. No se transmite ningún contenido de celdas, estructuras de tablas ni datos a ningún servidor.
¿Qué sintaxis de tabla Markdown genera esta herramienta?
La herramienta genera sintaxis de tablas GitHub Flavored Markdown (GFM), el formato de tabla más ampliamente soportado. Usa caracteres de barra vertical (|) para separar columnas, una fila separadora con guiones (-) y dos puntos (:) para indicar la alineación de columnas. Compatible con GitHub, GitLab, VS Code, Obsidian y todos los principales renderizadores de Markdown.
¿Cuál es la diferencia entre salida Legible y Compacta?
El modo Legible agrega espacios para que los caracteres de barra vertical se alineen verticalmente en el texto fuente. Esto facilita la lectura del Markdown sin procesar en editores de código. El modo Compacto produce la sintaxis mínima válida sin espacios adicionales, útil cuando importa el tamaño del archivo.
¿Puedo importar y editar una tabla Markdown existente?
Sí. Haz clic en el botón Importar y selecciona el modo Markdown. Pega tu tabla Markdown existente en el área de texto de importación y haz clic en Importar. La herramienta analiza la sintaxis, detecta las alineaciones de columnas y completa el editor de cuadrícula con el contenido de las celdas.
¿Puedo convertir datos CSV o de Excel en una tabla Markdown?
Sí. Haz clic en Importar y selecciona el modo CSV/TSV. Pega tus datos separados por comas, tabulaciones o punto y coma. La herramienta detecta automáticamente el delimitador y trata la primera fila como encabezado. Para datos de Excel, copia las celdas y pégalas directamente.
¿Cuáles son los límites de tamaño para las tablas?
La herramienta soporta tablas de hasta 20 columnas y 100 filas (incluyendo la fila de encabezado). Las celdas individuales pueden contener hasta 500 caracteres.
Ejemplos de Código
function generateMarkdownTable(data, alignments = []) {
const numCols = Math.max(...data.map(row => row.length));
const rows = data.map(row => {
const normalized = [...row];
while (normalized.length < numCols) normalized.push('');
return normalized;
});
const colWidths = Array(numCols).fill(3);
for (let col = 0; col < numCols; col++) {
for (const row of rows) {
colWidths[col] = Math.max(colWidths[col], row[col].length);
}
}
const separator = Array.from({ length: numCols }, (_, i) => {
const align = alignments[i] || 'left';
const dashes = '-'.repeat(colWidths[i]);
if (align === 'center') return ':' + dashes.slice(1, -1) + ':';
if (align === 'right') return dashes.slice(0, -1) + ':';
return ':' + dashes.slice(1);
});
const formatRow = (cells) =>
'| ' + cells.map((c, i) => c.padEnd(colWidths[i])).join(' | ') + ' |';
return [
formatRow(rows[0]),
'| ' + separator.join(' | ') + ' |',
...rows.slice(1).map(formatRow)
].join('\n');
}
const table = generateMarkdownTable(
[['Name', 'Role'], ['Alice', 'Engineer'], ['Bob', 'Designer']],
['left', 'center']
);
console.log(table);