Integrated Terminal

Slate includes a built-in terminal so you can run commands next to your files. It opens in the bottom panel, starts in your workspace folder, and supports more than one session. This is a desktop feature.

Opening a terminal

Slate has a built-in terminal in the bottom panel, so you can run commands next to your files. Open it from the command palette by running /cmd (also available as /terminal). Type a command after it to run that command immediately in the new terminal.

You can also move focus to the bottom panel straight from the keyboard.

  • CtrlFocus the bottom tools panel, opening it if needed

For more on running commands from the palette, see the command palette.

Running commands

The terminal is a real shell session, so it runs your normal shell, such as bash, zsh, or fish, and behaves like any terminal you are used to. Run a build, check git status, or start a dev server without switching to a separate window.

To build a command across more than one line, insert a newline without running the command, then press Enter to run the whole thing.

  • Newline

Multiple sessions

You can have more than one terminal session open at once. When focus is in the bottom panel, cycle between the tool tabs from the keyboard.

  • CtrlTabCtrlTabMove to the next tool tab
  • CtrlTabCtrlTabMove to the previous tool tab

Each session keeps its own scrollback.

Working directory

A terminal starts in one of your open workspace folders when you have one open, and otherwise in your home folder. See Workspace and Sidebar for how workspace folders work.

Shell integration and click-to-move

Slate adds shell integration for zsh and bash so it knows where your prompt is. With shell integration on, left-clicking inside the current command line moves the cursor to where you clicked, by sending arrow keys to the shell.

It is on by default and can be turned off in Settings, with the “Click to position the cursor” toggle in the Terminal section. Shells other than zsh and bash run normally, just without click-to-move.

Cursor and input settings

The Terminal section of Settings has two controls.

  • A cursor style, which can be block, bar, or underline. The default is bar, and it updates the terminal immediately.
  • The shell-integration toggle described above, “Click to position the cursor”, which is on by default.

Desktop only

The terminal is a desktop feature. It depends on a native shell, which the hosted web build does not have.