summaryrefslogtreecommitdiff
path: root/extension/src/activation/activate.ts
diff options
context:
space:
mode:
authorNate Sesti <sestinj@gmail.com>2023-06-15 23:42:25 -0700
committerNate Sesti <sestinj@gmail.com>2023-06-15 23:42:25 -0700
commit1ba5e81852f8af85f0f88536545f075ee45b454b (patch)
treeb939c54c3490521ada2d84e9da9c8f160534b27a /extension/src/activation/activate.ts
parent661ce01334b82a74426f2c30df59318c3e847f4f (diff)
downloadsncontinue-1ba5e81852f8af85f0f88536545f075ee45b454b.tar.gz
sncontinue-1ba5e81852f8af85f0f88536545f075ee45b454b.tar.bz2
sncontinue-1ba5e81852f8af85f0f88536545f075ee45b454b.zip
handle and explain tracebacks
Diffstat (limited to 'extension/src/activation/activate.ts')
-rw-r--r--extension/src/activation/activate.ts32
1 files changed, 32 insertions, 0 deletions
diff --git a/extension/src/activation/activate.ts b/extension/src/activation/activate.ts
index 135a8ec7..77010241 100644
--- a/extension/src/activation/activate.ts
+++ b/extension/src/activation/activate.ts
@@ -8,6 +8,7 @@ import * as path from "path";
import IdeProtocolClient from "../continueIdeClient";
import { getContinueServerUrl } from "../bridge";
import { setupDebugPanel, ContinueGUIWebviewViewProvider } from "../debugPanel";
+import { CapturedTerminal } from "../terminal/terminalEmulator";
export let extensionContext: vscode.ExtensionContext | undefined = undefined;
@@ -47,5 +48,36 @@ export function activateExtension(
);
})();
+ // All opened terminals should be replaced by our own terminal
+ vscode.window.onDidOpenTerminal((terminal) => {
+ if (terminal.name === "Continue") {
+ return;
+ }
+ const options = terminal.creationOptions;
+ const capturedTerminal = new CapturedTerminal({
+ ...options,
+ name: "Continue",
+ });
+ terminal.dispose();
+ });
+
+ // If any terminals are open to start, replace them
+ vscode.window.terminals.forEach((terminal) => {
+ if (terminal.name === "Continue") {
+ return;
+ }
+ const options = terminal.creationOptions;
+ const capturedTerminal = new CapturedTerminal(
+ {
+ ...options,
+ name: "Continue",
+ },
+ (commandOutput: string) => {
+ ideProtocolClient.sendCommandOutput(commandOutput);
+ }
+ );
+ terminal.dispose();
+ });
+
extensionContext = context;
}