# Spazio (punteggiatura)

Segni di punteggiatura :
| apostrofo | ' ’ |
| barra | / ⁄ |
| due punti | : |
| lineetta ondulata | ⁓ |
| lineetta | ‒ – — ― |
| parentesi | ( ) [ ] { } ⟨ ⟩ < > |
| punti di sospensione | … ... |
| punto e virgola | ; |
| punto esclamativo | ! ¡ |
| punto fermo | . |
| punto interrogativo | ? ¿ |
| punto mediano | · |
| spazio | |
| tratto d'unione | ‐ |
| virgola | , |
| virgolette | « » ‘ ’ “ ” |
Segni tipografici :
| asterisco | * |
| asterismo | ⁂ |
| barra rovesciata | \ |
| barra verticale | | ‖ ¦ |
| cancelletto | # |
| chiocciola o a commerciale | @ |
| circonflesso | ^ |
| copyright | © ℗ |
| e commerciale (et) | & |
| foglia aldina | ☙ |
| grado | ° |
| indicatore ordinale | º ª |
| punto esclarrogativo | ‽ ⸘ |
| ironia | ⸮ |
| losanga | ◊ |
| manina | ☞ ☟ ☜ |
| marchio | ™ ℠ ® |
| meno | − |
| nota | ※ |
| numero | № |
| obelisco | † ‡ |
| obelo | ÷ |
| paragrafo | § |
| per | × |
| perciò | ∴ |
| per cento/mille/punto base | % ‰ ‱ |
| piede di mosca | ¶ |
| più | + |
| primo | ′ ″ ‴ |
| punto elenco | • |
| tilde | ~ |
| tombstone | ∎ |
| trattino basso | _ |
| trattino-meno | - |
| uguale | = |
Simboli monetari :
ƒ ​₣ ​
ℳ ​₥ ​
Ortografia · Segno diacritico :
V · D · M :
Lo spazio (" ") è, in ortografia, qualunque spazio vuoto utilizzato per separare sezioni di testo scritto. Convenzionalmente indica però l'area vuota fra parola e parola. Le convenzioni sulla presenza e la dimensione degli spazi tra parole variano da lingua a lingua. Molti e differenti "caratteri spazio" sono disponibili nei set informatici per rappresentare spazi di differenti dimensioni e significato.

## Linguaggi naturali

L'italiano moderno usa lo spazio per separare le parole. Le convenzioni variano riguardo alla spaziatura del punto fermo, del punto esclamativo, del punto interrogativo e della lineetta (vedi sotto). Non tutte le lingue usano gli spazi tra le parole. Gli spazi non venivano usati in latino fino al VII – IX secolo circa. L'antico ebraico e l'arabo fanno uso di spazi, in parte per compensare la perdita di chiarezza dovuta all'eliminazione delle vocali. Tradizionalmente tutte le lingue CJK non hanno spazi: il cinese ed il giapponese moderni (eccetto, per il giapponese, quando viene scritto con pochi o nessun kanji) non ne fanno uso, ma il coreano moderno usa gli spazi.

## Spazi e punteggiatura

