DevToy

Tabelas Markdown

Escapar barras verticais e quebras de linha em tabelas Markdown

Evite colunas quebradas tratando barras verticais, barras invertidas, quebras HTML, código inline e diferenças de renderização.

Publicado 11 de julho de 2026 · Atualizado 11 de julho de 2026

A barra vertical é sintaxe de tabela, mas também aparece em comandos shell, uniões TypeScript, expressões regulares e texto. Um | não escapado pode ser interpretado como o limite da próxima coluna.

Escape uma barra vertical literal

Coloque uma barra invertida imediatamente antes:

| Expressão | Significado |
| :--- | :--- |
| `ready \| waiting` | Qualquer estado é aceito |
| `string \| null` | Uma união TypeScript |

Alguns renderizadores processam código inline primeiro; outros ainda exigem escape dentro de crases. Escapar é a escolha mais portátil. Um gerador deve fazer isso na saída Markdown, sem alterar o valor visível no editor.

Entenda a entrada com barra invertida

Se o valor bruto já contém \|, um formatador ingênuo pode adicionar outra barra a cada execução. Separe o valor editável da saída serializada e escape exatamente uma vez na exportação. Ao importar, decodifique os escapes para editar e codifique-os novamente ao exportar.

Trate quebras de linha de propósito

A maioria das implementações espera uma linha de código por linha da tabela. As opções são:

  1. Substituir a quebra por espaço quando ela não importa.
  2. Usar <br> quando HTML inline for permitido.
  3. Mover detalhes para baixo da tabela e criar um link em uma célula curta.

A terceira opção costuma ser mais acessível e legível no celular.

Teste o renderizador final

GitHub, geradores estáticos e portais internos podem produzir resultados diferentes. Mantenha uma tabela mínima de teste quando barras e código inline forem essenciais.

O gerador visual de tabelas escapa barras na saída sem enviar as células a um servidor.

Guias relacionadas