Integrated Terminal Setting VS Code and iTerm returns zsh

You cannot set iTerm as the integrated terminal for VS Code. I have explained below why.

iTerm is not a shell but a terminal emulator which in your case is running the zsh shell.

I believe you are confusing the terms Shell and a terminal emulator.

iTerm is a terminal emulator. Some examples of terminal emulator are Gnome terminal, Guake, Xterm etc. They provide a display to the shell which is installed in the OS.

A shell is a command line interface that reads and interprets your commands. Examples of shell are bash which comes by default in Linux and other shells like zsh, fish, sh.

Visual Studio Code integrated terminals use the shell itself and not the terminal emulator. In Windows OS the distinction between shell and terminal emulator is not present so Powershell and Command Prompt are both the shell and the emulator.

But for Unix like OSes there is a distinction.

I believe you use iTerm as the terminal emulator and the shell used is zsh (pronounced Z Shell which is a fork of bash Bourne Again Shell).

Here is a wikipedia article on Unix Shell. This talks about what a Unix shell really is.

This link is about Terminal emulators which also talks about the history of terminals.

This link gives a list of terminal emulators that are available. iTerm is a terminal emulator for Mac OS.


Though you can customize your normal terminal using this

then later remember to go to settings then assign the new configurations to override the default ones

"terminal.external.osxExec": "iTerm.app",

"terminal.integrated.fontFamily": "Meslo LG S DZ for Powerline",

"terminal.explorerKind": "external",