remark plugin to implement SmartyPants. Now with 100% more ESM!
# using npm
npm install remark-smartypants
# using yarn
yarn add remark-smartypants
Example using remark:
import remark from "remark";
import smartypants from "remark-smartypants";
const result = await remark().use(smartypants).process("# <<Hello World!>>");
console.log(String(result));
// # «Hello World!»
I created this plugin because I wanted to add SmartyPants to MDX:
import mdx from "@mdx-js/mdx";
import smartypants from "remark-smartypants";
const result = await mdx("# ---Hello World!---", {
remarkPlugins: [smartypants],
});
Note that angle quotes in the former example (<<...>>
) are probably impossible in MDX because there they are invalid syntax.
This plugin uses retext-smartypants under the hood, so it takes the same options:
const result = await remark()
.use(smartypants, { dashes: "oldschool" })
.process("en dash (--), em dash (---)");