Editor Markdown gratuito

Scrivi Markdown con anteprima HTML dal vivo.

Nessun dato lascia il tuo dispositivo
Input Markdown
Anteprima HTML
0
Parole
0
Caratteri
0
Righe

Come usare

  1. Digita o incolla del testo Markdown nel pannello di sinistra. Il pannello di destra mostra l'anteprima HTML dal vivo.
  2. Usa i pulsanti della barra degli strumenti per inserire rapidamente formattazione (grassetto, corsivo, titoli, link, ecc.).
  3. Visualizza i conteggi di parole, caratteri e righe sotto l'editor.
  4. Scarica il tuo Markdown come file .md o copia l'output HTML.

Domande frequenti

Questo editor supporta la sintassi Markdown standard?

Sì. Supporta titoli, grassetto, corsivo, link, immagini, blocchi di codice, liste, citazioni e linee orizzontali. Un parser Markdown semplificato esegue il rendering in HTML in tempo reale.

Posso salvare il mio lavoro?

L'editor salva automaticamente il tuo testo nella memoria del browser mentre lo modifichi. Usa Scarica .md per salvarlo come file sul tuo computer.

Come inserire un link o un'immagine?

Usa i pulsanti della barra degli strumenti. Per i link, digita [testo](url). Per le immagini, usa ![alt](url). L'anteprima si aggiorna all'istante.

Una breve storia di Markdown

Markdown è stato creato nel marzo 2004 da John Gruber, lo scrittore dietro Daring Fireball, con la significativa collaborazione di Aaron Swartz (il polimata che in seguito ha co-fondato Reddit e co-redatto la specifica RSS 1.0). L'obiettivo dichiarato di design (scritto nella pagina originale della sintassi) era «renderlo il più leggibile possibile.» Gruber voleva un formato in testo semplice pubblicabile così com'è, che sembrasse naturale in un terminale o in un editor di testo semplice senza alcun rendering. Il formato formalizzava quello che le persone facevano già nelle email e nei post Usenet in testo semplice: *asterisks for emphasis*, > for quoted text, righe vuote tra i paragrafi.

Il nome è un gioco di parole su «markup language»: Markdown è così leggero che «segna in basso» invece di marcare. Il nucleo filosofico che lo distingue dall'HTML: il sorgente HTML è per le macchine, il sorgente Markdown è per gli umani. Un file .md dovrebbe essere perfettamente leggibile in un terminale senza alcun rendering applicato.

La pagina della sintassi originale di Gruber ha lasciato molti casi limite ambigui, e nel corso degli anni 2000 ogni progetto che aveva bisogno di un parser Markdown ne ha scritto uno proprio, prendendo decisioni diverse sui punti non specificati. All'inizio degli anni 2010 lo stesso file .md si renderizzava in modo visibilmente diverso su Reddit, GitHub, Stack Overflow e un blog Jekyll. Nel 2014, un gruppo di lavoro che includeva Jeff Atwood (Stack Overflow, Discourse), John MacFarlane (Pandoc) e ingegneri di GitHub, Reddit e Meteor ha prodotto una specifica rigorosa, inizialmente chiamata «Standard Markdown,» rinominata CommonMark dopo le obiezioni di Gruber. CommonMark pubblica sia prosa leggibile dagli esseri umani che una suite di test leggibili da una macchina con 600+ test sui casi limite; la versione attuale è 0.31.2 (gennaio 2024). GitHub, GitLab, Reddit, Stack Overflow, Discourse e decine di linguaggi di programmazione ora dichiarano la conformità.

Sintassi comune

Questa è la sintassi che funziona in quasi ogni variante di Markdown, la base pratica supportata da questo editor.

