Liigu sisu juurde

CLI

shikiphp sisaldab väikest käsureatööriista asukohas bin/shikiphp (paigaldatakse sinu projekti nime all vendor/bin/shikiphp). Sellel on kolm käsku: highlight renderdab ühe faili HTML-na ning langs ja themes loetlevad paketi sisu.

highlight

Tõsta fail esile HTML-na ja väljasta see stdout-i.

Shell
vendor/bin/shikiphp highlight <file> [--lang=<lang>] [--theme=<theme>]
  • <file> — loetava faili tee. Fail peab olemas olema; standardset sisendit ei loeta.
  • --lang — keele ID või alias. Kui see puudub, kasutatakse keele ID-na muutmata kujul faililaiendit (selle puudumisel kasutatakse txt).
  • --theme — teema ID. Vaikimisi on github-dark.
Shell
vendor/bin/shikiphp highlight src/App.php --lang=php --theme=nord

Väljund on sama ühe teema <pre class="shiki …"> plokk, mille tagastab codeToHtml, millele järgneb reavahetus, nii et selle saab suunata otse faili:

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

Käsk ei võta muid suvandeid. Kahe teema, teisendajate või muude suvandite jaoks kutsu selle asemel PHP API.

Suvandid ja argumendid

Suvandid peavad olema kujul --name=value. Kõiki muid argumente, mis algavad märgiga --, eiratakse ning failiks loetakse viimane argument, mis ei alga märgiga --. Seega tõstab --lang php file.rs esile faili file.rs kui Rust: --lang eiratakse, php asendatakse väärtusega file.rs ning keel tuletatakse .rs laiendist.

Keele tuletamine

Ilma suvandita --lang kasutatakse laiendit muutmata kujul keele ID-na. See toimib, kui laiend on ise paketiga kaasas olev ID või alias — php, js, ts, tsx, py, rs, go, md, yml, json, sh ja paljud teised (vt Keeled). See ei toimi järgmistel juhtudel:

  • laiendita failid, näiteks Makefile või Dockerfile, mille puhul kasutatakse vaikeväärtust txt;
  • laiendid, mis pole keele ID-d, näiteks .txt.

txt pole paketiga kaasas olev keel, seega lõpevad mõlemad juhud praegu veaga Unknown language "txt" ( #3). Nende failide puhul edasta --lang:

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

langs

Väljasta kõik ID-d, mida pakett aktsepteerib keeltena, igaüks oma reale.

Shell
vendor/bin/shikiphp langs

Loendis on 350 rida: kõigepealt 253 paketiga kaasas olevat grammatika ID-d paketi järjekorras (mitte tähestikulises), seejärel 97 aliast (js, cjs, mjs jne). Grammatika ID-de hulgas on 18 abigrammatikat, mida muud grammatikad põimivad, näiteks vue-directives ja es-tag-css; nimede ja aliasega kataloogi leiate lehelt Keeled. Tähestikulise loendi saamiseks suuna väljund käsule sort.

themes

Väljasta kõik paketiga kaasas olevad teemade ID-d, igaüks oma reale ja tähestikulises järjekorras (65 teemat).

Shell
vendor/bin/shikiphp themes

Nimede ja heleda/tumeda tüübi kataloogi leiate lehelt Teemad.

Abi ja väljumiskood

Kasutuse kuvamiseks käivita käsk ilma käsuta või kasuta -h / --help / help.

Shell
vendor/bin/shikiphp --help
Olukord Väljund Väljumiskood
Õnnestumine või abi stdout 0
Tundmatu käsk Unknown command: <name> stderr-is 1
highlight ilma failita või faili puudumisel kasutusjuhise rida stderr-is 1
Tundmatu keel või teema püüdmata Shikiphp\Exceptions\Highlight (PHP saatuslik viga virnajäljega) 255