# WYSIWYM

In informatica, WYSIWYM è un acronimo che indica l'espressione in lingua inglese What You See Is What You Mean ("quello che vedi è quello che intendi").

## Il paradigma

Si tratta di un paradigma per la modifica di un documento strutturato, in cui l'utente deve preoccuparsi soltanto dell'inserimento del contenuto del testo, delegando il suo aspetto finale ad uno o più fogli di stile separati; in pratica l'utente mira a visualizzare accuratamente i contenuti trasmessi anziché la formattazione effettiva ad esso associata. Da questo punto di vista il paradigma WYSIWYM si pone come alternativa antitetica al più noto paradigma WYSIWYG, in cui l'utente visualizza il risultato di un documento formattato così come apparirà sullo schermo o in stampa, senza mostrare il codice descrittivo sottostante.
Il vantaggio principale di questo sistema è la totale separazione tra contenuto e presentazione: gli utenti possono strutturare e scrivere il documento una sola volta, anziché alternarsi ripetutamente tra le due modalità di presentazione. Dal momento che il rendering della formattazione viene demandato al sistema di esportazione del documento, ciò consente di ottenere più facilmente un'impaginazione più coerente.

## Editor WYSIWYM

Uno dei primi editor ad aver indicato esplicitamente il paradigma WYSIWYM nella propria documentazione tecnica fu LyX, sebbene concetti simili possano essere ricondotti ad altri elaboratori di documenti antecedenti ad esso, come LaTeX, TPS (modellato su esperimenti pionieristici presso lo Xerox PARC) ed Adobe FrameMaker.
Ad esempio, in FrameMaker un documento può essere creato utilizzando due possibili viste di pagina: i tag di stile (chiamati "formati") e i contenuti di un documento risiedono nelle "body pages", mentre la struttura e la presentazione sono definite dalle "master pages". Più documenti di questo tipo possono essere collegati tra loro e programmati in modo condizionale per diverse applicazioni. Questi elementi possono quindi essere esportati nei tag corrispondenti che conservano in tutto o in parte le loro funzionalità in un linguaggio di markup come XML, HTML, CSS e PDF, oppure renderizzati direttamente per la presentazione finale in qualsiasi formato testuale, dal PostScript al testo non elaborato.
Un approccio diverso dalla filosofia WYSIWYM viene adottato da GNU TeXmacs, che combina la rappresentazione sullo schermo della struttura del documento con un rendering WYSIWYG pressoché fedele.

## Ambienti web

I principali fornitori di software hanno integrato le funzionalità di creazione di pagine Web nei loro popolari prodotti WYSIWYG per aumentarne l'utilità. Gli utenti possono creare una pagina Web HTML all'interno di un elaboratore di testi senza possedere alcuna conoscenza dell'HTML, ma come quasi tutti i markup Web scritti a mano o creati in un IDE, l'analisi automatica del formato sorgente di questi strumenti raramente tiene conto della distinzione tra il contenuto dell'HTML e la sua presentazione attraverso linguaggi come CSS durante l'output.
Tali generatori di codice HTML a presentazione fissa sono stati criticati principalmente a causa della pesantezza e della bassa qualità del loro codice; inoltre ci sono voci che sostengono modifiche al modello WYSIWYM.
Un esempio di editor di pagine Web WYSIWYM è WYMeditor. In questo editor la struttura dei documenti è definita dagli attributi di classe degli elementi HTML. Queste classi consentono anche di applicare l'aspetto finale del documento. Sebbene WYMeditor segua un modello WYSIWYM, il formato del documento è sempre HTML, quindi le nuove strutture da definire sono limitate a nuove classi e il documento finale sarà sempre costruito applicando elementi di presentazione a queste classi.
Altri CMS si stanno muovendo nella direzione di fornire un'interfaccia WYSIWYM per i propri utenti che modificano i contenuti. Uno di questi è Tiki Wiki CMS/Groupware (versione 7.0), il quale consente tale approccio mediante l'utilizzo del software di editing integrato CodeMirror.
Le pagine di modifica con wikitesto di Wikipedia rappresentano un ulteriore esempio di paradigma WYSIWYM in ambiente web.

## Varianti

YAFIYGI - Acronimo di You asked for it, you got it ("Hai chiesto questo, lo hai ottenuto", traducibile più liberamente come "avrai solo quello che chiedi"). La frase, in questo contesto, fu utilizzata la prima volta nel 1983 nel saggio Real Programmers Don't Use Pascal ("I veri programmatori non utilizzano il Pascal"), per descrivere l'editor testuale TECO. Nell'ambito dell'informatica si tratta di una filosofia contrapposta alla filosofia WYSIWYG.