@unifast/shiki

Plugin de coloration syntaxique pour unifast basé sur Shiki, appliqué via des transformations HAST

Vue d’ensemble

@unifast/shiki fournit une coloration syntaxique propulsée par Shiki, avec la prise en charge de plus de 200 langages et d’une large variété de thèmes. Contrairement au plugin de coloration intégré, Shiki s’exécute sous forme de transformation HAST en JavaScript, en remplaçant les blocs <pre><code> par une sortie finement stylisée.

Le plugin désactive automatiquement le surligneur Rust intégré afin d’éviter un double traitement.

Installation

Définitions de types

ShikiTransformerOptions

PropriétéTypeDéfautDescription
themesBundledTheme[]["github-dark"]Thèmes Shiki à charger
defaultThemeBundledThemePremier thème de themesThème par défaut pour le rendu
langsBundledLanguage[][]Langages à charger. Seuls les langages chargés seront colorés.

BundledTheme et BundledLanguage sont des types issus du paquet shiki.

ShikiTransformer

PropriétéTypeDescription
transform(hast: HastRoot) => HastRootApplique la coloration Shiki à tous les blocs <pre><code class="language-*">

Résumé des exports

ExportNatureDescription
createShikiPluginfonctionCrée un UnifastPlugin Shiki (asynchrone)
createShikiTransformerfonctionCrée un transformer Shiki autonome (asynchrone)
ShikiTransformerOptionstypeOptions de configuration de Shiki
ShikiTransformertypeInterface du transformer
hastToHtmlfonctionSérialiseur HAST vers HTML (réexporté)
HastNode, HastRoot, etc.typesTypes de nœuds HAST (réexportés)