unicode-ranger-cli
Version:
A CLI for unicode-ranger
57 lines (42 loc) • 1.52 kB
JavaScript
;
var _fs = require("fs");
var _fs2 = _interopRequireDefault(_fs);
var _path = require("path");
var _path2 = _interopRequireDefault(_path);
var _unicodeRanger = require("unicode-ranger");
var _unicodeRanger2 = _interopRequireDefault(_unicodeRanger);
var _readFileStdin = require("read-file-stdin");
var _readFileStdin2 = _interopRequireDefault(_readFileStdin);
var _os = require("os");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var opts = require("minimist")(process.argv.slice(2), {
alias: {
h: "help"
}
});
var urls = opts._[0];
var helpFile = _path2.default.join(__dirname, "../usage.txt");
var eolRegex = new RegExp(_os.EOL, "g");
var outputRanges = function outputRanges(urlList) {
(0, _unicodeRanger2.default)(urlList).then(function (ranges) {
return console.log(ranges);
});
};
if (urls === "help" || urls === undefined || opts.help) {
_fs2.default.createReadStream(helpFile).pipe(process.stdout).on("close", function () {
process.exit(1);
});
} else if (urls.indexOf("https://") !== -1 || urls.indexOf("http://") !== -1) {
outputRanges(urls);
} else {
(0, _readFileStdin2.default)(_path2.default.resolve(urls), function (error, buffer) {
if (error) {
console.log("Error! Code " + error.code + " attempting " + error.syscall + " on " + error.path);
process.exit(1);
} else {
var urlsToParse = buffer.toString().trim().replace(eolRegex, ";");
outputRanges(urlsToParse);
}
});
}