Nella tipografia più raffinata sono previsti spazi contenuti di correzione per evitare un troppo stretto contatto fra i segni d'interpunzione e le lettere. Ciò avveniva in Italia ancora in pieno Ottocento e a tale norma s'adeguano tuttora i francesi. Nella tipografia italiana comunemente non vi si ricorre tuttavia più (malgrado se ne avverta l'esigenza con alcune lettere e numeri cardinali corsivi quando siano immediatamente seguiti da una parentesi chiusa) e quindi non si lascia spazio in nessuno di questi casi, con l'eccezione delle lineette.

## Utilizzo informatico

Nella sintassi dei linguaggi di programmazione gli spazi vengono spesso usati per separare in maniera esplicita i token. Oltre a questo utilizzo per il resto gli spazi e gli altri caratteri non visibili (newline, tab, ecc.) sono normalmente ignorati dai moderni linguaggi di programmazione. Fanno eccezione l'Haskell, l'ABC ed il Python, che usano il numero di spazi nella indentazione per indicare l'inizio di un blocco ed il linguaggio di programmazione esoterico Whitespace nel quale gli spazi sono l'unico elemento sintatticamente significativo.
Gli editor di testo, la videoscrittura, il software di desktop publishing differiscono nel modo di visualizzare lo spazio sullo schermo e su come mostrano gli spazi alla fine delle linee a seconda della dimensione dello schermo o delle colonne. In alcuni casi gli spazi vengono rappresentanti semplicemente da uno spazio vuoto, in altri potrebbe venir usato un punto mediano o altri simboli.
Molti caratteri differenti (descritti sotto) potrebbero essere usati per produrre degli spazi e dei "non-caratteri" funzioni (quali i margini e le regolazioni del tabulatore) possono anche interessare lo spazio.

## Caratteri spazio e tipografia digitale

Nella Codifica di caratteri informatica lo spazio per uso generale è il carattere Unicode U+0020 (32 in decimale). Una volta visualizzato, spesso è considerato insignificante quando compare all'estremità di una linea di testo o quando è parte di una sequenza di caratteri non visibili, perciò può essere omesso o "collassato" in tali circostanze.
Nelle prove di lettura (in inglese proofreading), solo gli spazi em ed en sono rappresentati con questo carattere (in inglese sono denominati un em-quad o un en-quad), mentre gli altri tipi di spazio sono rappresentati con un segno numerico (#).
Lo spazio unificatore, U+00A0 (160 decimal), viene visualizzato come lo spazio normale ma è non collassabile. È anche usato per prevenire l'andata a capo delle righe e per il testo indentato anche se alcune authority del World Wide Web ne scoraggiano l'uso per questi scopi.
Una lineetta em può essere anche seguita da un hair space, U+200A (8202 decimal). Questo tipo di spazio è più stretto di uno spazio normale ed è usato raramente da solo. Può essere scritto in HTML usando l'entity. Sfortunatamente veramente pochi user agent sono in grado di visualizzare l'hair space correttamente: in molti casi il risultato è un simbolo differente o un punto interrogativo a schermo, in relazione al font usato e alle capacità di visualizzazione.
Spazio normale rispetto all'hair space :
| Spazio normale | sinistra destra | sinistra destra |
| Spazio normale con un trattino em | sinistra — destra | sinistra — destra |
| Hair space con un trattino em | sinistra—destra | sinistra—destra |
| Nessuno spazio e un trattino em | sinistra—destra | sinistra—destra |
L'Unicode definisce molti altri caratteri spazio con specifiche caratteristiche di semantica e di visualizzazione come mostrato nella tabella presente sotto. A seconda del browser e del font usato per visualizzare la tabella alcuni spazi potrebbero non essere resi in maniera corretta:
Caratteri spazio definiti in Unicode :
| Codice | Senza a capo | Valore HTML | Nome | In Block | Visualizzazione | Descrizione |
| U+0020 | | &#x20; &#32; | Spazio | Basic Latin | ] [ | Spazio normale, uguale al carattere ASCII 0x20 |
| U+00A0 | ✓ | &nbsp; | Spazio No-Break | Latin-1 Supplement | ] [ | Identico al U+0020, ma non sul punto al quale la linea deve essere spezzata |
| U+1680 | | | Marcatore di spazio Ogham | Ogham | ] [ | Usato per la separazione interparola nei testi Ogham. Normalmente una linea verticale in un testo verticale o una linea orizzontale in un testo orizzontale, ma potrebbe essere uno spazio vuoto nei font "stemless". Richiede un font Ogham. |
| U+2002 | | &ensp; &#x02002; &#8194; | Spazio En, o Nut | Punteggiatura | ] [ | Largo un en (metà di un em) |
| U+2003 | | &emsp; &#x02003; &#8195; | Spazio Em, o Mutton | Punteggiatura | ] [ | Largo un em |
| U+2004 | | &#x02004; &#8196; | Spazio Three-Per-Em, o spazio spesso | Punteggiatura | ] [ | Un terzo di uno spazio em |
| U+2005 | | &#x02005; &#8197; | Spazio Four-Per-Em, o spazio medio | Punteggiatura | ] [ | Un quarto della larghezza em |
| U+2006 | | &#x02006; &#8198; | Spazio Six-Per-Em | Punteggiatura | ] [ | Un sesto della larghezza em. Nella tipografia elettronica qualche volta viene equiparato al U+2009. |
| U+2007 | ✓ | &#x02007; &#8199; | Spazio figurato (Figure Space) | Punteggiatura | ] [ | Nei font con cifre monospazio è uguale alla larghezza di una cifra |
| U+2008 | | &#x02008; &#8200; | Spazio punteggiatura | Punteggiatura | ] [ | È largo come una punteggiatura stretta del font |
| U+2009 | | &thinsp; &#x02009; &#8201; | Spazio sottile | Punteggiatura | ] [ | Un quinto (talvolta un sesto) della larghezza di un em |
| U+200A | | &#x0200A; &#8202; | Hair space | Punteggiatura | ] [ | Sottile come uno spazio sottile |
| U+200B | | &ZeroWidthSpace; &#x0200B; &#8203; | Spazio a larghezza zero | Punteggiatura | ][ | Usato per indicare la separazione delle parole ai sistemi di trattamento del testo quando si usano degli script che non utilizzano spazi visibili; normalmente la separazione non è visibile, ma può essere espansa nei passaggi che vengono giustificati. Nelle pagine HTML può essere usato per spezzare le linee in parole lunghe o come sostituto per il tag <wbr> il cui uso è stato deprecato fino all'avvento dell'HTML5. In ogni caso non è supportato da tutti i web browser, in particolare da Internet Explorer). |
| U+202F | ✓ | | Spazio No-Break stretto | Punteggiatura | ] [ | Simile allo spazio No-Break U+00A0 |
| U+205F | | | Spazio medio matematico | Punteggiatura | ] [ | Usato nelle formule matematiche |
| U+2060 | ✓ | | Word Joiner | Punteggiatura | ][ | Identico al U+200B, ma non sul punto al quale la linea deve essere spezzata. Introdotto nel Unicode 3.2 per sostituire "lo spazio di larghezza zero no-break" (carattere U+FEFF) il cui uso era deprecato. |
| U+3000 | | | Spazio ideografico | Simbolo e punteggiatura per lingue CJK | ] [ | Largo quanto la cella di un carattere CJK |
| U+FEFF | ✓ | | Spazio di larghezza zero no-break = Byte Order Mark (BOM) | Arabic Presentation Forms-B | ][ | Usato principalmente come carattere di Byte Order Mark. Usato come indicazione di non-breaking, l'uso è deprecato dall'Unicode 3.2. Usare al suo posto l'U+2060. |
L'Unicode fornisce anche alcuni caratteri visibili da utilizzare quando è necessario un "simbolo di controllo" del blocco di testo: il simbolo per lo spazio ␠ (U+2420), il simbolo vuoto ␢ (U+2422), e l'Open Box ␣ (U+2423).

### Caratteri spazio nei linguaggi di markup

I caratteri spazio che compaiono in posizioni illogiche all'interno dell'elemento da cui iniziano le modifiche sia per l'XML che per l'HTML sono generalmente ignorati dai processor di questi linguaggi di markup. Per esempio, gli spazi che compaiono da qualsiasi lato dell'elemento "=" che separa un nome di attributo dal relativo valore non hanno effetto sull'interpretazione del documento. Gli elementi al termine dei tag possono contenere degli spazi "trascinati" e gli elementi vuoti XML possono contenere gli spazi prima del "/>".
Nei valori di attributo del XML, le sequenze di spazi sono trattate come un singolo spazio quando il documento è letto da un parser. Gli spazi contenuti nell'elemento XML così trattati non vengono modificati dall'analizzatore, ma l'applicazione che riceve le informazioni dall'analizzatore può scegliere di applicare delle regole simili al contenuto dell'elemento. L'autore di un documento XML può usare l'attributo xml:space="preserve" o un elemento per forzare il parser a scoraggiare l'applicazione downstream dall'alterare gli spazi contenuti nell'elemento.
Nella maggior parte degli elementi del HTML, una sequenza dei caratteri spazio è trattata come un "inter-word separator", il che può manifestarsi come un singolo carattere bianco quando il testo viene reso in un linguaggio che inserisce normalmente tale spazio fra le parole. Il rendering è richiesto per applicare un trattamento più letterale degli spazi in determinati elementi, quali pre ed ogni elemento per cui il CSS viene usato per applicare un trattamento degli spazi simile a quello del pre. In tali elementi, i caratteri bianchi non "collasseranno" nei separatori interparola.
Sia in XML che in HTML il non-breaking space non è trattato come uno spazio e quindi non è soggetto alle regole precedenti.

## Tipologie di spaziature

Fra le spaziature più usate si ricordano:
* Uno spazio (spaziatura francese): è utilizzato nei paesi di lingua con alfabeto latino di tipo ISO ed è tipico fra l'altro dei browser web (soprattutto nel world wide web);
* Doppio spazio (spaziatura inglese): è utilizzato in macchine a caratteri con spaziatura fissa (macchina da scrivere);
* Spazio allargato (circa uno spazio e un terzo): è utilizzato perlopiù nei sistemi Linotype e Tex;
* Nessuno spazio: è utilizzato negli hashtag;