Formatter Markdown

Incolla un documento Markdown e il formatter lo riscrive in uno stile coerente: corregge i salti di livello delle intestazioni (niente H2 dopo H4), aggiunge padding alle colonne delle tabelle per allinearsi nel sorgente, impone una singola riga vuota tra i blocchi, normalizza i marcatori delle liste a -, riduce le sequenze di righe vuote e ordina le definizioni dei link in stile riferimento in fondo. L’HTML renderizzato non cambia, solo il file sorgente diventa più ordinato, quindi i diff diventano leggibili.

Come il formatter riscrive il Markdown

  1. 1

    Incolla Markdown

    Trascina il documento grezzo, README, pagina di documentazione, appunti di riunione.

  2. 2

    Scegli le opzioni di stile

    Marcatore di lista (`-`/`*`), stile intestazione (ATX/Setext), allineamento della tabella, avvolgi colonna.

  3. 3

    Formatta

    Lo strumento analizza il documento in un AST e lo ri-serializza con lo stile scelto.

  4. 4

    Diff l'output

    Una vista affiancata mostra cosa è cambiato prima di incollarlo di nuovo.

Cosa corregge il formatter

  • Marcatori di lista. *, -, + vengono normalizzati a un carattere coerente (predefinito -).
  • Gerarchia delle intestazioni. Avvisa (o promuove) quando H2 è seguito da H4 senza H3 in mezzo.
  • Righe vuote. Esattamente una riga vuota tra i blocchi; nessuna sequenza di tre o più.
  • Tabelle. Aggiunge padding a ciascuna colonna affinché i pipe si allineino nel sorgente, anche se i renderer Markdown non se ne curano.
  • Spazi bianchi finali. Rimuove gli spazi finali su ogni riga tranne il marcatore di interruzione di riga intenzionale a due spazi.
  • Link di riferimento. Raccoglie le definizioni [label]: url alla fine del documento, ordinate alfabeticamente.
  • Code fences. Il tag di lingua è normalizzato in minuscolo; i blocchi di codice basati su indentazione diventano blocchi delimitati.

Opzioni di stile che puoi impostare

Opzione Predefinito Alternative
Marcatore di lista - *, +
Stile intestazione ATX Setext per H1/H2
Delimitatore di enfasi * _
Delimitatore di grassetto ** __
Avvolgi colonna 0 (disattivato) 80, 100, 120
Ordina link di riferimento attivo disattivato

Perché il Markdown coerente è importante

In un repository di team, un Markdown incoerente produce diff rumorosi: ogni volta che qualcuno salva un file con un editor diverso, i marcatori delle liste cambiano e le tabelle si riformattano. Un formatter impone uno stile affinché i revisori delle richieste di pull vedano solo le modifiche di contenuto. Pensalo come prettier per la prosa.

Quando non formattare

  • Blocchi di codice delimitati rimangono intatti byte per byte, il formatter non toccherà mai il contenuto di un blocco di codice. Se la formattazione cambia il codice, è un bug.
  • Interruzioni di riga intenzionali a larghezze ridotte (readme.md su un progetto terminale) vengono riavvolte se abiliti l’avvolgimento della colonna. Disabilita l’avvolgimento se mantieni interruzioni di riga manuali.
  • Blocchi HTML incorporati passano attraverso invariati.

Sostituzioni drop-in

Se preferisci un CLI locale, il formatter utilizza le stesse regole AST di remark-stringify con il plugin remark-gfm. prettier --parser markdown produce un risultato simile.

Domande frequenti

No. Il formatter riscrive solo il sorgente, l’output HTML renderizzato sia prima che dopo dovrebbe essere equivalente. Se vedi un cambiamento di rendering, segnalalo come un bug.

No. Il front-matter YAML o TOML in cima al file viene rilevato e passato attraverso intatto.

Sì, imposta la colonna di avvolgimento a 80, 100 o 120 e i paragrafi verranno riavvolti. Le righe all’interno dei code fences non vengono mai toccate.

No. Il formatter presume che i tuoi link funzionino; riorganizza solo le definizioni dei link di riferimento. Usa uno strumento di controllo dei link separatamente.

No. L’analisi e la formattazione avvengono nel tuo browser; il contenuto non lascia mai il tuo dispositivo.

Strumenti correlati

Strumento disponibile in altre lingue