Skip to main content
Fresh includes a powerful built-in terminal emulator that seamlessly integrates with your editing workflow.

Opening a Terminal

1

Via Command Palette

Press Ctrl+P and search for “Open Terminal”
2

Multiple Terminals

You can open multiple terminal tabs and switch between them like regular file buffers

Terminal Modes

The terminal has two modes, indicated in the status bar:
Status bar shows: TerminalYour keyboard input goes directly to the shell. This is the default mode for interacting with the terminal.

Switching Between Modes

Toggle between terminal mode and scrollback mode:
Ctrl+Space   Toggle between terminal and scrollback mode

Keyboard Capture

By default, most editor keybindings (like Ctrl+P for command palette) still work in terminal mode. If you need to send these keys to the terminal instead:
1

Enable Keyboard Capture

Press F9 to toggle keyboard capture mode
2

Captured Mode Behavior

When keyboard capture is enabled:
  • Status bar shows “Terminal [capture]”
  • All keys except F9 are sent to the terminal
  • The UI dims (menu bar, status bar, other splits) to clearly show focus is exclusively on the terminal
3

Disable Capture

Press F9 again to return to normal terminal mode
In keyboard capture mode, all editor shortcuts are disabled except F9. This ensures commands like Ctrl+C are sent to the terminal process instead of the editor.

Scrollback Navigation

In scrollback mode, you can use standard editor navigation:
KeyAction
Arrow keys / Page Up / Page DownScroll through output
Ctrl+HomeJump to the beginning of scrollback history
Ctrl+EndJump to the end
Ctrl+FSearch through terminal output

Tips and Features

Terminal scrollback is preserved across editor restarts, but running processes are terminated.
Use fresh -a to start in session mode, then detach with Ctrl+Shift+D to keep terminal processes running in the background. Reattach with fresh -a.See Session Persistence for details.
When new output arrives while you’re in scrollback mode, the terminal automatically returns to terminal mode to show the latest output.
Disable this behavior with the terminal.jump_to_end_on_output config option.
The terminal automatically resizes when you resize the editor or split panes.

Windows Support

Fresh supports full terminal emulation on Windows 10 (1809+) via ConPTY.
  • PowerShell is preferred over cmd.exe
  • Stdin piping works: type file | fresh

Build docs developers (and LLMs) love