-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathindex.js
38 lines (34 loc) · 1.13 KB
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
// =========== [ REQUIRE ] ===========
var co = require("co");
var spawn = require("dm-shell").spawn;
require("shelljs/global");
// =========== [ MODULE DEFINE ] ===========
var task = {};
// =========== [ task.start() ] ===========
task.start = co.wrap(function*(dirname) {
try {
var dirname = dirname || process.argv[3] || undefined;
run(dirname);
} catch (e) {
console.log("Filename: ", __filename, "\n", e.stack);
}
return yield Promise.resolve();
}); // task.start()
// =========== [ run ] ===========
var run = co.wrap(function*(dirname) {
var markdownVersion = exec('markdown --version', {
silent: true
}).output;
var lynxVersion = exec('lynx --version', {
silent: true
}).output;
if (markdownVersion.indexOf("not found") === -1 && lynxVersion.indexOf("not found") === -1) {
var commandMarkdown = "markdown " + dirname + "/README.md | lynx -stdin";
spawn(commandMarkdown);
} else {
var command = "cat " + dirname + "/README.md | less";
spawn(command);
}
}); // run
// =========== [ MODULE EXPORT ] ===========
module.exports = task;