remark-fix-guillemets
v1.1.3
Published
This plugin fixes `typographic-plugin` when used together with `remark-parse`.
Readme
remark-fix-guillemets

This plugin fixes typographic-plugin when used together with remark-parse.
Motivation
When <<a>> is parsed by remark-parse the resulting tree is:
root[1] (1:1-1:6, 0-5)
└─ paragraph[3] (1:1-1:6, 0-5)
├─ text: "<" (1:1-1:2, 0-1)
├─ html: "<a>" (1:2-1:5, 1-4)
└─ text: ">" (1:5-1:6, 0-1)As you see here << got split into a text node < and an HTML node.
Since remark-textr only gets applied to 'text' nodes, << is not replaced by «.
This plugin replaces the previous tree with:
root[1] (1:1-1:6, 0-5)
└─ paragraph[1] (1:1-1:6, 0-5)
└─ text: "<<a>>" (1:1-1:6, 0-5)Install
npm:
npm install --save remark-fix-guillemetsUsage
Dependencies:
const unified = require('unified')
const remarkParse = require('remark-parse')
const stringify = require('rehype-stringify')
const remark2rehype = require('remark-rehype')
const remarkFixGuillemets = require('remark-fix-guillemets')Usage:
unified()
.use(remarkParse)
.use(remarkFixGuillemets)
.use(remark2rehype)
.use(stringify)