mirror of
https://github.com/any86/any-rule.git
synced 2025-07-14 15:38:58 +08:00
51 lines
2.5 KiB
JavaScript
51 lines
2.5 KiB
JavaScript
"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}`);
|
|
}
|
|
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
|