Pereiti prie turinio

CLI

shikiphp pateikia nedidelį komandų eilutės įrankį adresu bin/shikiphp (jūsų projekte jis įdiegiamas kaip vendor/bin/shikiphp). Jame yra trys komandos: highlight atvaizduoja vieną failą į HTML, o langs ir themes išvardija paketo turinį.

highlight

Paryškina failą į HTML ir išveda rezultatą į stdout.

Shell
vendor/bin/shikiphp highlight <file> [--lang=<lang>] [--theme=<theme>]
  • <file> — skaitomo failo kelias. Toks failas turi būti; standartinė įvestis neskaitoma.
  • --lang — kalbos ID arba slapyvardis. Jei nenurodyta, failo plėtinys naudojamas kaip ID nepakeistas (jei plėtinio nėra, naudojama txt).
  • --theme — temos ID. Numatytoji reikšmė yra github-dark.
Shell
vendor/bin/shikiphp highlight src/App.php --lang=php --theme=nord

Išvestis yra tas pats vienos temos <pre class="shiki …"> blokas, kurį grąžina codeToHtml; po jo pridedama naujos eilutės žymė, todėl išvestį galima nukreipti tiesiai į failą:

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

Komanda neturi kitų parinkčių. Jei reikia dviejų temų, transformatorių ar bet kurios kitos parinkties, naudokite PHP API.

Parinktys ir argumentai

Parinktys turi būti --name=value formato. Bet kuris kitas argumentas, prasidedantis --, ignoruojamas, o failu laikomas paskutinis argumentas, kuris neprasideda --. Todėl --lang php file.rs paryškina file.rs kaip Rust: --lang ignoruojamas, php pakeičiamas į file.rs, o kalba nustatoma pagal plėtinį .rs.

Kalbos nustatymas

Nenurodžius --lang, plėtinys nepakeistas tampa kalbos ID. Tai veikia, jei pats plėtinys yra į paketą įtrauktas ID arba slapyvardis — php, js, ts, tsx, py, rs, go, md, yml, json, sh ir daug kitų (žr. Kalbos). Tai netinka šiais atvejais:

  • failai be plėtinio, pavyzdžiui, Makefile arba Dockerfile; tokiems naudojama txt;
  • plėtiniai, kurie nėra kalbos ID, pavyzdžiui, .txt.

txt nėra į paketą įtraukta kalba, todėl abiem atvejais šiuo metu įvyksta Unknown language "txt" klaida (#3). Tokiems failams perduokite --lang:

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

langs

Išveda kiekvieną ID, kurį paketas priima kaip kalbą, po vieną eilutėje.

Shell
vendor/bin/shikiphp langs

Sąraše yra 350 eilučių: 253 įtraukti gramatikų ID pateikiami paketo tvarka (ne abėcėlės tvarka), o po jų — 97 slapyvardžiai (js, cjs, mjs ir t. t.). Gramatikų ID sąraše yra 18 pagalbinių gramatikų, kurias įterpia kitos gramatikos, pavyzdžiui, vue-directives ir es-tag-css. Gramatikų katalogą su pavadinimais ir slapyvardžiais rasite puslapyje Kalbos. Norėdami gauti abėcėlinį sąrašą, nukreipkite išvestį per sort.

themes

Išveda kiekvienos įtrauktos temos ID po vieną eilutėje, abėcėlės tvarka (65 temos).

Shell
vendor/bin/shikiphp themes

Temų katalogą su pavadinimais ir šviesiųjų bei tamsiųjų temų tipais rasite puslapyje Temos.

Pagalba ir išėjimo kodas

Paleiskite be komandos arba su -h / --help / help, kad būtų parodytos naudojimo instrukcijos.

Shell
vendor/bin/shikiphp --help
Atvejis Išvestis Išėjimo kodas
Sėkmė arba pagalba stdout 0
Nežinoma komanda Unknown command: <name> stderr 1
highlight nenurodytas failas arba jo nėra naudojimo instrukcijos eilutė stderr 1
Nežinoma kalba arba tema neužfiksuota Shikiphp\Exceptions\Highlight (PHP kritinė klaida su dėklo pėdsaku) 255