Cosa si vuole ottenereCome scriverlo
Intestazioneda # H1 a ###### H6
Grassetto / corsivo**bold** · *italic* · ***both***
Codice inline`code`
Blocco di codiceDelimitato da tre apici inversi; tag di linguaggio opzionale per l'evidenziazione della sintassi
Elenco non ordinato- item (o * o +)
Elenco ordinato1. first: i numeri effettivi di solito non importano
Link[text](https://example.com)
Immagine![alt text](image.jpg): il testo alternativo è importante per l'accessibilità
Citazione> quoted text
Riga orizzontale--- su una riga da sola

Due errori comuni: una singola nuova riga non crea un'interruzione di riga: è necessaria una riga vuota per un nuovo paragrafo, oppure due spazi finali prima della nuova riga (o in GFM, una barra rovesciata) per un'interruzione di riga forzata all'interno di un paragrafo. E Markdown è un superset di HTML: qualsiasi tag HTML inline passa all'output renderizzato, il che è occasionalmente utile e occasionalmente un rischio per la sicurezza.

GitHub Flavored Markdown e altre varianti

GFM è il superset di CommonMark di GitHub. Aggiunge tabelle (righe separate da pipe con una riga separatrice di trattini), elementi di lista con checkbox (- [ ] non selezionato, - [x] selezionato), testo barrato (~~text~~), rilevamento automatico degli URL e un filtro «HTML grezzo non consentito» che rimuove i tag pericolosi. GitHub stesso renderizza anche alcuni extra non previsti dalla specifica: shortcode emoji (:tada:), @mentions, autolink per issue #123, avvisi (> [!NOTE]), sezioni collassabili <details>, ma questi sono funzionalità di render di GitHub piuttosto che parti della specifica GFM.

Altre varianti che incontrerete:

Dove vive Markdown

Praticamente ovunque gli sviluppatori scrivano testo:

Markdown è anche un media type IETF registrato (text/markdown, RFC 7763, marzo 2016) con un parametro variant (GFM, CommonMark, MultiMarkdown, ecc.) in modo che i destinatari sappiano quale variante applicare. Estensioni di file comuni: .md di gran lunga la più popolare, poi .markdown, .mdown, .mkdn, .mkd.

Nota sul parser di questo editor

Questa pagina usa un parser Markdown semplificato che copre il sottoinsieme comune sopra indicato: intestazioni, grassetto e corsivo, link, immagini, codice delimitato, elenchi, citazioni e righe orizzontali. Non è un'implementazione completa di CommonMark o GFM e potrebbe non gestire ogni caso limite (elenchi profondamente annidati con punti elenco misti, continuazione di riga lazy, definizioni di riferimento link nell'intero documento). Per la conformità CommonMark mission-critical, un parser dedicato come marked.js, markdown-it o commonmark.js è la scelta giusta, e per il rendering in produzione di Markdown non attendibile, instradare l'output del parser attraverso un sanitizzatore come DOMPurify per prevenire XSS tramite HTML inline.

Quando si userebbe questo

Altre domande

Perché una singola interruzione di riga non crea una nuova riga?

Per scelta progettuale. Markdown unisce le singole nuove righe in un paragrafo continuo perché il formato è pensato per sembrare naturale come testo semplice: i lettori vanno a capo a larghezze arbitrarie nel loro editor senza interrompere l'output renderizzato. Per forzare un'interruzione di riga all'interno di un paragrafo, terminare una riga con due spazi finali (la convenzione originale di Markdown) o, in GFM, con una barra rovesciata. Per un nuovo paragrafo, lasciare una riga vuota tra i due.

Posso usare HTML all'interno di Markdown?

Sì, Markdown è un superset di HTML. I tag inline come <span>, <a>, <sub> e <sup> passano all'output renderizzato, e la sintassi Markdown al loro interno viene ancora riconosciuta. L'HTML a livello di blocco (<div>, <table>) deve essere separato dal Markdown circostante da righe vuote, e Markdown non viene elaborato all'interno del blocco. Usarlo per cose che Markdown non può esprimere nativamente: dimensioni delle immagini (<img width="…">), chip tastiera (<kbd>) o sezioni collassabili (<details>).

E le tabelle, le note a piè di pagina e le liste di attività?

Tutte e tre sono estensioni GFM, non parte della specifica Markdown originale. Le tabelle usano righe separate da pipe con una riga separatrice di trattini sottostante; il parser semplificato di questa pagina potrebbe renderizzarle come testo semplice. Le note a piè di pagina (riferimento [^1] e [^1]: definition) sono una funzionalità di render di GitHub al di fuori della specifica GFM vera e propria. Le liste di attività (- [ ] e - [x]) sono in GFM. Per la copertura completa di questi elementi, incollare il file in un renderer conforme a CommonMark+GFM come l'anteprima GitHub stessa.

Perché il testo alternativo è richiesto sulle immagini?

Perché il testo alternativo è ciò che i lettori di schermo annunciano quando incontrano l'immagine; è il principale aggancio di accessibilità per i lettori ipovedenti. ![image1.png](url) è Markdown tecnicamente valido ma inutile per un lettore di schermo; ![Annual revenue chart, 2020 to 2025](url) è genuinamente descrittivo. Omettere il testo alternativo o riempirlo con un nome file è uno degli errori di accessibilità più comuni nei contenuti web.

Vengono inviati dati a un server?

No. L'editor analizza Markdown in HTML nel browser, l'anteprima live viene aggiornata localmente e il salvataggio automatico usa il localStorage del browser: un piccolo archivio privato sul dispositivo. Nulla lascia la pagina. L'editor funziona offline una volta caricato.

Strumenti correlati

Convertitore da Markdown a HTML Anteprima Markdown gratuita online Generatore tabelle Markdown