usecase

  • The aim of this explanation💡 is the difference between 1) and 2)

powershell_vs_integrated_console

  • Encountered while setting up Pester Unit Testing Framework in VSCode

1. Shell in the integrated terminal

  • this OS shell that you can default to (pwsh, powershell, bash, …)
  • it has no special integration with the files being edited in the editor
  • they show by their executable file name in the dropdown list in the integrated terminal’s toolbar, e.g. pwsh

2. Powershell Integrated Console

  • special shell that comes with PowerShell extension
  • offers integration with the code being edited
  • provides linting and debugging support

3. Select Default shell for integrated console

  • Within Powershell Integrated Console you can choose what version of PowerShell you default to
    • Core
    • Windows Powershell
  • This config is not intuitive at all — my default profile takes ~5 seconds to load, not acceptable in for development there I need to restart sessions regularly when writing scripts
Use the following steps to choose the version:

* Open the Command Palette on Windows or Linux with Ctrl+Shift+P. On macOS, use Cmd+Shift+P.
* Search for Session.
* Click on PowerShell: Show Session Menu.
* Choose the version of PowerShell you want to use from the list, for example PowerShell Core.

choose_default_integrated_console_version

— From Using Visual Studio Code for PowerShell Development - PowerShell @ Microsoft Docs

4. list used sources