A modal text editor in Rust

See the cut before you make it.

Neovim's hands · Helix's spine · rootle's eyes · GitLens' memory

Latest release 23 languages · remote workspaces

Get started

Install your way.

Choose a prebuilt binary or build from source with your usual toolchain.

$ curl -fsSL https://strop.dev/install.sh | sh
Linux · macOS Apple Silicon

Prebuilt static binary · Linux x86_64/aarch64 · macOS arm64 · SHA-256 verified · download tarballs

Already installed? strop update — downloads, verifies and extracts entirely in Rust, then swaps itself.

In the terminal

See strop in action.

Operator-pending preview, pickers and Git hunks in the editor.

strop demo showing operator-pending preview, picker and Git hunks

Beyond the local buffer

Your workspace, within reach.

Remote files and containers

Press Space o for SSH destinations, a new host, or running containers. Everything opens in real buffers. Remote files start read-only; :remote edit verifies a full snapshot and enables editing, then :w saves through an owned atomic transaction.

Attach a container to browse immediately, then use :container-worker for verified Git, LSP and search services. Content and metadata conflicts preserve local edits; unconfirmed remote saves use explicit :remote verify.

SSH usage · Container workspaces

Code, including the code in your docs

Bundled Tree-sitter grammars highlight labelled Markdown fences and documentation examples across languages. Comment prefixes stay comments; a Python example need not live in a Python file.

Structural indentation aligns paired delimiters and closing braces with their source context. Worker-owned syntax analysis keeps large files out of the keystroke path.

Documentation examples · Indentation

Make it yours

Pick a palette.

The site and editor scene re-theme live. Your choice is remembered on this device.

The demo GIF will re-render in your pick once the forge ships — the same eleven palettes rootle.dev offers, plus our own.