321
322
spawnTerminal(spawner: typeof cp, configuration: IExternalTerminalSettings, cwd?: string): Promise<void> {
323
>
const execPromise = configuration.linuxExec ? Promise.resolve(configuration.linuxExec) : LinuxExternalTerminalService.getDefaultTerminalLinuxReady();
externalTerminalService.ts
324
>
325
>
return new Promise<void>((c, e) => {
326
>
execPromise.then(exec => {
327
>
const env = getSanitizedEnvironment(process);
328
>
const basename = path.basename(exec).toLowerCase();
329
>
const args = basename === 'ghostty' && cwd ? [`--working-directory=${cwd}`] : [];
330
>
const child = spawner.spawn(exec, args, { cwd, env });
331
>
child.on('error', e);
332
>
child.on('exit', () => c());
333
>
});
334
>
});
335
>
}
336
}
337