@unifast/shiki

Auf Shiki basierendes Plugin zur Syntax-Hervorhebung für unifast mit HAST-Transformationen

Überblick

@unifast/shiki stellt Syntax-Hervorhebung bereit, die von Shiki unterstützt wird, und bietet Unterstützung für über 200 Sprachen sowie eine breite Auswahl an Themes. Anders als das integrierte Highlight-Plugin läuft Shiki als HAST-Transformation in JavaScript und ersetzt <pre><code>-Blöcke durch reichhaltig gestaltete Ausgaben.

Das Plugin deaktiviert automatisch den integrierten Rust-Highlighter, um eine doppelte Verarbeitung zu vermeiden.

Installation

Typdefinitionen

ShikiTransformerOptions

EigenschaftTypStandardBeschreibung
themesBundledTheme[]["github-dark"]Zu ladende Shiki-Themes
defaultThemeBundledThemeErstes Theme in themesStandard-Theme für das Rendering
langsBundledLanguage[][]Zu ladende Sprachen. Nur geladene Sprachen werden hervorgehoben.

BundledTheme und BundledLanguage sind Typen aus dem shiki-Paket.

ShikiTransformer

EigenschaftTypBeschreibung
transform(hast: HastRoot) => HastRootWendet Shiki-Hervorhebung auf alle <pre><code class="language-*">-Blöcke an

Zusammenfassung der Exporte

ExportArtBeschreibung
createShikiPluginfunctionErstellt ein Shiki-UnifastPlugin (async)
createShikiTransformerfunctionErstellt einen eigenständigen Shiki-Transformer (async)
ShikiTransformerOptionstypeShiki-Konfigurationsoptionen
ShikiTransformertypeTransformer-Schnittstelle
hastToHtmlfunctionHAST-zu-HTML-Serialisierer (reexportiert)
HastNode, HastRoot usw.typesHAST-Knotentypen (reexportiert)