Il Markdown è un bellissimo linguaggio di markup che in maniera molto rapida ci permette di definire lo stile con cui un documento apparirà usando un semplice documento di testo.

Esempi di stile sono il Grassetto, una lista puntata, una testata.

Linguaggio relativamente giovane, 10 anni non sono tanti, il Markdown è pensato per scrivere velocemente un testo e poterlo esportare in formato HTML ed altri formati. Viene solitamente usato per scrivere il file README all’ interno dei programmi, e per scrivere messaggi all’ interno di alcuni forum.

La particolarità del Markdown, è che come già detto non abbiamo bisogno di nessun editor particolare per usarlo (come potrebbe essere con HTML) e ci permette di formattare un testo usando dei caratteri particolari qui e là come il cancelletto (#) o il backtick (`).

markdown

I siti che fanno più uso di questo linguaggio sono StackOverflow (un sito di domande e risposte), e GitHub (Un sistema git principalmente usato per progetti opensource).
All’ inizio potrebbe sembrare ostico, ma col tempo vedrete che ci prenderete la mano!

[info_box]Puoi vedere gli effetti di quello che scrivi usando un sito come StackEdit: ti consiglio di usarlo mentre leggi l’articolo.[/info_box]

Come formattare il testo con Markdown

Grassetto, Corsivo, Links e Immagini

Per il grassetto e il corsivo, basta usare degli asterischi o degli underscore:

**testo in grassetto** oppure __testo in grassetto__

Per il corsivo:

*testo in corsivo* oppure _testo in corsivo_

Per i links invece si utilizza questa sintassi:

[Informaticalab](http://informaticalab.com)

All’ interno delle parentesi quadre il titolo del link, in quelle tonde l’ indirizzo a cui punta.

Per le immagini la sintassi è simile:

![InformaticaLab Logo](http://blog.informaticalab.com/wp-content/uploads/2013/04/informaticalab400.png)

Per le immagini, si può anche usare questa sintassi alternativa:

![InformaticaLab Logo] [inflablogo]

E poi alla fine della pagina per esempio, definire tutti i links alle immagini:

[inflablogo]: http://blog.informaticalab.com/wp-content/uploads/2013/04/informaticalab400.png

 

[note_box]Per esercizio potreste cercare di riscrivere questo articolo in markdown![/note_box]

 

Liste

Anche in Markdown è possibile creare liste puntate e liste numerate.

Per le liste puntate possiamo usare sia l’asterisco che il simbolo meno:

Questa è una lista ordinata (notare l' a capo dopo questa riga):

 * Primo elemento
 * Secondo elemento

Oppure va bene anche:

 - Primo elemento
 - Secondo elemento
   - Primo elemento del secondo
   - Secondo elemento del secondo

Alcune cose da notare:

  • L’a capo dopo il paragrafo
  • Lo spazio prima e dopo l’asterisco
  • Per sotto liste, bisogna aggiungere due spazi invece che uno

Per le liste numerate, la sintassi è simile:

Lista Numerata:

 1. Primo elemento
 2. Secondo elemento

Testate

E’ possibile avere diversi livelli di testata, variando il numero di cancelletto (#) davanti al titolo.

Ad esempio:

# Testata 1 - La più grande
## Testata 2 - Più piccola della uno
### Testata 3
...

Codice

E’ possibile avere del codice identato in tre diversi modi:
E’ possibile aggiungere del codice in linea, tipo questo:

`String hw = "Hello, World";`

inserendolo fra simboli backtick.
Se però abbiamo bisogno di incollare più righe, possiamo identare il codice di un tab (notare l’ a capo):

    String hw = "Hello, World";
    System.out.println(hw);

Oppure, possiamo delimitare il blocco di codice usando tre backtick in modo da evitare l’identazione (qui non serve l’ a capo!):

```
String hw = "Hello, World";
System.out.println(hw);
```

Extra

Per creare una linea orizzontale (in html, un <hr>), ci basta usare tre meno:

----

Per inserire del testo citato, si utilizza il simbolo del maggiore:

> Questo testo apparirà in un riquadro.

Dove trovare il Markdown

Come già anticipato all’ inizio, questo linguaggio è conosciuto per essere utilizzato da siti come Github e StackOverflow.

Entrambi però, utilizzano il markdown di base, più alcuni tag varianti tipici dei siti. Ad esempio su Github possiamo citare qualcuno (anche su StackOverflow) anteponendo il simbolo chiocciola @ seguito dal nome della persona che vogliamo citare:

@FedericoPonzi

Inoltre, Github supporta anche gli Emoji. E’ possibile avere una lista di markdown propri di Github da questo link.
Per quanto riguarda StackOverflow, vi rimando a questa pagina.

Personalmente è da un po’ che ho scelto di prendere appunti in classe usando l’ ottima applicazione StackEdit che permette di salvare e gestire i miei testi direttamente nel browser, di condividerli ed esporartli in vari modi.

Se volete avere una preview di tutti i markup che ho citato nell’ articolo, vi consiglio di copiarlo ed incollarlo per intero su StackEdit.

markdown-cheatsheet