@unifast/shiki
v0.0.5
Published
Shiki syntax highlighting plugin for unifast via HAST transforms
Maintainers
Readme
@unifast/shiki
Shiki syntax highlighting plugin for unifast.
Transforms code blocks in the HAST output using Shiki's TextMate grammar-based highlighter with support for dual themes (light/dark).
Install
npm install @unifast/shiki @unifast/nodeUsage
import { compile } from "@unifast/node";
import { createShikiPlugin } from "@unifast/shiki";
const shiki = await createShikiPlugin({
themes: {
light: "github-light",
dark: "github-dark",
},
});
const result = compile(markdown, {
plugins: [shiki],
});API
createShikiPlugin(options?)
Create a unifast plugin for Shiki syntax highlighting. Returns a Promise<UnifastPlugin>.
Options:
| Option | Type | Description |
|--------|------|-------------|
| themes | BundledTheme \| BundledTheme[] \| { light, dark } | Theme(s) to use |
| defaultTheme | BundledTheme | Fallback theme |
| defaultColor | string \| false | Default color for highlighted tokens |
| langs | BundledLanguage[] | Languages to load |
createShikiTransformer(options?)
Lower-level API that returns a transformer with transform(hast) and transformMdxJs(js) methods.
