Statikus szintaxiskiejmelés


A statikus szintaxiskiemelés olyan kód kiemelését jelenti, amit a felhasználó nem tud megváltoztatni. Ide tartoznak a kódrészletek, az iterációk és még sok más.

Note

Az online szerkesztő nem használ statikus szintaxiskiemelést, mert a felhasználó menet közben is módosíthatja a kódot. Ha többet szeretnél megtudni arról, hogyan kezeljük a szintaxiskiemelést az online szerkesztőben, nézd meg a dinamikus szintaxiskiemelés dokumentációját.

Megvalósítás

A statikus szintaxiskiemelést a highlightjs könyvtárral valósítjuk meg.

Amikor támogatást adsz a nyelvedhez, három lehetőséged van:

  1. A nyelvet a highlightjs alapból támogatja (azaz szerepel a támogatott nyelvek listáján). Ebben az esetben folytasd a kurzus beállítása szakasszal.
  2. A nyelvet egy létező highlightjs plugin támogatja. Ebben az esetben folytasd a létező plugin használata szakasszal.
  3. A nyelvet nem támogatja a highlightjs. Ilyenkor három lehetőséged van:
    1. Írj egy highlightjs plugint a nulláról, ahogy az új plugin létrehozása szakasz leírja.
    2. A nyelved szintaxisa (nagyon) hasonlít egy másik nyelv szintaxisához (például a Unison szintaxisa a Haskelléra), ilyenkor megfontolhatod, hogy annak a nyelvnek a szintaxiskiemelését használd a nyelvedhez. További információkért lásd a kurzus beállítása szakaszt.
    3. Ne legyen statikus szintaxiskiemelés.

A kurzus beállítása

Ahhoz, hogy a kurzusod nyelvéhez engedélyezd a highlightjs támogatását, módosítanod kell a kurzus config.json fájlját. A config.json fájlon belül add hozzá vagy állítsd be az online_editor.highlightjs_language kulcsot a megfelelő highlightjs nyelvazonosítóra (amelyet a dokumentációban találsz meg).

Példa

{
  "online_editor": {
    "highlightjs_language": "csharp"
  }
}

Létező plugin használata

Egy létező plugin használatához közzé kell tenni azt az NPM-en. Ha a plugin nincs közzétéve az NPM-en, a következőket teheted:

  1. Kérdezd meg a plugin szerzőjét, hogy szeretné-e közzétenni az NPM-en.
  2. Forkold a repositoryt, és tedd közzé te magad.
  3. Kérheted, hogy mi (az Exercism) forkoljuk a repositoryt, és mi tegyük közzé. Ehhez nyiss egy témát a fórumon, ahol ezt kéred.

A következő lépés a plugin engedélyezése.

A plugin engedélyezése

Egy plugin engedélyezéséhez (amelyet közzé kell tenni az NPM-en) nyiss egy témát a fórumon, amelyben kéred, hogy vegyük fel a plugin támogatását a weboldalra. Mi (az Exercism) ezután létrehozunk egy Pull Requestet, amely hozzáadja a plugint a weboldalhoz. Amint a PR-t beolvasztották, a kurzus beállítása szakasz utasításait követve engedélyezheted a highlightjs támogatását.

Új plugin létrehozása

Ha plugint szeretnél létrehozni, két lehetőséged van a hosztolásra:

  1. Hozz létre egy repositoryt a saját fiókodon, és tedd közzé te magad.
  2. Kérheted, hogy mi (az Exercism) hozzunk létre egy repositoryt, és mi tegyük közzé. Ehhez nyiss egy témát a fórumon, ahol ezt kéred.

Amint már van egy repód, kövesd a nyelvi közreműködési útmutatót a plugin megvalósításához.

Ezután közzé kell tenned a plugint az NPM-en. A következő lépés a plugin engedélyezése.

Más nyelv használata

A nyelved szintaxisa (nagyon) hasonlít egy másik nyelv szintaxisához, ilyenkor megfontolhatod, hogy annak a nyelvnek a szintaxiskiemelését használd a nyelvedhez. Ehhez állítsd be a kurzusban a másik nyelv highlightjs nyelvazonosítóját. További információkért lásd a kurzus beállítása szakaszt.