Siirry sisältöön

CLI

shikiphp sisältää pienen komentorivityökalun kohteessa bin/shikiphp (asennetaan projektissasi nimellä vendor/bin/shikiphp). Siinä on kolme komentoa: highlight tuottaa yhden tiedoston kohteeseen HTML, ja langs sekä themes luettelevat paketin sisällön.

highlight

Korosta tiedosto kohteeseen HTML ja tulosta se vakiotulosteeseen.

Shell
vendor/bin/shikiphp highlight <file> [--lang=<lang>] [--theme=<theme>]
  • <file> — luettava polku. Sen on oltava olemassa oleva tiedosto; vakiosyötettä ei lueta.
  • --lang — kielen tunnus tai alias. Jos sitä ei anneta, tiedostopäätettä käytetään sellaisenaan tunnuksena (tai txt, jos päätettä ei ole).
  • --theme — teeman tunnus. Oletusarvo on github-dark.
Shell
vendor/bin/shikiphp highlight src/App.php --lang=php --theme=nord

Tuloste on sama yhden teeman <pre class="shiki …">-lohko, jonka codeToHtml palauttaa, ja sen perässä on rivinvaihto, joten sen voi ohjata suoraan tiedostoon:

Shell
vendor/bin/shikiphp highlight src/App.php --theme=github-light > app.html

Komento ei hyväksy muita valintoja. Jos tarvitset kahta teemaa, muuntimia tai muita valintoja, kutsu sen sijaan PHP API.

Valinnat ja argumentit

Valinnoissa on käytettävä muotoa --name=value. Kaikki muut argumentit, jotka alkavat merkeillä --, ohitetaan. Viimeistä argumenttia, joka ei ala merkeillä --, käsitellään tiedostona. Siksi --lang php file.rs korostaa tiedoston file.rs muodossa Rust: --lang ohitetaan, php korvataan arvolla file.rs ja kieli päätellään tiedostopäätteen .rs perusteella.

Kielen päättely

Ilman arvoa --lang tiedostopäätteestä tulee kielen tunnus sellaisenaan. Tämä toimii, kun pääte on itsessään mukana toimitettu tunnus tai alias — php, js, ts, tsx, py, rs, go, md, yml, json, sh ja monet muut (katso Kielet). Se ei toimi seuraavissa tapauksissa:

  • tiedostoilla, joilla ei ole päätettä, kuten Makefile tai Dockerfile; tällöin käytetään oletusarvoa txt;
  • päätteillä, jotka eivät ole kielen tunnuksia, kuten .txt.

txt ei ole mukana toimitettu kieli, joten molemmat tapaukset päättyvät tällä hetkellä virheeseen Unknown language "txt" (#3). Anna näille tiedostoille arvo --lang:

Shell
vendor/bin/shikiphp highlight Dockerfile --lang=docker
vendor/bin/shikiphp highlight Makefile --lang=make

langs

Tulosta kukin paketin hyväksymä kielen tunnus omalle rivilleen.

Shell
vendor/bin/shikiphp langs

Luettelossa on 350 riviä: 253 mukana toimitettua kieliopin tunnusta paketin järjestyksessä (ei aakkosjärjestyksessä), minkä jälkeen tulevat niiden 97 aliasta (js, cjs, mjs ja niin edelleen). Kieliopin tunnuksiin kuuluu 18 apukielioppia, jotka muut kieliopit upottavat, kuten vue-directives ja es-tag-css. Katso nimien ja aliasten luettelo kohdasta Kielet. Järjestä lista aakkosjärjestykseen komennolla sort.

themes

Tulosta jokainen mukana toimitetun teeman tunnus omalle rivilleen aakkosjärjestyksessä (65 teemaa).

Shell
vendor/bin/shikiphp themes

Katso teemojen nimien ja vaalean/tumman tyypin luettelo kohdasta Teemat.

Ohje ja poistumiskoodi

Suorita komento ilman komentoa tai komennolla -h / --help / help tulostaaksesi käyttöohjeen.

Shell
vendor/bin/shikiphp --help
Tilanne Tuloste Poistumiskoodi
Onnistuminen tai ohje vakiotuloste 0
Tuntematon komento Unknown command: <name> vakiovirheessä 1
highlight ilman tiedostoa tai tiedostoa ei ole olemassa käyttöohjerivi vakiovirheessä 1
Tuntematon kieli tai teema käsittelemätön Shikiphp\Exceptions\Highlight (PHP-vakava virhe pinon jäljitystietoineen) 255