作ったもの
VSCodeの拡張機能を開発しました。具体的な機能は以下の通り。
- テキスト編集時に、Ctrl + F1で実行される。
- 実行すると、ターミナルに指定したコマンドが入力される。
VSCodeの公式ドキュメントを参考に作成しました。
https://code.visualstudio.com/docs
手順
ひな形の作成
拡張機能のひな形を作成します。
任意のディレクトリで yo code
を実行すると、ひな形が生成されます。
package.jasonの編集
このファイルでは、拡張機能の実行方法を指定します。
今回はCtrl + F1で実行するために、contributesを以下のように書き直します。
package.json
"contributes": {
"keybindings": [
{
"command": "extension.sayHello",
"key": "ctrl+f1",
"when": "editorTextFocus"
}
]
},
src/extension.tsの編集
このファイルでは、拡張機能の実行内容を指定します。
実行するとメッセージが表示され、ターミナルに入力を行うように書き直しました。
extension.ts
export function activate(context: vscode.ExtensionContext) {
// 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 "xsl-fo-runner" 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.sayHello', () => {
vscode.window.showInformationMessage('runExtension!');
const terminal = vscode.window.createTerminal();
terminal.sendText('cd C:/');
});
context.subscriptions.push(disposable);
}