ttt

TTT Editor (Terminal Text Tool): A real alternative to VS Code, Zed, and Sublime that runs in your terminal. A TUI that feels like GUI. Single binary, zero conf

What is ttt?

TTT Editor (Terminal Text Tool): A real alternative to VS Code, Zed, and Sublime that runs in your terminal. A TUI that feels like GUI. Single binary, zero config.

Overview of ttt

What it is

TTT Editor (Terminal Text Tool) is a terminal-based text editor described as a TUI that feels like GUI. It is a single Go binary with zero configuration. The README states it is 'A real alternative to VS Code, Zed, and Sublime that happens to run in your terminal.'

Key features

  • Syntax highlighting for 124 languages using a pure Go port of VS Code's TextMate engine.
  • Multi-cursor editing: select next occurrence (Ctrl+D), select all occurrences (Ctrl+K L), Alt+Click to add cursors.
  • LSP-powered auto-completion with live filtering, debounce, and auto-import support.
  • Diagnostics with inline squiggles, problems panel, hover popup, and status bar counts.
  • Git integration with staging workflow (spacebar to toggle stage/unstage, 'a' to stage all, 'u' to unstage all) and inline commit message input.
  • Multi-folder workspace support: open multiple directories in a single session, each as a collapsible group in explorer, search, and changes panels.
  • File explorer with multi-root tree, context menu for New File, New Folder, Rename, Delete, and auto-reveal active file.
  • Search powered by ripgrep with smart-case matching, include/exclude glob filters, and results grouped by file.

Use cases

  • Opening a project directory or a single file for editing.
  • Opening multiple directories as a multi-root workspace.
  • Opening a file at a specific line and column (e.g., ttt /path/to/file.go:42:5).
  • Opening a pull request review via URL (e.g., ttt https://github.com/owner/repo/pull/123).
  • Using piped input: git diff | ttt to open diff output in an unsaved tab.
  • Git staging, committing, and viewing changes in the sidebar.
  • Searching across workspace folders using ripgrep.

Getting started

Prerequisites: Git and ripgrep (rg) are required for source control and workspace search features. Quick install on macOS using Homebrew: sh brew tap eugenioenko/ttt brew trust eugenioenko/ttt brew install ttt Quick install on Linux: sh curl -sSfL https://raw.githubusercontent.com/eugenioenko/ttt/main/install.sh | sh For other platforms (Windows via scoop, Arch Linux via AUR, NixOS, Go install, or building from source), see the repository README.

License and pricing

The project is open source under the MIT license. Pricing is not stated; it is open source.

Based on the project's public README and repository metadata.

Add this badge to your README

Featured on YunoDB Badge styles & help

Maintain this project? Show that it is featured on YunoDB.

Markdown[![Featured on YunoDB](https://yunodb.com/badge/eugenioenkottt.svg)](https://yunodb.com/tools/eugenioenkottt?utm_source=github&utm_medium=badge)
HTML<a href="https://yunodb.com/tools/eugenioenkottt?utm_source=github&utm_medium=badge"><img src="https://yunodb.com/badge/eugenioenkottt.svg" alt="Featured on YunoDB" height="20"></a>