File | Settings | Tools | Terminal for Windows and Linux PhpStorm | Preferences | Tools | Terminal for macOS Ctrl+Alt+S
While the default shell in PhpStorm't terminal (Alt+F12) works fine, many developers prefer to use their favorite shell. For example, Windows users may want to use PowerShell or Cmder, Linux and macOS users may want to use zsh instead of the default terminal shell. On this settings page, you can customize which shell will be used in the terminal.
Item
Description
Start directory
Specify the working directory where the terminal will be launched.
Shell path
Specify the shell that will run by default. Here are some values for different shells:
PowerShell: powershell
Cmder: "cmd" /k ""\vendor\init.bat"" (note the CMDER_ROOT environment variable has to be set)
Cygwin: "C:\cygwin\bin\bash.exe" --login -i
Zsh: /bin/zsh
Bash: /bin/bash (or bash for Windows: bash.exe)
Tab name
Specify the default name of a new session tab. Note that a session tab can be renamed.
Audible bell
If this option is selected, the console plays the bell sound on incoming escape sequence.
Close session when it ends
If this option is selected, the current session ends automatically when the corresponding process ends (for example, by kill).
Mouse reporting
If this option is selected, the embedded local terminal supports the mouse pointer.
Copy to clipboard on selection
If this option is selected, the text selected in the Terminal is automatically copied to clipboard.
Paste on middle mouse button click
If this option is selected, you can paste clipboard contents by clicking the middle mouse button.
Override IDE shortcuts
If this option is selected, the Terminal tool window handles keyboard shortcuts differently from PhpStorm. If this check box is cleared, the PhpStorm key bindings are used.
Shell integration
If this option is selected, the terminal first loads a custom rc config file (located in the terminal folder under plugins of PhpStorm distribution) which provides an additional set-up, and then the user's rc file.
Note that presently shell integration works for Bash/sh (bashrc), zsh(zshrc) and fish shell (config.fish).