Syntax highlighting

funzionalità che evidenziano particolarità sintattiche del linguaggio

Con syntax highlighting si intende la caratteristica di un software, solitamente editor di testo, di visualizzare un testo con differenti colori e font in base a particolari regole sintattiche. Questa caratteristica, utilizzata soprattutto per il codice sorgente, facilità la scrittura in un linguaggio strutturato come un linguaggio di programmazione o un linguaggio di markup che dispone di una sintassi e di una grammatica precise.

Codice in linguaggio JavaScript evidenziato dall'editor Bluefish

Se il software che esegue il syntax highlighting supporta più linguaggi, è solitamente possibile specificare di quale linguaggio si tratti (C, LaTeX, HTML, ...) o l'editor può riconoscerlo automaticamente in base alla sintassi del file o alla sua estensione.

Codice in linguaggio HTML evidenziato dall'editor Bluefish

Quando si analizzano pagine e pagine di codice, il syntax hightlighting può migliorare notevolmente la leggibilità e la stesura del codice. Ad esempio, il programmatore può automaticamente saltare grosse sezioni di commenti o codice, in funzione di ciò che desidera.

Alcuni programmi permettono di personalizzare il syntax highlighting modificando le regoli già esistenti per le grammatiche dei linguaggi conosciuti oppure creando nuove grammatiche personalizzate. A volte il tipo di personalizzazioni si limita più semplicemente alla ridefinizione degli stili e dei colori da utilizzare per evidenziare il testo

Alcuni programmi possono inoltre esportare il codice evidenziato in un formato adatto alla stampa oppure in linguaggio HTML.

Esempio

Di seguito un frammento di codice PHP che il software ha automaticamente colorato in base alla sintassi:

//stampa la tabellina del 3
for ($i = 0; $i <= 10; $i++) {
    echo $i . " x 3 = " . $i * 3 . "<br/>\n";
}

In questo semplice esempio di listato in linguaggio PHP, il software MediaWiki ha evidenziato;

  • il commento al codice (in grigio),
  • la parola chiave for (in giallo),
  • le variabili presenti nel sorgente (in blu),
  • i numeri (in rosa),
  • le stringhe (in rosso),
  • l'escape del carattere "nuova linea" \n (in blu grassetto).
  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica