diff options
author | 2024-03-20 19:15:07 +0800 | |
---|---|---|
committer | 2024-03-20 19:15:07 +0800 | |
commit | 19e42c368184013fc30d1e46753b9e9383bb2bdf (patch) | |
tree | 481659d8e2a731b399ba60cdae4e7edb9f6cf9a4 /packages/integrations/markdoc/src | |
parent | 17b4991cffb2f16fb3deba5881c54fa67c9ee9ce (diff) | |
download | astro-19e42c368184013fc30d1e46753b9e9383bb2bdf.tar.gz astro-19e42c368184013fc30d1e46753b9e9383bb2bdf.tar.zst astro-19e42c368184013fc30d1e46753b9e9383bb2bdf.zip |
Pass meta to shiki transformers (#10494)
Diffstat (limited to 'packages/integrations/markdoc/src')
-rw-r--r-- | packages/integrations/markdoc/src/extensions/shiki.ts | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/packages/integrations/markdoc/src/extensions/shiki.ts b/packages/integrations/markdoc/src/extensions/shiki.ts index 3026d8080..a39eb69a9 100644 --- a/packages/integrations/markdoc/src/extensions/shiki.ts +++ b/packages/integrations/markdoc/src/extensions/shiki.ts @@ -12,6 +12,9 @@ export default async function shiki(config?: ShikiConfig): Promise<AstroMarkdocC fence: { attributes: Markdoc.nodes.fence.attributes!, transform({ attributes }) { + // NOTE: The `meta` from fence code, e.g. ```js {1,3-4}, isn't quite supported by Markdoc. + // Only the `js` part is parsed as `attributes.language` and the rest is ignored. This means + // some Shiki transformers may not work correctly as it relies on the `meta`. const lang = typeof attributes.language === 'string' ? attributes.language : 'plaintext'; const html = highlighter.highlight(attributes.content, lang); |