CLI
shikiphp, bin/shikiphp konumunda küçük bir komut satırı aracı sunar (projenize vendor/bin/shikiphp olarak kurulur). Üç komutu vardır: highlight bir dosyayı HTML biçiminde işler; langs ve themes paketin içeriğini listeler.
highlight
Bir dosyayı HTML için vurgulayın; çıktı stdout'a yazdırılır.
vendor/bin/shikiphp highlight <file> [--lang=<lang>] [--theme=<theme>]
<file>— okunacak yol. Mevcut bir dosya olmalıdır; standart girdi okunmaz.--lang— dil kimliği veya takma adı. Belirtilmezse dosya uzantısı olduğu gibi kimlik olarak kullanılır (yoksatxtdeğerine dönülür).--theme— tema kimliği. Varsayılanıgithub-dark.
vendor/bin/shikiphp highlight src/App.php --lang=php --theme=nord
Çıktı, codeToHtml tarafından döndürülen tek temalı <pre class="shiki …"> bloğuyla aynıdır; sonuna satır sonu eklenir, böylece doğrudan bir dosyaya yönlendirilebilir:
vendor/bin/shikiphp highlight src/App.php --theme=github-light > app.html
Komut başka seçenek almaz. Çift temalar, dönüştürücüler veya başka bir seçeneği için bunun yerine PHP API işlevini çağırın.
Seçenekler ve bağımsız değişkenler
Seçenekler --name=value biçimini kullanmalıdır. -- ile başlayan diğer bağımsız değişkenler yok sayılır; -- ile başlamayan son bağımsız değişken dosya olarak alınır. Bu nedenle --lang php file.rs, file.rs değerini Rust olarak vurgular: --lang yok sayılır, php yerine file.rs kullanılır ve dil, .rs uzantısından belirlenir.
Dil çıkarımı
--lang yoksa uzantı, değiştirilmeden dil kimliği olur. Uzantının kendisi paketteki bir kimlik veya takma ad olduğunda işe yarar: php, js, ts, tsx, py, rs, go, md, yml, json, sh ve daha fazlası (adlar ve takma adlar kataloğu için Diller bölümüne bakın). Şunlarda işe yaramaz:
MakefileveyaDockerfilegibi uzantısı olmayan dosyalarda; bu durumdatxtdeğerine dönülür;- Dil kimliği olmayan
.txtgibi uzantılarda.
txt paketteki bir dil değildir; bu nedenle her iki durum da şu anda Unknown language "txt" hatasıyla sonuçlanır (#3).
Bu dosyalar için --lang değerini geçin:
vendor/bin/shikiphp highlight Dockerfile --lang=docker
vendor/bin/shikiphp highlight Makefile --lang=make
langs
Paketin dil olarak kabul ettiği her kimliği satır başına bir tane olacak şekilde yazdırır.
vendor/bin/shikiphp langs
Listede 350 satır vardır: paket sırasına göre (alfabetik değil) 253 dilbilgisi kimliği, ardından 97 takma adı (js, cjs, mjs vb.). Dilbilgisi kimlikleri, diğer dilbilgilerinin içine eklenen vue-directives ve es-tag-css gibi 18 yardımcı dilbilgisini de içerir; adların ve takma adların bulunduğu katalog için Diller bölümüne bakın. Listeyi alfabetik sıralamak için sort komutuna aktarın.
themes
Paketteki tüm tema kimliklerini, satır başına bir tane ve alfabetik sırayla yazdırır (65 tema).
vendor/bin/shikiphp themes
Adların ve açık/koyu türlerinin yer aldığı katalog için Temalar bölümüne bakın.
Yardım ve çıkış durumu
Kullanım bilgisini yazdırmak için komut olmadan veya -h / --help / help ile çalıştırın.
vendor/bin/shikiphp --help
| Durum | Çıktı | Çıkış durumu |
|---|---|---|
| Başarılı veya yardım | stdout | 0 |
| Bilinmeyen komut | stderr üzerinde Unknown command: <name> |
1 |
Dosya olmadan highlight veya dosyanın mevcut olmaması |
stderr üzerinde kullanım satırı | 1 |
| Bilinmeyen dil veya tema | yakalanmamış Shikiphp\Exceptions\Highlight (yığın izlemeli PHP kritik hata) |
255 |