UNPKG

@unisnips/unisnips

Version:

cli of unisnips project, convert ultisnips snippet to vscode/atom and other targets

39 lines 1.62 kB
"use strict"; var __assign = (this && this.__assign) || function () { __assign = Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; return __assign.apply(this, arguments); }; Object.defineProperty(exports, "__esModule", { value: true }); var ultisnips_1 = require("@unisnips/ultisnips"); var const_1 = require("../const"); var plugin_manager_1 = require("../plugin-manager"); var parse_1 = require("../common/parse"); function convert(opts) { var source = opts.source || const_1.UNISNIPS_SUPPORTED_SOURCES.ultisnips; var target = opts.target || const_1.UNISNIPS_SUPPORTED_TARGETS.vscode; var parser = plugin_manager_1.pluginManager.getParser(source); var generator = plugin_manager_1.pluginManager.getGenerator(target); if (!parser) { console.error("Source '" + source + "' parsing not supported"); return; } if (!generator) { console.error("Target '" + generator + "' parsing not supported"); return; } var parseResult = parse_1.parse(opts.inputContent, __assign(__assign({}, opts), { parser: parser })); var definitions = parseResult.definitions; if (source === const_1.UNISNIPS_SUPPORTED_SOURCES.ultisnips) { definitions = ultisnips_1.stripSnippetsByPriority(parseResult.definitions); } return generator.generateSnippets(definitions, opts); } exports.convert = convert; //# sourceMappingURL=convert.js.map