2016-04-19 9 views
1

ビジュアルスタジオコード拡張でキーストロークをキャプチャしたいと考えています。追加または削除された新しいテキストと、ファイル内の変更の位置を知る必要があります。ビジュアルスタジオコード拡張でのキーストロークのキャプチャ

私は、リスナーを登録している:

vscode.window.onDidChangeTextEditorSelection(handleChange) 

と一つ一つのキャレット移動中の更新情報を取得していますが、私は渡されたイベントから追加/削除テキストと位置を取得して苦労しています現在、。私は、ハンドラでこれをやっている:

function handleChange(event) { 
    console.log("Change in the text editor"); 
    for(var i = 0;i < event.selections.length;i++) 
    { 
     var selection = event.selections[i]; 
     console.log("Start- Line: (" + selection.start.line + ") Col: (" + selection.start.character + ") End- Line: (" + selection.end.line + ") Col: (" + selection.end.character + ")"); 
    } 
    console.log(event); 
} 

ドキュメントは、私が必要とする正確に何のように思えるが、私はこれらを受信するためのハンドラを登録する方法がわからないTextDocumentContentChangeEventと呼ばれるものに言及しています。

+0

野生の別の例を見てみましょう。おそらくこれが役に立ちます - https://github.com/Microsoft/vscode-wordcount/blob/master/extension.ts –

答えて

2

私は私の元の質問で問題を発見しました。私は間違った出来事を聞いていた。 TextDocumentContentChangeEventsを返すプロパティと呼ばれるcontentChangesを持ってTextDocumentChangeEventsを取得するには、このコードを使用します

vscode.workspace.onDidChangeTextDocument(handleChange) 

をして、ファイルを変更するたびにTextDocumentChangeEventで呼び出される関数に渡します。

+1

あなた自身の答えを受け入れられた答えとしてマークすることができます。 :) – Gama11

関連する問題