From e7bd806c87fd6ec02b5b3820e97ac542788c64df Mon Sep 17 00:00:00 2001 From: Rob Lourens Date: Wed, 11 Jul 2018 20:23:05 -0700 Subject: [PATCH] Text search - format results more nicely --- text-search-sample/src/extension.ts | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/text-search-sample/src/extension.ts b/text-search-sample/src/extension.ts index 5e5323e0..97cd2bb5 100644 --- a/text-search-sample/src/extension.ts +++ b/text-search-sample/src/extension.ts @@ -8,16 +8,25 @@ import * as vscode from 'vscode'; export function activate(context: vscode.ExtensionContext) { const outputChannel = vscode.window.createOutputChannel('Text Search'); + context.subscriptions.push(outputChannel); context.subscriptions.push(vscode.commands.registerCommand('textsearch.doSearch', async () => { const result = await vscode.window.showInputBox(); if (result) { + outputChannel.show(); + + let count = 0; await vscode.workspace.findTextInFiles({ pattern: result }, { }, result => { - outputChannel.appendLine(`${result.uri.fsPath}(${result.range.start.line}, ${result.range.start.character}): ${result.preview.text}`); + count++; + const before = result.preview.text.substring(0, result.preview.match.start.character) + const match = result.preview.text.substring(result.preview.match.start.character, result.preview.match.end.character); + const after = result.preview.text.substring(result.preview.match.end.character); + const annotatedMatchText = `${before}👉${match}👈${after}`; + + outputChannel.appendLine(`${result.uri.fsPath}(${result.range.start.line}, ${result.range.start.character}): ${annotatedMatchText}`); }); - outputChannel.appendLine('\n'); + outputChannel.appendLine(`Found ${count} results`); } - })); }