diff options
Diffstat (limited to 'packages/markdown/remark/src')
-rw-r--r-- | packages/markdown/remark/src/index.ts | 7 | ||||
-rw-r--r-- | packages/markdown/remark/src/types.ts | 1 |
2 files changed, 5 insertions, 3 deletions
diff --git a/packages/markdown/remark/src/index.ts b/packages/markdown/remark/src/index.ts index da64a5459..c64bdac0e 100644 --- a/packages/markdown/remark/src/index.ts +++ b/packages/markdown/remark/src/index.ts @@ -39,6 +39,7 @@ export async function renderMarkdown( remarkPlugins = [], rehypePlugins = [], remarkRehype = {}, + extendDefaultPlugins = false, isAstroFlavoredMd = false, } = opts; const input = new VFile({ value: content, path: fileURL }); @@ -50,9 +51,9 @@ export async function renderMarkdown( .use(remarkInitializeAstroData) .use(isAstroFlavoredMd ? [remarkMdxish, remarkMarkAndUnravel, remarkUnwrap, remarkEscape] : []); - if (remarkPlugins.length === 0 && rehypePlugins.length === 0) { - remarkPlugins = [...DEFAULT_REMARK_PLUGINS]; - rehypePlugins = [...DEFAULT_REHYPE_PLUGINS]; + if (extendDefaultPlugins || (remarkPlugins.length === 0 && rehypePlugins.length === 0)) { + remarkPlugins = [...DEFAULT_REMARK_PLUGINS, ...remarkPlugins]; + rehypePlugins = [...DEFAULT_REHYPE_PLUGINS, ...rehypePlugins]; } const loadedRemarkPlugins = await Promise.all(loadPlugins(remarkPlugins)); diff --git a/packages/markdown/remark/src/types.ts b/packages/markdown/remark/src/types.ts index 9df11d414..5b40c9f9d 100644 --- a/packages/markdown/remark/src/types.ts +++ b/packages/markdown/remark/src/types.ts @@ -43,6 +43,7 @@ export interface AstroMarkdownOptions { remarkPlugins?: RemarkPlugins; rehypePlugins?: RehypePlugins; remarkRehype?: RemarkRehype; + extendDefaultPlugins?: boolean; } export interface MarkdownRenderingOptions extends AstroMarkdownOptions { |