diff --git a/src/features/common/shellDetector.ts b/src/features/common/shellDetector.ts index aeb51031..a62c85cc 100644 --- a/src/features/common/shellDetector.ts +++ b/src/features/common/shellDetector.ts @@ -125,28 +125,33 @@ function identifyShellFromSettings(): TerminalShellType { } function fromShellTypeApi(terminal: Terminal): TerminalShellType { - switch (terminal.state.shellType) { - case TerminalShellTypeVscode.Sh: - case TerminalShellTypeVscode.Bash: - return TerminalShellType.bash; - case TerminalShellTypeVscode.Fish: - return TerminalShellType.fish; - case TerminalShellTypeVscode.Csh: - return TerminalShellType.cshell; - case TerminalShellTypeVscode.Ksh: - return TerminalShellType.ksh; - case TerminalShellTypeVscode.Zsh: - return TerminalShellType.zsh; - case TerminalShellTypeVscode.CommandPrompt: - return TerminalShellType.commandPrompt; - case TerminalShellTypeVscode.GitBash: - return TerminalShellType.gitbash; - case TerminalShellTypeVscode.PowerShell: - return TerminalShellType.powershellCore; - case TerminalShellTypeVscode.NuShell: - return TerminalShellType.nushell; - default: - return TerminalShellType.unknown; + try { + switch (terminal.state.shellType) { + case TerminalShellTypeVscode.Sh: + case TerminalShellTypeVscode.Bash: + return TerminalShellType.bash; + case TerminalShellTypeVscode.Fish: + return TerminalShellType.fish; + case TerminalShellTypeVscode.Csh: + return TerminalShellType.cshell; + case TerminalShellTypeVscode.Ksh: + return TerminalShellType.ksh; + case TerminalShellTypeVscode.Zsh: + return TerminalShellType.zsh; + case TerminalShellTypeVscode.CommandPrompt: + return TerminalShellType.commandPrompt; + case TerminalShellTypeVscode.GitBash: + return TerminalShellType.gitbash; + case TerminalShellTypeVscode.PowerShell: + return TerminalShellType.powershellCore; + case TerminalShellTypeVscode.NuShell: + return TerminalShellType.nushell; + default: + return TerminalShellType.unknown; + } + } catch { + // If the API is not available, return unknown + return TerminalShellType.unknown; } }