Shuo/src/command-line/config.js

28 lines
696 B
JavaScript
Raw Normal View History

var fs = require("fs");
var path = require("path");
2014-08-19 01:53:17 +00:00
var program = require("commander");
var mkdirp = require("mkdirp");
2014-08-19 01:53:17 +00:00
var child = require("child_process");
var Helper = require("../helper");
2014-08-19 01:53:17 +00:00
var CONFIG_PATH = process.env.SHOUT_CONFIG;
2014-10-01 21:15:17 +00:00
if (!CONFIG_PATH) {
CONFIG_PATH = Helper.resolveHomePath("config.js");
}
2014-10-01 21:15:17 +00:00
if (!fs.existsSync(CONFIG_PATH)) {
mkdirp.sync(Helper.getHomeDirectory());
var configFile = fs.readFileSync(path.resolve(__dirname, "..", "..", "config.js"));
fs.writeFileSync(CONFIG_PATH, configFile);
}
2014-09-09 20:06:26 +00:00
2014-08-19 01:53:17 +00:00
program
.command("config")
2014-09-09 20:06:26 +00:00
.description("Edit config: '" + CONFIG_PATH + "'")
2014-08-19 01:53:17 +00:00
.action(function() {
child.spawn(
2014-10-01 16:45:34 +00:00
"vi",
[CONFIG_PATH],
2014-08-19 01:53:17 +00:00
{stdio: "inherit"}
);
});