@unisnips/unisnips
Version:
cli of unisnips project, convert ultisnips snippet to vscode/atom and other targets
65 lines • 2.1 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var fs_1 = __importDefault(require("fs"));
var path_1 = __importDefault(require("path"));
var signale_1 = __importDefault(require("signale"));
var yargs_1 = __importDefault(require("yargs"));
var util_1 = require("../common/util");
var convert_1 = require("../services/convert");
var cwd = process.cwd();
var DEFAULT_OPTIONS = {
input: '',
output: '',
source: '',
target: '',
};
var CONVERT_MODULE = {
command: 'convert',
describe: 'Convert snippet from one source to another target',
builder: {
input: {
alias: 'i',
describe: 'input file path',
required: true,
},
output: {
alias: 'o',
describe: 'output file path',
},
source: {
alias: 's',
describe: "Source type, default is 'ultisnips'",
},
target: {
alias: 't',
describe: "Target type, default is 'vscode'",
},
},
handler: function (argv) {
var options = util_1.getCliOptionsByDefault(argv, DEFAULT_OPTIONS);
// console.log('options', options)
if (!options.input) {
return yargs_1.default.showHelp();
}
var fileContent = fs_1.default.readFileSync(options.input).toString();
var result = convert_1.convert({
source: options.source,
target: options.target,
inputContent: fileContent,
snippetsFilePath: options.input,
}).content;
if (options.output) {
var outputPath = path_1.default.resolve(cwd, options.output);
fs_1.default.writeFileSync(outputPath, result);
signale_1.default.success("Written to: " + outputPath);
}
else {
console.log(result);
}
},
};
exports.default = CONVERT_MODULE;
//# sourceMappingURL=convert.js.map