any-rule/out/extension.js

51 lines
2.5 KiB
JavaScript
Raw Normal View History

2019-08-02 16:46:17 +08:00
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
// The module 'vscode' contains the VS Code extensibility API
// Import the module and reference it with the alias vscode in your code below
const vscode = require("vscode");
const RULES = require('../packages/www/src/RULES.js');
// this method is called when your extension is activated
// your extension is activated the very first time the command is executed
function activate(context) {
// Use the console to output diagnostic information (console.log) and errors (console.error)
// This line of code will only be executed once when your extension is activated
console.log('Congratulations, your extension "any-rule" is now active!');
// The command has been defined in the package.json file
// Now provide the implementation of the command with registerCommand
// The commandId parameter must match the command field in package.json
// let disposable = vscode.commands.registerCommand('extension.helloWorld', () => {
// The code you place here will be executed every time your command is executed
// Display a message box to the user
// vscode.window.showInformationMessage('Hello World123!');
// });
// context.subscriptions.push(disposable);
RULES.forEach(({ title, rule }, index) => {
let disposable = vscode.commands.registerCommand(`extension.rule${index}`, () => {
// The code you place here will be executed every time your command is executed
const editor = vscode.window.activeTextEditor;
if (editor) {
const { selections } = editor;
editor.edit(editBuilder => {
selections.forEach(selection => {
const { start, end } = selection;
const range = new vscode.Range(start, end);
editBuilder.replace(range, String(rule));
});
});
// Display a message box to the user
vscode.window.showInformationMessage(`已插入正则: ${title}`);
2019-08-02 16:46:17 +08:00
}
else {
vscode.window.showWarningMessage('any-rule: 只有在编辑文本的时候才可以使用!');
}
});
context.subscriptions.push(disposable);
});
}
exports.activate = activate;
// this method is called when your extension is deactivated
function deactivate() {
vscode.window.showWarningMessage('any-rule: 已关闭!');
}
exports.deactivate = deactivate;
//# sourceMappingURL=extension.js.map