L'evidenziazione sintattica statica è l'evidenziazione del codice che l'utente non può modificare. Include frammenti di codice, iterazioni e altro.
L'editor online non usa l'evidenziazione sintattica statica, perché l'utente può modificare il codice in qualsiasi momento. Se vuoi saperne di più su come gestiamo l'evidenziazione sintattica nell'editor online, consulta la documentazione sull'evidenziazione sintattica dinamica.
L'evidenziazione sintattica statica si basa sulla libreria highlightjs.
Quando aggiungi il supporto per il tuo linguaggio, hai tre opzioni:
Per abilitare il supporto di highlightjs per il linguaggio della tua track, devi modificare il file config.json della track.
All'interno del file config.json, aggiungi o imposta la chiave online_editor.highlightjs_language con l'identificatore di linguaggio highlightjs appropriato (che trovi nella documentazione).
{
"online_editor": {
"highlightjs_language": "csharp"
}
}
Per usare un plugin esistente, questo deve essere pubblicato su NPM. Se il plugin non è pubblicato su NPM, puoi procedere in uno di questi modi:
Il passo successivo è abilitare il plugin.
Per abilitare un plugin (che deve essere pubblicato su NPM), apri un topic sul forum chiedendoci di aggiungere il supporto per il plugin al sito. Noi (Exercism) creeremo poi una Pull Request che aggiunge il plugin al sito. Una volta che la PR è stata mergiata, puoi abilitare il supporto di highlightjs seguendo le istruzioni nella sezione Configurare la track.
Se vuoi creare un plugin, hai due possibilità per l'hosting:
Una volta che hai un repository, segui le istruzioni per contribuire a un linguaggio per implementare il plugin.
Dovrai poi pubblicare il plugin su NPM. Il passo successivo è abilitare il plugin.
La sintassi del tuo linguaggio assomiglia (molto) a quella di un altro linguaggio; in questo caso potresti usare l'evidenziazione sintattica di quel linguaggio per il tuo. Per farlo, configura la track in modo che usi l'identificatore di linguaggio highlightjs dell'altro linguaggio. Per maggiori informazioni, vedi la sezione Configurare la track.