There's a VS Code API that was added a while ago which we could take advantage of to figure out which shell would be launched by opening a terminal #6050 and the upstream VS Code issue microsoft/vscode#75091.
The recommendation in the vscode-python issue was to drop all of our existing shell detection mechanisms in favour of the VS Code API one, however we still have them:
|
serviceManager.addSingleton<IShellDetector>(IShellDetector, TerminalNameShellDetector); |
|
serviceManager.addSingleton<IShellDetector>(IShellDetector, SettingsShellDetector); |
|
serviceManager.addSingleton<IShellDetector>(IShellDetector, UserEnvironmentShellDetector); |
|
serviceManager.addSingleton<IShellDetector>(IShellDetector, VSCEnvironmentShellDetector); |
➡️ Are they still necessary, all of them?
Second, shells and terminal profiles are going to change (see terminal tabs).
➡️ What does that mean for us?
There's a VS Code API that was added a while ago which we could take advantage of to figure out which shell would be launched by opening a terminal #6050 and the upstream VS Code issue microsoft/vscode#75091.
The recommendation in the vscode-python issue was to drop all of our existing shell detection mechanisms in favour of the VS Code API one, however we still have them:
vscode-python/src/client/common/serviceRegistry.ts
Lines 201 to 204 in 8661ba7
➡️ Are they still necessary, all of them?
Second, shells and terminal profiles are going to change (see terminal tabs).
➡️ What does that mean for us?