export class HogehogeDropProvider
implements vscode.DocumentDropEditProvider
{
async provideDocumentDropEdits(
_document: vscode.TextDocument,
): Promise<vscode.DocumentDropEdit> {
// 開いているエディタの中から、ドロップ先のエディタを特定する
// プロバイダが返してきたTextDocumentの内容と一致するエディタを見つけてくる
// 複数あるときは先頭のエディタをドロップしたエディタとする
const editor = vscode.window.visibleTextEditors.filter(v => v.document === _document)[0];
// ドロップ位置とファイル終端に同時に挿入する
editor?.edit((editBuilder: vscode.TextEditorEdit) => {
// ファイルの末尾に挿入する。
editBuilder.insert(new vscode.Position(editor.document.lineCount, 0), "ここがファイルの終端");
});
// 上の処理で挿入位置やactiveEditorがずれるのでここでは空文字列を返しておく
return {
insertText: ""
};
}
}