Plugin Options
remarkPlugins
Accepts an Array.
You can include any compatible remark plugins or create and reference your own locally.
Each plugin you wish to use must be installed individually.
You can apply plugins globally to all pages, or selectively to specific kinds of pages.
Note: If a YAML frontmatter block is detected in the markdown, the remark-frontmatter
plugin will be automatically applied to parse it.
Basic Usage (Global Plugins)
To apply Remark plugins to all documentation pages:
Each item can be:
- A plugin name (string)
- A tuple of [plugin, pluginOptions]
{
"remarkPlugins": [
"remark-mdx",
["remark-github", { "repository": "myorg/myrepo" }]
]
}
Conditional Usage (Selective by Page Type)
To apply plugins only to specific page kinds, use grouped objects:
{
"remarkPlugins": [
{
"applyTo": "*",
"plugins": ["remark-mdx"]
},
{
"applyTo": ["Class", "Interface"],
"plugins": ["remark-github", { "repository": "myorg/myrepo" }]
}
]
}
Supported applyTo Values
You can target specific pages using the applyTo
field.
The following applyTo values are supported:
"*"
applies to all pages- An array of on or more of the following page kinds: [
"Readme"
,"Index"
,"Module"
,"Namespace"
,"Document"
,"Class"
,"Interface"
,"Enum"
,"TypeAlias"
,"Function"
,"Variable"
].
remarkStringifyOptions
Accepts a key/value object.
Under the hood, the remark-stringify
plugin is used to serialize the markdown into final output.
Please see https://github.com/remarkjs/remark/tree/main/packages/remark-stringify#options for available options to pass to the plugin.
{
"remarkStringifyOptions": {
"bullet": "+",
"fence": "~"
}
}