@unifast/shiki

HAST 変換を通じて unifast に Shiki ベースのシンタックスハイライトを追加するプラグインです。

概要

@unifast/shiki は、Shiki によるシンタックスハイライトを提供し、200 以上の言語と多彩なテーマをサポートします。組み込みの highlight プラグインとは異なり、Shiki は JavaScript の HAST 変換として動作し、<pre><code> ブロックをリッチにスタイリングされた出力に置き換えます。

本プラグインは、二重処理を避けるために組み込みの Rust ハイライタを自動的に無効にします。

インストール

型定義

ShikiTransformerOptions

プロパティデフォルト説明
themesBundledTheme[]["github-dark"]読み込む Shiki テーマ
defaultThemeBundledThemethemes の最初のテーマレンダリングで使うデフォルトのテーマ
langsBundledLanguage[][]読み込む言語。読み込まれた言語のみがハイライトされます。

BundledThemeBundledLanguageshiki パッケージの型です。

ShikiTransformer

プロパティ説明
transform(hast: HastRoot) => HastRootすべての <pre><code class="language-*"> ブロックに Shiki のハイライトを適用する

エクスポート一覧

エクスポート種類説明
createShikiPluginfunctionShiki の UnifastPlugin を生成する (非同期)
createShikiTransformerfunctionスタンドアロンの Shiki トランスフォーマーを生成する (非同期)
ShikiTransformerOptionstypeShiki の設定オプション
ShikiTransformertypeトランスフォーマーのインターフェース
hastToHtmlfunctionHAST から HTML へのシリアライザ (再エクスポート)
HastNode, HastRoot, etc.typesHAST のノード型 (再エクスポート)