From 9f5fff5669782aff41505eefb871c7bea82e9b15 Mon Sep 17 00:00:00 2001 From: Daniel Imms Date: Thu, 3 Oct 2019 09:13:38 -0700 Subject: [PATCH] Add a clear command to extension terminal sample Related microsoft/vscode#81908 --- extension-terminal-sample/package.json | 7 ++++++- extension-terminal-sample/src/extension.ts | 6 +++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/extension-terminal-sample/package.json b/extension-terminal-sample/package.json index adb8dc66..621d56eb 100644 --- a/extension-terminal-sample/package.json +++ b/extension-terminal-sample/package.json @@ -12,7 +12,8 @@ "Other" ], "activationEvents": [ - "onCommand:extensionTerminalSample.create" + "onCommand:extensionTerminalSample.create", + "onCommand:extensionTerminalSample.clear" ], "main": "./out/extension.js", "contributes": { @@ -20,6 +21,10 @@ { "command": "extensionTerminalSample.create", "title": "Extension Terminal Sample: Create" + }, + { + "command": "extensionTerminalSample.clear", + "title": "Extension Terminal Sample: Clear" } ] }, diff --git a/extension-terminal-sample/src/extension.ts b/extension-terminal-sample/src/extension.ts index b4fe75e4..64f96a51 100644 --- a/extension-terminal-sample/src/extension.ts +++ b/extension-terminal-sample/src/extension.ts @@ -3,8 +3,8 @@ import * as vscode from 'vscode'; export function activate(context: vscode.ExtensionContext) { + const writeEmitter = new vscode.EventEmitter(); context.subscriptions.push(vscode.commands.registerCommand('extensionTerminalSample.create', () => { - const writeEmitter = new vscode.EventEmitter(); let line = ''; const pty = { onDidWrite: writeEmitter.event, @@ -34,6 +34,10 @@ export function activate(context: vscode.ExtensionContext) { const terminal = (vscode.window).createTerminal({ name: `My Extension REPL`, pty }); terminal.show(); })); + + context.subscriptions.push(vscode.commands.registerCommand('extensionTerminalSample.clear', () => { + writeEmitter.fire('\x1b[2J\x1b[;H'); + })); } function colorText(text: string): string {