@microflash/remark-figure-caption v2.0.2
remark-figure-caption
remark plugin to transform images with alt text to figures with captions
Status: Feature complete
This plugin is feature complete. Compatibility updates and patches will be published in future.
Contents
What's this?
This package is a unified (remark) plugin that takes the image nodes with alt text (e.g., ) and converts them to figure elements with captions.
<figure>
<img src="path-to-image.jpg" />
<figcaption>Alt Text</figcaption>
</figure>Install
This package is ESM only.
In Node.js (16.0+), install with npm:
npm install @microflash/remark-figure-captionFor Node.js versions below 16.0, stick to 1.x.x versions of this plugin.
In Deno, with esm.sh:
import remarkFigureCaption from "https://esm.sh/@microflash/remark-figure-caption";In browsers, with esm.sh:
<script type="module">
import remarkFigureCaption from "https://esm.sh/@microflash/remark-figure-caption?bundle";
</script>Use
Say we have the following module example.js:
import { unified } from "unified";
import remarkParse from "remark-parse";
import remarkGfm from "remark-gfm";
import remarkFigureCaption from "@microflash/remark-figure-caption";
import remarkRehype from "remark-rehype";
import rehypeStringify from "rehype-stringify";
main()
async function main() {
const file = await unified()
.use(remarkParse)
.use(remarkGfm)
.use(remarkFigureCaption)
.use(remarkRehype)
.use(rehypeStringify)
.process("");
console.log(String(file));
}Running that with node example.js yields:
<figure>
<img src="path-to-image.jpg" />
<figcaption>Alt Text</figcaption>
</figure>API
The default export is remarkFigureCaption.
Options
The following options are available. All of them are optional.
figureClassName: class for the wrappedfigureelementimageClassName: class for the wrappedimgelementcaptionClassName: class for the wrappedfigcaptionelement
By default, no classes are added to the figure, img and figcaption elements.
Credits
Quang Trinh who wrote the original plugin. This is a direct ESM-only port.