Syntax highlighting: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
SieBot (discussione | contributi)
m Altri progetti: Aggiunto il parametro "Preposizione" nel template "Interprogetto"
 
(29 versioni intermedie di 24 utenti non mostrate)
Riga 1:
{{F|programmazione|settembre 2014}}{{U|Brace matching|informatica|novembre 2023|verso=da}}
Con '''syntax highlighting''' si intende la caratteristica di alcuni [[editor di testo]] di visualizzare il testo - specialmente [[codice sorgente]] - con differenti colori e [[font]] in base alla categoria dei termini. Questa caratteristica facilità la scrittura in un linguaggio strutturato come un [[linguaggio di programmazione]] o un [[linguaggio di markup]] dove sia gli errori di struttura che di [[sintassi]] sono visualmente distinguibili.
[[File:Listato esempio javascript.png|thumb|upright=1.6|Codice in linguaggio [[JavaScript]] evidenziato dall'editor [[Bluefish]]]]
Con '''''syntax highlighting''''' o '''colorazione della sintassi''' si intende la caratteristica di un [[software]], solitamente [[editor di testo]], di visualizzare un testo con differenti colori e [[tipi di carattere]] in base a particolari regole [[sintattiche]]. Questa caratteristica, utilizzata soprattutto per il [[codice sorgente]], facilita 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.<ref name="docs_Work">{{Cita web |titolo=Working with Syntax Highlighting |accesso=13 maggio 2020 |url=https://docs.kde.org/stable5/en/applications/katepart/highlight.html |lingua=en |dataarchivio=7 giugno 2020 |urlarchivio=https://web.archive.org/web/20200607075731/https://docs.kde.org/stable5/en/applications/katepart/highlight.html |urlmorto=sì }}</ref><ref name="ultr_Ultr">{{Cita web |titolo=UltraEdit text editor code and syntax highlighting |accesso=13 maggio 2020 |url= https://www.ultraedit.com/wiki/Syntax_highlighting }}</ref>
 
L'utenteSe puòil specificaresoftware che esegue il linguaggio''syntax delhighlighting'' testosupporta più linguaggi, comeè solitamente possibile specificare di quale linguaggio si tratti ([[C (linguaggio)|C]], [[LaTeX]], [[HTML]], ecc...) o l'editor può riconoscerlo automaticamente in base alla sintassi del file o alla sua estensione.
 
[[File:Html-source-code3.png|thumb|upright=1.6|Codice in linguaggio [[HTML]] evidenziato dall'editor [[Bluefish]] ]]
Alcuni editor possono anche esportare il color markup in un formato adatto alla stampa o ad essere importato in un software di word-processing e/o formattazione testo.
Quando si analizzano pagine e pagine di codice, questa funzionalità 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 la colorazione della sintassi modificando le regole 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.
==Esempio==
Di seguito un frammento di codice [[C++]] che l'editor ha automaticamente colorato in base alla sintassi:
 
Alcuni programmi possono inoltre esportare il codice evidenziato in un formato adatto alla stampa oppure in linguaggio [[HTML]].
<source lang="Cpp">
 
// Allocate all the windows
== Esempio ==
for (int i = 0; i < max; i++) {
Di seguito un frammento di codice [[C++PHP]] che l'editoril software [[MediaWiki]] ha automaticamente colorato in base alla sintassi:
pWins[i] = new Window();
 
<syntaxhighlight lang="php" line="1">
//stampa la tabellina del 3
for (int $i = 0; $i <= max10; $i++) {
echo $i . " x 3 = " . $i * 3 . "<br />\n";
}
</syntaxhighlight>
</source>
 
In questo semplice esempio di listato in linguaggio [[PHP]], il software ha evidenziato:
* in verde chiaro i commenti esplicativi,
* in verde grassetto le parole chiave (come {{Codice|codice=for|linguaggio=PHP}} ed {{Codice|codice=echo|linguaggio=PHP}}),
* in blu le variabili (come {{Codice|codice=$i|linguaggio=PHP}}),
* in grigio i numeri,
* in rosso le stringhe (come {{Codice|codice=" x 3 = "|linguaggio=PHP}}),
* in arancione grassetto gli ''escape'' dei caratteri speciali (come <code>\n</code> per ''a capo''),
* in nero gli altri caratteri (segni di punteggiatura, [[Operatore (informatica)|operatori]], [[parentesi]]).
 
== Note ==
<references/>
 
== Voci correlate ==
In questo esempio, l'editor ha riconosciuto le chiavi <tt>for</tt>, <tt>int</tt> e <tt>new</tt>. Riconosce i nomi di variabile <tt>i</tt>, <tt>pWins</tt> e <tt>max</tt> colorandole di conseguenza. Il commento prima del codice è stato colorato in modo da essere distinto dal codice. Quando si guardano pagine e pagine di codice, il syntax hightlighting migliora notevolmente la leggibilità e il contesto del testo. Il lettore può automaticamente ignorare grosse sezioni di commenti o codice, in funzione di ciò che desidera.
*[[Editor di testo]]
*[[Brace matching]]
 
== Altri progetti ==
La maggior parte degli editor con syntax highlighting permettono di personalizzare tale strumento, dando differenti colori e stili di testo a svariate categorie sintattiche. I programmatori spesso personalizzano pesantemente le impostazioni in modo da mostrare in modo più utile possibile le informazioni e cercando di non rendere il codice di difficile lettura.
{{Interprogetto|preposizione=sul}}
 
{{Portale|informatica}}
[[Categoria:Strumenti di sviluppo]]
 
[[Categoria:StrumentiAmbienti di sviluppo]]
[[de:Syntaxhervorhebung]]
[[en:Syntax highlighting]]
[[es:Coloreado de sintaxis]]
[[fi:Koodin väritys]]
[[fr:Coloration syntaxique]]
[[ja:シンタックスハイライト]]
[[nl:Syntaxkleuring]]
[[pl:Podświetlanie składni]]
[[ru:Подсветка синтаксиса]]
[[zh:語法高亮度顯示]]