mkabs
v1.2.4
Published
Make relative links absolute
Downloads
37
Readme
Absolute Links
Make relative links absolute
Takes a base URL and prepends it to relative links to make them absolute. Relative links are deemed to be those beginning with a /
, if the greedy
option is specified than anchor links (#) and query string links (?) are also made absolute.
The typical use case is for README documents whose forward slash links work as expected when published to github but are broken when published to npm.
Install
npm i mkabs --save
For the command line interface install mkdoc globally (npm i -g mkdoc
).
Usage
Create the stream and write a commonmark document:
var abs = require('mkabs')
, ast = require('mkast');
ast.src('[readme](/README.md)')
.pipe(abs({base: 'https://github.com/mkdoc/mkabs'}))
.pipe(ast.stringify({indent: 2}))
.pipe(process.stdout);
Example
Make links absolute using data in package.json
:
mkcat README.md | mkabs | mkout
Make links absolute using a specific URL:
mkcat README.md | mkabs -b http://example.com | mkout
Help
Usage: mkabs [options]
Make relative links absolute.
Options
-b, --base=[URL] Base URL for absolute links
-r, --relative=[PATH] Relative path when repository url
-g, --greedy Convert links starting with # and ?
-h, --help Display help and exit
--version Print the version and exit
[email protected]
API
abs
abs([opts][, cb])
Prepends a base URL to relative link destinations.
A relative link is deemed to be a link beginning a slash (/) unless the
greedy
option is given which will also include anchor links beginning
with a hash (#) and query string links beginning with a question mark (?).
When no base is given an attempt to load package.json
from the
current working directory is made and a URL is extracted from homepage
or
repository.url
; if there is still no base path then the operation is a
passthrough stream (noop).
If rel
is specified it is appended when the source for base
is the
repository.url
field.
Returns an output stream.
opts
Object processing options.cb
Function callback function.
Options
base
String path to prepend to relative links.rel
String=/blob/master relative path to append to repository url.greedy
Boolean also convert links beginning with # and ?.input
Readable input stream.output
Writable output stream.
Absolute
Absolute([opts])
Makes relative link destinations absolute.
opts
Object stream options.
Options
base
String prepend path for relative links.greedy
Boolean=false convert # and ? link destinations.
License
MIT
Created by mkdoc on April 18, 2016