> For the complete documentation index, see [llms.txt](https://overleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://overleaf-pro.ayaka.space/latex/it/base-di-conoscenza/166-writing-markdown-in-latex-documents.md).

# Scrivere Markdown nei documenti LaTeX

## Introduzione

Per usare markdown in un documento LaTeX devi caricare il [`markdown` pacchetto](https://www.ctan.org/pkg/markdown) nel preambolo del documento:

```latex
\usepackage[settings]{markdown}
```

dove `[settings]` è un *insieme opzionale* di parametri usati per configurare o abilitare funzionalità specifiche del pacchetto. Fai riferimento a `markdown` pacchetto [documentazione](https://anorien.csc.warwick.ac.uk/mirrors/CTAN/macros/generic/markdown/markdown.html) per una [descrizione dei parametri del pacchetto (opzioni)](https://anorien.csc.warwick.ac.uk/mirrors/CTAN/macros/generic/markdown/markdown.html#options).

Questo articolo esaminerà brevemente sia *inline* il markdown scritto all'interno del documento sia l'importazione di *external* markdown contenuto in un file di testo.

* **Nota informativa**: In generale, l'uso di markdown all'interno di un documento LaTeX dovrebbe essere considerato un'opzione complementare e comoda per scrivere alcuni elementi del contenuto del documento, non una sintassi alternativa che sostituisca completamente LaTeX stesso.

## Uso di file markdown esterni

Usa il comando

```latex
\markdownInput{filename}
```

per includere il file markdown `filename`.

L'esempio seguente inserisce un file chiamato `example.md`. Usa il link sotto gli elenchi di codice per aprirli come progetto Overleaf:

**`main.tex`**

```latex
\documentclass{article}
\title{Using the markdown package}
\usepackage[smartEllipses]{markdown}
\begin{document}

\markdownInput{example.md}

\end{document}
```

**`example.md`**

```latex
%% example.md

# Sono un file markdown.

E posso fare *enfasi*.
## Con sottotitoli

> Le citazioni in blocco sono
> scritte in questo modo.
>
> Possono estendersi su più paragrafi,
> se vuoi.

Usa 3 trattini per un trattino lungo. Usa 2 trattini per
gli intervalli (ad es., "è tutto nei capitoli 12--14").
Tre puntini ... verranno convertiti in puntini di sospensione
(a condizione che tu includa l'opzione smartEllipses
nel preambolo). Unicode è supportato.
```

[Apri questi file come progetto Overleaf.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name\[]=main.tex\&snip\[]=%5Cdocumentclass%7Barticle%7D%0A%5Ctitle%7BUsing+the+markdown+package%7D%0A%5Cusepackage%5BsmartEllipses%5D%7Bmarkdown%7D%0A%5Cbegin%7Bdocument%7D%0A%0A%5CmarkdownInput%7Bexample.md%7D%0A%0A%5Cend%7Bdocument%7D\&snip_name\[]=example.md\&snip\[]=%25%25+example.md%0A%0A%23+I%27m+a+markdown+file.%0A%0AAnd+I+can+do+%2Aemphasis%2A.%0A%23%23+With+sub-headers%0A%0A%3E+Block+quotes+are%0A%3E+written+like+so.%0A%3E%0A%3E+They+can+span+multiple+paragraphs%2C%0A%3E+if+you+like.%0A%0AUse+3+dashes+for+an+em-dash.+Use+2+dashes+for+%0Aranges+%28ex.%2C+%22it%27s+all+in+chapters+12--14%22%29.+%0AThree+dots+...+will+be+converted+to+an+ellipsis+%0A%28provided+you+include+the+smartEllipses+option+%0Ain+your+preamble%29.+Unicode+is+supported.\&main_document=main.tex)

Questo esempio produce il seguente output:

![Grafico che mostra l'output del pacchetto markdown](/files/4148386557e2e449012b35ed433425789b61bb09)

## Uso di markdown in linea

Usa la `markdown` ambiente:

```latex
\begin{markdown}
...il tuo markdown
va qui...
\end{markdown}
```

per scrivere markdown in linea, come dimostra il prossimo esempio:

```latex
\documentclass{article}
\usepackage[hashEnumerators,smartEllipses]{markdown}
\begin{document}

Uso di markdown in linea:

\begin{markdown}
Un'intestazione h1
============

I paragrafi sono separati da una riga vuota.

2° paragrafo. *Corsivo*, **grassetto**, e `monospace`. Gli elenchi puntati
appaiono così:

* questo
* quello
* l'altro

> Le citazioni in blocco sono
> scritte in questo modo.
>
> Possono estendersi su più paragrafi,
> se vuoi.

Un'intestazione h2
------------

Ecco un elenco numerato (usa l'opzione `hashEnumerators` se vuoi usare i simboli #):

#. primo elemento
#. secondo elemento
#. terzo elemento

\end{markdown}
\end{document}
```

[Apri questo esempio in Overleaf.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Using+markdown\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5BhashEnumerators%2CsmartEllipses%5D%7Bmarkdown%7D%0A%5Cbegin%7Bdocument%7D%0A%0AUsing+inline+markdown%3A%0A%0A%5Cbegin%7Bmarkdown%7D%0AAn+h1+header%0A%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%0A%0AParagraphs+are+separated+by+a+blank+line.+%0A%0A2nd+paragraph.+%2AItalic%2A%2C+%2A%2Abold%2A%2A%2C+and+%60monospace%60.+Itemized+lists%0Alook+like%3A%0A%0A%2A+this+one%0A%2A+that+one%0A%2A+the+other+one%0A%0A%3E+Block+quotes+are%0A%3E+written+like+so.%0A%3E%0A%3E+They+can+span+multiple+paragraphs%2C%0A%3E+if+you+like.%0A%0AAn+h2+header%0A------------%0A%0AHere%27s+a+numbered+list+%28use+%60hashEnumerators%60+option+if+you+want+to+use+hashes%29%3A%0A%0A%23.+first+item%0A%23.+second+item%0A%23.+third+item%0A%0A%5Cend%7Bmarkdown%7D%0A%5Cend%7Bdocument%7D)

Questo esempio produce il seguente output:

![Esempio di markdown in linea impaginato in Overleaf](/files/41ed0e4937a99a1658749edf62ad26e2bee21761)

## Funzionalità e opzioni del pacchetto Markdown

Qui esploreremo brevemente alcune delle [funzionalità e opzioni](https://anorien.csc.warwick.ac.uk/mirrors/CTAN/macros/generic/markdown/markdown.html) fornite dal `markdown` pacchetto.

### Inclusione di codice nel markdown

Esistono due meccanismi per visualizzare frammenti di codice (blocchi di codice) all'interno del markdown:

* rientrando ogni riga del blocco di almeno quattro spazi o un tab, oppure
* usando i cosiddetti [blocchi di codice delimitati](#using-fenced-code-blocks)

#### Uso dell'indentazione per visualizzare blocchi di codice

L'esempio seguente usa 4, o più, caratteri di spazio all'inizio di ogni riga di codice—alcune righe usano 6, 8 o 10 caratteri di spazio a seconda della dimensione del rientro richiesta:

```latex
\documentclass{article}
\usepackage{markdown}
\begin{document}
Ecco alcuni frammenti di codice rientrati di almeno 4 caratteri di spazio.
\vspace{6mm}

\begin{markdown}

Ecco un frammento di C:

    /* Lasciami iterare ... */

    int i;
    for(i=0; i<10; i++)
    {
      do-something(i)
    }

Ecco un po' di HTML:

    <html>
      <head>
        <title>Titolo della pagina</title>
      </head>
      <body>
        <h1>Questo è un titolo</h1>
          <p>Questo è un paragrafo.</p>
      </body>
    </html>

\end{markdown}
\end{document}
```

[Apri questo esempio in Overleaf.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Using+markdown+code+snippets\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bmarkdown%7D%0A%5Cbegin%7Bdocument%7D%0AHere+are+some+code+fragments+indented+by+at+least+4+space+characters.%0A%5Cvspace%7B6mm%7D%0A%0A%5Cbegin%7Bmarkdown%7D%0A%0AHere+is+a+fragment+of+C%3A%0A%0A++++%2F%2A+Let+me+iterate+...+%2A%2F%0A%0A++++int+i%3B%0A++++for%28i%3D0%3B+i%3C10%3B+i%2B%2B%29%0A++++%7B%0A++++++do-something%28i%29%0A++++%7D%0A%0AHere+is+some+HTML%3A%0A%0A++++%3Chtml%3E%0A++++++%3Chead%3E%0A++++++++%3Ctitle%3EPage+Title%3C%2Ftitle%3E%0A++++++%3C%2Fhead%3E%0A++++++%3Cbody%3E%0A++++++++%3Ch1%3EThis+is+a+Heading%3C%2Fh1%3E%0A++++++++++%3Cp%3EThis+is+a+paragraph.%3C%2Fp%3E%0A++++++%3C%2Fbody%3E%0A++++%3C%2Fhtml%3E%0A%0A%5Cend%7Bmarkdown%7D%0A%5Cend%7Bdocument%7D)

Questo esempio produce il seguente output:

![Esempio di impaginazione di codice tramite markdown](/files/da0410c74f7d9a1c4a4e0cb4278e0b65be5e4715)

#### Uso di blocchi di codice delimitati

Un blocco di codice delimitato viene creato scrivendo sia

* tre backtick (` ``` `), oppure
* tre tilde (`~~~`)

nelle righe prima e dopo il blocco di codice. Usando questo metodo non devi rientrare alcuna riga ma devi usare l'opzione `fencedCode` nel preambolo:

```latex
\usepackage[fencedCode]{markdown}
```

Ecco un esempio che crea blocchi di codice delimitati usando 3 backtick (` ``` `):

````latex
\documentclass{article}
\usepackage[fencedCode]{markdown}
\begin{document}
\begin{markdown}

```
if (a > 3) {
    moveShip(5 * gravity, DOWN);
}
```

```
    <html>
      <head>
        <title>Titolo della pagina</title>
      </head>
      <body>
        <h1>Questo è un titolo</h1>
          <p>Questo è un paragrafo.</p>
      </body>
    </html>
```
\end{markdown}
\end{document}
````

[Apri questo esempio in Overleaf.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Using+markdown+fenced+code+blocks\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5BfencedCode%5D%7Bmarkdown%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Bmarkdown%7D%0A%0A%60%60%60%0Aif+%28a+%3E+3%29+%7B%0A++++moveShip%285+%2A+gravity%2C+DOWN%29%3B%0A%7D%0A%60%60%60%0A%0A%60%60%60%0A++++%3Chtml%3E%0A++++++%3Chead%3E%0A++++++++%3Ctitle%3EPage+Title%3C%2Ftitle%3E%0A++++++%3C%2Fhead%3E%0A++++++%3Cbody%3E%0A++++++++%3Ch1%3EThis+is+a+Heading%3C%2Fh1%3E%0A++++++++++%3Cp%3EThis+is+a+paragraph.%3C%2Fp%3E%0A++++++%3C%2Fbody%3E%0A++++%3C%2Fhtml%3E%0A%60%60%60%0A%5Cend%7Bmarkdown%7D%0A%5Cend%7Bdocument%7D)

Questo esempio produce il seguente output:

![Uso di blocchi di codice delimitati con il pacchetto markdown per LaTeX](/files/775ebc6a60c76c7464000c883746d7f7decf88ee)

#### Evidenziazione della sintassi

I blocchi di codice delimitati supportano l'evidenziazione della sintassi scrivendo il nome della lingua dopo il primo gruppo di backtick (`` ` ``). Come esempio, il blocco seguente viene identificato come Javascript scrivendo il primo gruppo di backtick come ` ``` js `:

````latex
``` js
if (a > 3) {
    moveShip(5 * gravity, DOWN);
}
```
````

Per LaTeX, il `minted` pacchetto può essere usato per l'evidenziazione della sintassi, come mostrato nel prossimo esempio che contiene del Javascript (` ``` js `) e HTML (` ``` html `):

````latex
\documentclass{article}
\usepackage{minted}
\usepackage[fencedCode]{markdown}
\begin{document}
\begin{markdown}

``` js
if (a > 3) {
    moveShip(5 * gravity, DOWN);
}
```

``` html
    <html>
      <head>
        <title>Titolo della pagina</title>
      </head>
      <body>
        <h1>Questo è un titolo</h1>
          <p>Questo è un paragrafo.</p>
      </body>
    </html>
```
\end{markdown}
\end{document}
````

[Apri questo esempio in Overleaf.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Using+markdown+fenced+code+blocks\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bminted%7D%0A%5Cusepackage%5BfencedCode%5D%7Bmarkdown%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Bmarkdown%7D%0A%0A%60%60%60+js%0Aif+%28a+%3E+3%29+%7B%0A++++moveShip%285+%2A+gravity%2C+DOWN%29%3B%0A%7D%0A%60%60%60%0A%0A%60%60%60+html%0A++++%3Chtml%3E%0A++++++%3Chead%3E%0A++++++++%3Ctitle%3EPage+Title%3C%2Ftitle%3E%0A++++++%3C%2Fhead%3E%0A++++++%3Cbody%3E%0A++++++++%3Ch1%3EThis+is+a+Heading%3C%2Fh1%3E%0A++++++++++%3Cp%3EThis+is+a+paragraph.%3C%2Fp%3E%0A++++++%3C%2Fbody%3E%0A++++%3C%2Fhtml%3E%0A%60%60%60%0A%5Cend%7Bmarkdown%7D%0A%5Cend%7Bdocument%7D)

Questo esempio produce il seguente output:

![Evidenziazione della sintassi con minted e markdown](/files/72ce97a5e59225771a5594550b43683ee4b5b816)

### Elenchi

Gli esempi precedenti [mostrano la creazione di elenchi non ordinati](#using-inline-markdown) nel markdown usando il `*` carattere. Gli elenchi ordinati possono essere creati usando il `#` carattere se l'opzione `hashEnumerators` è stata specificata:

```latex
\usepackage[hashEnumerators]{markdown}
```

È anche possibile creare elenchi annidati, come dimostrato nel prossimo esempio:

```latex
\documentclass{article}
\usepackage[hashEnumerators]{markdown}
\begin{document}
\begin{markdown}
Ecco un elenco numerato che contiene un elenco annidato:

#. Per prima cosa, procurati questi ingredienti:

      * carote
      * sedano
      * lenticchie

#. Fai bollire un po' d'acqua.

#. Metti tutto nella pentola e segui questo algoritmo:

        trova un cucchiaio di legno
        scopri la pentola
        mescola
        copri la pentola
        bilancia precariamente il cucchiaio di legno sul manico della pentola
        aspetta 10 minuti
        vai al primo passaggio (o spegni il fornello quando hai finito)

    Non urtare il cucchiaio di legno o cadrà.
\end{markdown}
\end{document}
```

[Apri questo esempio in Overleaf.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Creating+a+nested+list+in+markdown\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5BhashEnumerators%5D%7Bmarkdown%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Bmarkdown%7D%0AHere+is+a+numbered+list+that+contains+a+nested+list%3A%0A%0A%23.+First%2C+get+these+ingredients%3A%0A%0A++++++%2A+carrots%0A++++++%2A+celery%0A++++++%2A+lentils%0A%0A%23.+Boil+some+water.%0A%0A%23.+Dump+everything+in+the+pot+and+follow+this+algorithm%3A%0A%0A++++++++find+wooden+spoon%0A++++++++uncover+pot%0A++++++++stir%0A++++++++cover+pot%0A++++++++balance+wooden+spoon+precariously+on+pot+handle%0A++++++++wait+10+minutes%0A++++++++goto+first+step+%28or+shut+off+burner+when+done%29%0A%0A++++Do+not+bump+wooden+spoon+or+it+will+fall.%0A%5Cend%7Bmarkdown%7D%0A%5Cend%7Bdocument%7D)

Questo esempio produce il seguente output:

![Creazione di elenchi numerati usando il pacchetto markdown di LaTeX](/files/8293a28fc93c1750da724273aff2bee3c32b90f6)

### Inclusione di LaTeX all'interno di markdown

Se abiliti il `ibrido` puoi mescolare codice LaTeX in Markdown!

```latex
\documentclass{article}
\usepackage[hybrid]{markdown}
\begin{document}

\begin{markdown}
Le equazioni matematiche in linea possono essere create così: $\omega = d\phi / dt$.
La matematica visualizzata può essere scritta come:

\begin{equation}
I = \int \rho R^{2} dV
\end{equation}

\end{markdown}
\end{document}
```

[Apri questo esempio in Overleaf.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Using+LaTeX+code+in+markdown\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bhybrid%5D%7Bmarkdown%7D%0A%5Cbegin%7Bdocument%7D%0A%0A%5Cbegin%7Bmarkdown%7D%0AInline+math+equations+can+be+created+like+this%3A+%24%5Comega+%3D+d%5Cphi+%2F+dt%24.+%0ADisplay+math+can+be+written+as%3A%0A%0A%5Cbegin%7Bequation%7D%0AI+%3D+%5Cint+%5Crho+R%5E%7B2%7D+dV%0A%5Cend%7Bequation%7D%0A%0A%5Cend%7Bmarkdown%7D%0A%5Cend%7Bdocument%7D)

Questo esempio produce il seguente output:

![Uso del codice LaTeX nel markdown](/files/2ff7eed9ff77fd3909e7a48457a4443c2253172f)

### Inclusione di immagini

* **Nota**: L'esempio successivo usa un file grafico (`example-image.pdf`) fornito dal `pacchetto mwe` I file grafici sono distribuiti da TeX Live e quindi memorizzati sui server di Overleaf, rendendoli disponibili come segnaposto per immagini, come nell'esempio qui sotto.

Le immagini possono essere incluse nel markdown scrivendo un markup nel seguente formato:

```latex
![testo alternativo](nome-file "didascalia dell'immagine")
```

Speriamo che i nomi dei parametri `testo alternativo`, `nome-file` e `"didascalia dell'immagine"` descrivano ciò che fanno. Ecco un esempio per mostrarli:

```latex
\documentclass{article}
\usepackage[hybrid]{markdown}
% Il pacchetto mwe fornisce immagini di esempio. Caricarlo è
% non essenziale perché quelle immagini sono nel percorso di ricerca di LaTeX.
% Qui lo carichiamo per chiarezza in questo esempio.
\usepackage{mwe}
\begin{document}
\begin{markdown}
Questo esempio mostra come importare un file grafico. Qui stiamo usando un'
immagine di esempio fornita dal pacchetto `mwe`.

% Usa \setkeys{Gin} se devi cambiare la dimensione di visualizzazione di un'immagine

\setkeys{Gin}{width=.5\linewidth}
![Questo è il testo alternativo per descrivere la mia immagine.](example-image.jpg "Un'immagine di esempio fornita dal pacchetto \texttt{mwe}.")
\end{markdown}
\end{document}
```

[Apri questo esempio su Overleaf.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Using+images+in+markdown\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bhybrid%5D%7Bmarkdown%7D%0A%25+The+mwe+package+provides+example+images.+Loading+it+is%0A%25+not+essential+because+those+images+are+in+LaTeX%27s+search+path.+%0A%25+Here%2C+we+load+it+for+clarity+in+this+example.%0A%5Cusepackage%7Bmwe%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Bmarkdown%7D%0AThis+example+shows+how+to+import+a+graphics+file.+Here+we+are+using+an%0Aexample+image+provided+by+the+%60mwe%60+package.%0A%0A%25+Use+%5Csetkeys%7BGin%7D+if+you+need+to+change+an+image%27s+display+size%0A%0A%5Csetkeys%7BGin%7D%7Bwidth%3D.5%5Clinewidth%7D%0A%21%5BThis+is+alt+text+to+describe+my+image.%5D%28example-image.jpg+%22An+example+image+provided+by+the+%5Ctexttt%7Bmwe%7D+package.%22%29%0A%5Cend%7Bmarkdown%7D%0A%5Cend%7Bdocument%7D)

Questo esempio produce il seguente output:

![Mostra come importare immagini nel markdown](/files/59ad1dfe0c5ca4d646488257ed90e838c232f2f5)

#### Nota sulla larghezza dell'immagine

Come la maggior parte dei pacchetti, `markdown` carica altri pacchetti, incluso [`keyval`](https://ctan.org/pkg/keyval?lang=en) e [`graphicx`](https://ctan.org/pkg/graphicx?lang=en), per utilizzare i comandi e le funzionalità che forniscono. Qui, la larghezza dell'immagine viene impostata usando il `\setkeys` comando, fornito da `keyvals`. `Gin` è una "famiglia" di chiavi definita da `graphicx` pacchetto.

* **Nota**: Poiché un comando LaTeX, qui `\setkeys`, viene usato *all'interno di* il `markdown` ambiente, l'opzione `ibrido` del pacchetto markdown è necessaria.

## Letture aggiuntive

Overleaf ha pubblicato altri articoli sull'uso di markdown:

* [Come scrivere in Markdown su Overleaf](/latex/it/articoli-approfonditi/30-how-to-write-in-markdown-on-overleaf.md)
* [Markdown in LaTeX con stile](/latex/it/articoli-approfonditi/32-markdown-into-latex-with-style.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://overleaf-pro.ayaka.space/latex/it/base-di-conoscenza/166-writing-markdown-in-latex-documents.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
