
page
link
Rehype plugin to rewrite URLs of `href` and `src` attributes
npm install rehype-urlsRehype plugin to rewrite URLs of href and src attributes.
``sh`
npm install rehype-urls
Given this markup:
You can use the following script:
`js
var rehype = require('rehype')
var urls = require('rehype-urls')
rehype()
.use(urls, removeBaseUrl)
.process(input, handleOutput)
function removeBaseUrl (url) {
if (url.host === 'internal.site') {
return url.path
}
}
`
Which will transform it into:
You can also pass in an object:
`js`
rehype()
.use(urls, { transform: removeBaseUrl })
.process(input, handleOutput)
It's also possible to mutate the URL nodes directly. This example will add target="_blank" to any external links:
`js
var rehype = require('rehype')
var urls = require('rehype-urls')
rehype()
.use(urls, blankExternal)
.process(input, handleOutput)
function blankExternal (url, node) {
if (url.host !== 'internal.site') {
node.properties.target = '_blank'
}
}
``
Apache-2.0