Back to Shiki

@shikijs/rehype

docs/packages/rehype.md

4.0.243.0 KB
Original Source

@shikijs/rehype

<Badges name="@shikijs/rehype" />

rehype plugin for Shiki.

Install

::: code-group

sh
npm i -D @shikijs/rehype
sh
yarn add -D @shikijs/rehype
sh
pnpm add -D @shikijs/rehype
sh
bun add -D @shikijs/rehype
sh
deno add npm:@shikijs/rehype

:::

Usage

ts
// @twoslash-cache: {"v":1,"hash":"f652dc1d308709739c1be11a9172b77ef0b59d02c30ad9b2f5dc7195fad4cd45","data":"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="}
// @noErrors: true
import rehypeShiki from '@shikijs/rehype'
import rehypeStringify from 'rehype-stringify'
import remarkParse from 'remark-parse'
import remarkRehype from 'remark-rehype'
import { unified } from 'unified'

const file = await unified()
  .use(remarkParse)
  .use(remarkRehype)
  .use(rehypeShiki, {
    // or `theme` for a single theme
    themes: {
      light: 'vitesse-light',
      dark: 'vitesse-dark',
    }
  })
  .use(rehypeStringify)
  .process(await fs.readFile('./input.md'))

The default export of @shikijs/rehype uses a shared instance of shiki from getSingletonHighlighter, which will persist across processes. If you want full control over the highlighter lifecycle, use Fine-grained Bundle @shikijs/rehype/core instead.

Fine-grained Bundle

By default, the full bundle of shiki will be imported. If you are using a fine-grained bundle, you can import rehypeShikiFromHighlighter from @shikijs/rehype/core and pass your own highlighter:

ts
// @twoslash-cache: {"v":1,"hash":"141199456275121b3ddecb36bbeedc3ec800ba9c5d4c78ec0a3f651e44ac22ee","data":"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"}
// @noErrors: true
import rehypeShikiFromHighlighter from '@shikijs/rehype/core'
import rehypeStringify from 'rehype-stringify'
import remarkParse from 'remark-parse'
import remarkRehype from 'remark-rehype'
import { createHighlighterCore } from 'shiki/core'
import { createOnigurumaEngine } from 'shiki/engine/oniguruma'

import { unified } from 'unified'

const highlighter = await createHighlighterCore({
  themes: [
    import('@shikijs/themes/vitesse-light')
  ],
  langs: [
    import('@shikijs/langs/javascript'),
  ],
  engine: createOnigurumaEngine(() => import('shiki/wasm'))
})

const raw = await fs.readFile('./input.md')
const file = await unified()
  .use(remarkParse)
  .use(remarkRehype)
  .use(rehypeShikiFromHighlighter, highlighter, {
    // or `theme` for a single theme
    themes: {
      light: 'vitesse-light',
      dark: 'vitesse-dark',
    }
  })
  .use(rehypeStringify)
  .processSync(raw) // it's also possible to process synchronously

Features

Inline Code

You can also highlight inline codes with the inline option.

OptionExampleDescription
false-Disable inline code highlighting (default)
'tailing-curly-colon'let a = 1{:js}Highlight with a {:language} marker inside the code block

Enable inline on the Rehype plugin:

ts
// @twoslash-cache: {"v":1,"hash":"549ef2ad84b55c413cb40bcedc19dcf805008cf25a703dd1f3614dff89dbdd93","data":"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"}
// @noErrors: true
import rehypeShiki from '@shikijs/rehype'
import rehypeStringify from 'rehype-stringify'
import remarkParse from 'remark-parse'
import remarkRehype from 'remark-rehype'
import { unified } from 'unified'

const file = await unified()
  .use(remarkParse)
  .use(remarkRehype)
  .use(rehypeShiki, {
    inline: 'tailing-curly-colon', // or other options
    // ...
  })
  .use(rehypeStringify)
  .process(await fs.readFile('./input.md'))

Then you can use inline code in markdown:

md
This code `console.log("Hello World"){:js}` will be highlighted.

Postprocess Transformers

::: info The postprocess transformer hook is only invoked when producing HTML strings (i.e., when using codeToHtml). Since @shikijs/rehype operates on HAST (Hypertext Abstract Syntax Tree) rather than HTML strings, postprocess transformers will not be executed. :::

This design is intentional: running postprocess hooks in rehype would require converting HAST → HTML → running postprocess → parsing back to HAST, which changes the semantics and could surprise users expecting HAST-only transformers.

Workaround for HTML-based Postprocessing

If you need to run HTML-based postprocessing with rehype, you can apply a root transformer that:

  1. Converts the HAST fragment to HTML using hast-util-to-html
  2. Runs your HTML transformers
  3. Converts back to HAST using hast-util-from-html

Example:

ts
import { fromHtml } from 'hast-util-from-html'
import { toHtml } from 'hast-util-to-html'

const file = await unified()
  .use(remarkParse)
  .use(remarkRehype)
  .use(rehypeShiki, {
    themes: {
      light: 'vitesse-light',
      dark: 'vitesse-dark',
    },
    transformers: [
      {
        name: 'custom-html-postprocessor',
        root(node) {
          // Convert HAST to HTML
          const html = toHtml(node)

          // Apply your HTML transformations
          const processedHtml = myCustomPostprocess(html)

          // Parse back to HAST
          const newNode = fromHtml(processedHtml, { fragment: true })

          // Replace the node
          return newNode
        }
      }
    ]
  })
  .use(rehypeStringify)
  .process(await fs.readFile('./input.md'))