@unifast/shiki

Plugin syntax highlighting berbasis Shiki untuk unifast dengan transform HAST

Ikhtisar

@unifast/shiki menyediakan syntax highlighting yang ditenagai oleh Shiki, mendukung 200+ bahasa dan beragam tema. Tidak seperti plugin highlight bawaan, Shiki berjalan sebagai transform HAST di JavaScript, menggantikan blok <pre><code> dengan output yang ber-style kaya.

Plugin ini secara otomatis menonaktifkan highlighter Rust bawaan untuk menghindari pemrosesan ganda.

Instalasi

Definisi Tipe

ShikiTransformerOptions

PropertiTipeDefaultDeskripsi
themesBundledTheme[]["github-dark"]Tema Shiki yang akan dimuat
defaultThemeBundledThemeTema pertama dalam themesTema default untuk rendering
langsBundledLanguage[][]Bahasa yang akan dimuat. Hanya bahasa yang sudah dimuat yang akan ter-highlight.

BundledTheme dan BundledLanguage adalah tipe dari paket shiki.

ShikiTransformer

PropertiTipeDeskripsi
transform(hast: HastRoot) => HastRootMenerapkan highlighting Shiki pada semua blok <pre><code class="language-*">

Ringkasan Export

ExportJenisDeskripsi
createShikiPluginfunctionMembuat sebuah UnifastPlugin Shiki (async)
createShikiTransformerfunctionMembuat sebuah transformer Shiki standalone (async)
ShikiTransformerOptionstypeOpsi konfigurasi Shiki
ShikiTransformertypeAntarmuka transformer
hastToHtmlfunctionSerializer HAST-ke-HTML (di-re-export)
HastNode, HastRoot, dll.typesTipe node HAST (di-re-export)