@unifast/shiki

Plugin di evidenziazione della sintassi basato su Shiki per unifast con trasformazioni HAST

Panoramica

@unifast/shiki fornisce l’evidenziazione della sintassi basata su Shiki, con supporto per oltre 200 linguaggi e un’ampia varietà di temi. A differenza del plugin di evidenziazione integrato, Shiki viene eseguito come trasformazione HAST in JavaScript, sostituendo i blocchi <pre><code> con un output riccamente stilizzato.

Il plugin disabilita automaticamente l’highlighter Rust integrato per evitare una doppia elaborazione.

Installazione

Definizioni dei tipi

ShikiTransformerOptions

ProprietàTipoPredefinitoDescrizione
themesBundledTheme[]["github-dark"]Temi Shiki da caricare
defaultThemeBundledThemePrimo tema di themesTema predefinito per il rendering
langsBundledLanguage[][]Linguaggi da caricare. Verranno evidenziati solo i linguaggi caricati.

BundledTheme e BundledLanguage sono tipi del pacchetto shiki.

ShikiTransformer

ProprietàTipoDescrizione
transform(hast: HastRoot) => HastRootApplica l’evidenziazione Shiki a tutti i blocchi <pre><code class="language-*">

Riepilogo degli export

ExportTipoDescrizione
createShikiPluginfunctionCrea un UnifastPlugin basato su Shiki (async)
createShikiTransformerfunctionCrea un transformer Shiki autonomo (async)
ShikiTransformerOptionstypeOpzioni di configurazione di Shiki
ShikiTransformertypeInterfaccia del transformer
hastToHtmlfunctionSerializzatore da HAST a HTML (riesportato)
HastNode, HastRoot, ecc.typesTipi di nodo HAST (riesportati)