O que é o formato de ficheiro MD?
Um arquivo com a extensão .md contém um documento de texto simples criado usando a linguagem Markdown. Existem muitos dialetos de Markdown, mas todos usam o mesmo conjunto de convenções e sintaxe semelhante. As tags Markdown definem elementos de formatação de texto, tais como:
- Atributos de negrito e itálico
- Cabeçalhos
- Formato de tabela
- Listas
- Citações em bloco
- Incorporação de imagens e código HTML
Arquivos .md também podem usar o sufixo .MARKDOWN. Arquivos .md podem ser facilmente convertidos para o formato RTF ou PDF, embora inicialmente o Markdown tenha sido usado principalmente para gerar documentos HTML, normalmente arquivos de ajuda. Como o .md é um arquivo de texto simples, ele pode ser aberto e editado com qualquer editor de texto para criar documentos formatados. O Markdown usa uma sintaxe simples e fácil de ler.
O Markdown foi desenvolvido em 2004 por John Gruber, com contribuições de Aaron Swartz. O principal objetivo dos designers desta linguagem era oferecer aos usuários um sistema de marcação simples e intuitivo - ao contrário do HTML, por exemplo - para editar e criar documentos. O intérprete original de arquivos .md, que convertia arquivos .md em documentos HTML, foi escrito em Perl. Muitas variações da linguagem Markdown foram desenvolvidas desde então. Em 2016, a RFC 7763 registrou o MIME type text/markdown, e a RFC 7764 catalogou as principais variantes de Markdown, incluindo CommonMark, GFM, Markdown Extra e outras.
Segurança e proteção
RISCO: LOWUm arquivo .md é texto simples e não pode executar código, portanto, abrir um é seguro. A única ressalva: o Markdown permite HTML bruto, então uma pré-visualização renderizada pode conter HTML/JavaScript ou imagens que rastreiam o acesso - renderizadores respeitáveis (GitHub, VS Code) sanitizam isso. Como sempre, desconfie de links dentro de um documento de fonte desconhecida antes de clicar.
Detalhes do formato
em resumoProgramas que abrem arquivos MD
Detalhes técnicos
especificação profunda| MIME type | text/markdown (registrado pela RFC 7763, 2016) |
| Codificação de caracteres | Texto simples UTF-8; sem cabeçalho binário ou magic bytes - identificado pela extensão .md e sintaxe convencional |
| Estilo de sintaxe | Marcação leve - o código-fonte é legível por humanos sem um analisador ou renderizador |
| Alvo de saída primário | HTML, produzido por um processador Markdown; alvos secundários incluem PDF e EPUB via ferramentas como Pandoc |
| Dialetos comuns | CommonMark, GitHub Flavored Markdown (GFM), Markdown Extra, MultiMarkdown, R Markdown (.Rmd) |
| Suporte a front matter | YAML front matter entre delimitadores --- é amplamente utilizado por geradores de sites estáticos (Jekyll, Hugo, Eleventy) para armazenar metadados da página |
| Sintaxe de títulos | Estilo ATX (# H1, ## H2) e estilo Setext (sublinhado com = ou -) são ambos válidos na especificação base |
| Sintaxe de links | Inline [texto](url), estilo de referência [texto][id] e link automático <url> - todas as três formas fazem parte da especificação principal |
| Sintaxe de blocos de código | Cercado (crases triplas ou tils) ou recuado com 4 espaços; um identificador de linguagem após o delimitador de abertura habilita o realce de sintaxe |
| Suporte a tabelas | Não presente na especificação original de 2004; introduzido como uma extensão GFM e posteriormente como uma extensão opcional do CommonMark |
| Sintaxe de imagem |  - armazena apenas uma referência de URL; as imagens não são incorporadas no próprio arquivo .md |
| Tachado | ~~texto~~ - uma extensão GFM; ausente da especificação Markdown base |
| Suporte a Math / LaTeX | Sintaxe $em-linha$ e $$bloco$$ reconhecida pelo Obsidian, Jupyter e extensões do VS Code, mas fora da especificação principal |
| Regras de quebra de linha | Uma linha em branco separa elementos de bloco; quebras de linha forçadas requerem dois espaços finais ou uma \ antes de uma nova linha (CommonMark) |
| Conflitos de extensão | .md é ocasionalmente reivindicado por ferramentas de metadados ou descrição de máquinas; o conteúdo e o contexto do arquivo distinguem o uso do Markdown |
| Lançado | 2004 (Markdown by John Gruber); CommonMark spec 2014; GitHub Flavored Markdown 2017 |
| Padrão aberto | Sim · livre de royalties |
| Especificação | spec.commonmark.org |