この記事について
概要は
概要のページ
をご確認ください。
この記事で出来ることは、アクティブなエディタを切り替えた時にポップアップに表示するところまでです。
イベントに関して
イベントの概要に関しては、API Patternsの部分に記載があります
基本的なところや命名規則などが記載されています。
また、仕様としては下記に記載されています。
windowなどの各オブジェクトが、イベントを持っています。
これにコールバック関数をかましてやると、該当のイベントを取得する事が可能です。
イベント実装
packeage.json側
※ちょっとここまだわかり切っていないところなのですが…
onComandだとダメな気がするので、onStartupFinishedに変更しています。
extensions.ts側
APIドキュメントに従って、受けたいイベントに対してコールバック関数を実装すればよいです。
アクティブなエディタを変更した際にファイル名と実行した回数を表示するサンプル
例のイベント
コード
let count: number = 0;
let listnerTest: vscode.Disposable;
let showSelectedFileNameInInformation = ( e: vscode.TextEditor|undefined , thisArgs:number = count ): any => {
count++;
vscode.window.showInformationMessage(count.toString());
const filenName:string | undefined = e?.document.fileName;
switch (typeof filenName){
case "string": {
vscode.window.showInformationMessage(filenName);
break;
}
case "undefined": {
vscode.window.showInformationMessage("undefined");
break;
}
}
}
export function activate(context: vscode.ExtensionContext) {
//イベントハンドラ
listnerTest = vscode.window.onDidChangeActiveTextEditor( showSelectedFileNameInInformation )
}