CLI
shikiphp innehåller ett litet kommandoradsverktyg på bin/shikiphp (installeras som
vendor/bin/shikiphp i ditt projekt). Det har tre kommandon: highlight
renderar en fil till HTML, medan langs och themes listar vad paketet
innehåller.
highlight
Markera en fil till HTML och skriv ut resultatet till stdout.
vendor/bin/shikiphp highlight <file> [--lang=<lang>] [--theme=<theme>]
<file>— sökvägen som ska läsas. Det måste vara en befintlig fil; standardindata läses inte.--lang— språk-id eller alias. Om det utelämnas används filändelsen som den är som id (om ingen finns användstxt).--theme— tema-id. Standardvärdet ärgithub-dark.
vendor/bin/shikiphp highlight src/App.php --lang=php --theme=nord
Resultatet är samma block med ett enda tema i <pre class="shiki …"> som
codeToHtml returnerar, följt av en radbrytning, så att
det kan omdirigeras direkt till en fil:
vendor/bin/shikiphp highlight src/App.php --theme=github-light > app.html
Kommandot tar inga andra alternativ. För två teman, transformatorer eller andra alternativ använder du i stället PHP API.
Alternativ och argument
Alternativ måste ha formen --name=value. Alla andra argument som börjar med
-- ignoreras, och det sista argumentet som inte börjar med -- används som
fil. Därför markerar --lang php file.rs file.rs som Rust: --lang
ignoreras, php ersätts av file.rs och språket hämtas från
ändelsen .rs.
Språkinferens
Utan --lang blir filändelsen språk-id:t oförändrat. Det fungerar
när ändelsen själv är ett paketerat id eller alias — php, js, ts,
tsx, py, rs, go, md, yml, json, sh och många fler (se
Språk). Det fungerar inte för:
- filer utan filändelse, till exempel
MakefileellerDockerfile, som användertxtsom reservvärde; - filändelser som inte är språk-id:n, till exempel
.txt.
txt är inte ett paketerat språk, så båda fallen avslutas för närvarande med ett
Unknown language "txt"-fel (#3).
Ange --lang för sådana filer:
vendor/bin/shikiphp highlight Dockerfile --lang=docker
vendor/bin/shikiphp highlight Makefile --lang=make
langs
Skriv ut varje id som paketet godtar som språk, ett per rad.
vendor/bin/shikiphp langs
Listan har 350 rader: de 253 paketerade grammatik-id:na i paketordning (inte
alfabetisk ordning), följda av deras 97 alias (js, cjs, mjs och så vidare).
Grammatik-id:na omfattar 18 hjälpargrammatiker som bäddas in i andra grammatiker, till exempel
vue-directives och es-tag-css. Se Språk för
katalogen med namn och alias. Skicka listan genom sort för att sortera den alfabetiskt.
themes
Skriv ut varje paketerat tema-id, ett per rad, i alfabetisk ordning (65 teman).
vendor/bin/shikiphp themes
Se Teman för katalogen med namn och typerna ljus/mörk.
Hjälp och avslutningsstatus
Kör utan kommando eller med -h / --help / help för att skriva ut användningsinformation.
vendor/bin/shikiphp --help
| Situation | Resultat | Avslutningsstatus |
|---|---|---|
| Lyckat eller hjälp | stdout | 0 |
| Okänt kommando | Unknown command: <name> till stderr |
1 |
highlight utan fil, eller om filen inte finns |
användningsraden till stderr | 1 |
| Okänt språk eller tema | ett ohanterat Shikiphp\Exceptions\Highlight (PHP allvarligt fel med stackspårning) |
255 |