CLI
shikiphp menyertakan alat baris perintah kecil di bin/shikiphp (dipasang sebagai vendor/bin/shikiphp di proyek Anda). Alat ini memiliki tiga perintah: highlight merender satu file ke HTML, sedangkan langs dan themes menampilkan isi bundle.
highlight
Sorot file ke HTML dan cetak ke stdout.
vendor/bin/shikiphp highlight <file> [--lang=<lang>] [--theme=<theme>]
<file>— jalur file yang akan dibaca. File harus sudah ada; input standar tidak dibaca.--lang— ID atau alias bahasa. Jika tidak dicantumkan, ekstensi file digunakan apa adanya sebagai ID (jika tidak ada, gunakantxt).--theme— ID tema. Default-nyagithub-dark.
vendor/bin/shikiphp highlight src/App.php --lang=php --theme=nord
Outputnya adalah blok <pre class="shiki …"> tema tunggal yang sama dengan yang dikembalikan codeToHtml, diikuti baris baru, sehingga dapat langsung dialihkan ke file:
vendor/bin/shikiphp highlight src/App.php --theme=github-light > app.html
Perintah ini tidak menerima opsi lain. Untuk tema ganda, transformer, atau opsilainnya, panggil PHP API saja.
Opsi dan argumen
Opsi harus menggunakan bentuk --name=value. Argumen lain yang diawali -- akan diabaikan, dan argumen terakhir yang tidak diawali -- dianggap sebagai file. Jadi, --lang php file.rs menyorot file.rs sebagai Rust: --lang diabaikan, php digantikan dengan file.rs, dan bahasa ditentukan dari ekstensi .rs.
Penentuan bahasa otomatis
Tanpa --lang, ekstensi menjadi id bahasa tanpa perubahan. Ini berfungsi
jika ekstensi tersebut merupakan id atau alias yang sudah disertakan — php, js, ts,
tsx, py, rs, go, md, yml, json, sh, dan banyak lagi (lihat
Bahasa). Ini tidak berlaku untuk:
- file tanpa ekstensi, seperti
MakefileatauDockerfile, yang menggunakantxtsebagai fallback; - ekstensi yang bukan id bahasa, seperti
.txt.
txt bukan bahasa yang disertakan, sehingga kedua kasus saat ini berhenti dengan
kesalahan Unknown language "txt" (#3).
Berikan --lang untuk file-file ini:
vendor/bin/shikiphp highlight Dockerfile --lang=docker
vendor/bin/shikiphp highlight Makefile --lang=make
langs
Cetak setiap id yang diterima bundle sebagai bahasa, satu per baris.
vendor/bin/shikiphp langs
Daftar ini terdiri dari 350 baris: 253 id tata bahasa yang disertakan dalam urutan bundle (bukan
alfabetis), diikuti 97 aliasnya (js, cjs, mjs, dan seterusnya).
Id tata bahasa mencakup 18 tata bahasa pembantu yang disematkan oleh tata bahasa lain, seperti
vue-directives dan es-tag-css; lihat Bahasa untuk
katalog nama dan alias. Salurkan melalui sort untuk mendapatkan daftar alfabetis.
themes
Cetak setiap id tema yang disertakan, satu per baris, dalam urutan alfabetis (65 tema).
vendor/bin/shikiphp themes
Lihat Tema untuk katalog yang berisi nama dan jenis terang/gelap.
Bantuan dan status keluar
Jalankan tanpa perintah, atau -h / --help / help, untuk mencetak petunjuk penggunaan.
vendor/bin/shikiphp --help
| Situasi | Keluaran | Status keluar |
|---|---|---|
| Berhasil, atau bantuan | stdout | 0 |
| Perintah tidak dikenal | Unknown command: <name> di stderr |
1 |
highlight tanpa file, atau file tidak ada |
baris petunjuk penggunaan di stderr | 1 |
| Bahasa atau tema tidak dikenal | Shikiphp\Exceptions\Highlight yang tidak tertangkap (kesalahan fatal PHP dengan stack trace) |
255 |