LoginSignup
0
0

More than 1 year has passed since last update.

VS Code拡張機能でファイルをドラッグアンドドロップしたエディタを特定する方法

Posted at

TL;DR

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: ""
        };
    }
}
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0