0.1.2 • Published 11 years ago

ghlink v0.1.2

Weekly downloads
8
License
-
Repository
github
Last release
11 years ago

ghlink

Turn stuff like isaacs/npm#1234 into https://github.com/isaacs/npm/issues/1234, for your hyperlinking pleasure.

USAGE

ghlink(input, [options])

The options can have a format field (default = 'text') and a project field (default = null).

var ghlink = require('ghlink');
var someString = 'hello world user/project#12 fixed by isaacs/node@deadbeef';

var textOutput = ghlink(someString);
console.log(textOutput)
// hello world https://github.com/user/project/issues/12 fixed by
// https://github.com/isaacs/node/commit/deadbeef

var htmlOutput = ghlink(someString, { format: 'html' });
console.log(htmlOutput)
// hello world <a href="https://github.com/user/project/issues/12">user/project#12</a> fixed by
// <a href="https://github.com/isaacs/node/commit/deadbeef">isaacs/node@deadbeef</a>

var links = ghlink(someString, { format: 'links' });
// [user/project#12]: https://github.com/user/project/issues/12
// [isaacs/node@deadbeef]: https://github.com/isaacs/node/commit/deadbeef

var md = ghlink(someString, { format: 'markdown' });
// hello world [user/project#12](https://github.com/user/project/issues/12) fixed by
// [isaacs/node@deadbeef](https://github.com/isaacs/node/commit/deadbeef)

var lexed = ghlink(someString, { format: 'lex' });
// lexed is now an array with some strings and some objects huzzah.

The project field in the options object should be something like user/project, and then stuff like GH-1234 or #223 are assumed to be for that project.

0.1.2

11 years ago

0.1.1

11 years ago

0.1.0

11 years ago