Black Lives Matter. Support the Equal Justice Initiative and read our statement here.


Terminal with autocompletion.


A terminal with autocomplete


There have been many shells (bash, zsh, fish) and many terminal emulators (iTerm, Hyper, Windows Terminal) created. But not one that tried to combine these two. Termy is a terminal with a built-in shell that tries to combine these two worlds and provide the user with a better experience.


Termy is made up of cells. This user interface might be familiar to those who've used Jupyter Notebook before.

  • Two things make up a cell: the prompt and the output. Input goes into the prompt and the output will be shown right below the prompt.

  • You can reuse cells. After your cell finished running, you can run it again with the same or a different command.

Note: to change directories, enter the path of the directory directly - without cd. There will be a fallback cd command in the future.


How does this work?

Instead of loading your shell at start, Termy spawns a new "shell" every time you run a command.


To provide VSCode style autocompletions in the terminal we need know the current state of the shell. But since the shell handles everything internally, external programs don't know what the current state is. Termy goes around this issue by separating the input and output layer and holding its own state.

But this approach also has its downsides

Since Termy doesn't use the shell as intended, many of the built-in features will stop working (installed plugins, user config).

But don't worry: soon there will be an option to configure your settings and add plugins!

What about performance?

Electron apps are not slow by default. By making performance a priority they can feel just as fast as a native app.

Currently I'm focused on features that make Termy unique but before for the v1.0 there will be a performance overhaul. That said, Termy is pretty fast at the moment. Also, the code that interacts with your system is in Rust, which does not have a reputation of being slow.

Does it have TRUECOLOR?


Built-in commands

Command Description
edit Edit files using VSCode's editor
view Lists all the files in a directory
theme Change theme (#000 or #fff)
cd Fallback cd command (Coming in v0.3.1)

Keyboard Shortcuts

Note: Mod stands for on Mac and Ctrl on other platforms.

Action Shortcut When
Run Cell Enter Input Focused
Insert Suggestion & Run Mod+Enter Input Focused
Accept or Trigger Suggestion Tab Input Focused
Save File Mod+S Edit Focused
Run Cell Mod+R
Stop Cell Mod+S
New Cell Mod+N
Remove Cell Mod+W
New Tab Mod+T
Remove Tab Mod+Shift+W
Focus Next Cell Mod+J
Focus Previous Cell Mod+K
Focus Next Tab Mod+Tab
Focus Previous Tab Mod+Shift+Tab
Focus Tab (1-9) Mod+(1-9)
Focus Input Mod+I
Focus Output Mod+O

Something missing? Edit this app.

Keyboard Shortcuts

Key Action
/ Focus the search bar
Esc Focus the search bar and cleans it
Select the next search result
Select the previous search result
Enter Open the selected search result
cmdEnter Ctrl+Enter Open the selected search result in a new tab