What Runyte does
Development reference · View source
Editing
- Normal, Insert, Replace, Select, and Command modes
- Multiple selections with Helix-style multi-cursor commands
- Counts, named registers, and recordable keyboard macros
- Rope-backed buffers with transactional, single-step multi-cursor undo
- Undo/redo, yank/paste, dirty-buffer protection, and save-as
- Operating-system clipboard yank and paste
- Structural Tree-sitter selection, text objects, outlines, syntax-aware indentation, and pane-local code folding
- Word completion from every open buffer, including the explorer, with no language server and no trigger key required
- Unicode-aware buffer positions and terminal widths
Languages
- Tree-sitter syntax highlighting for Python, Rust, Swift, C, C++, JavaScript, TypeScript, TSX, HTML, CSS, Go, Bash, Java, Kotlin, SQL, Lua, C#, Zig, CMake, Protobuf, Make, INI, Markdown, TOML, YAML, JSON, JSONC, Dockerfile, XML, HCL/Terraform, Ruby, PHP, and Elixir
- Language servers: diagnostics, completion, hover, signature help, goto, references, rename, code actions, formatting, and symbol pickers
- Markdown documents rendered as formatted text on
?, with terminal bold, italic, underline, and strikethrough
Files and navigation
- Oil-style editable directory explorer plus a unified Finder
- Editable directory buffers with explicit filesystem plan confirmation
- Filterable open-buffer picker and workspace-wide text search
- Multicursor search over the buffer or a selection, with literal and regular-expression flavours
- Per-pane jumplists with reversible cross-buffer navigation
- Registry-driven navigation, editing, search, and view-specific commands
- Side-by-side comparison of any two buffers, aligned line for line and scrolled together
- Binary files handed to a program you name, with recent choices remembered
Layout and display
- Arbitrarily nested vertical and horizontal splits with recency-aware directional focus
- Shared buffers between split panes
- Configurable Unicode-aware soft wrapping and visual-line movement
- Soft-wrap continuation arrows in the line-number gutter
- A centred, editable writing viewport toggled with
:zen, and a plain maximized pane toggled with:fullscreen - Which-key-style hints for every registered command family, plus exact completed-command descriptions and results on the interaction line
- Differential, flicker-free terminal rendering through Ratatui
- Fold-aware mouse cursor placement, drag selection, wheel scrolling, and pane resize
Git
- Asynchronous Git status, gutter marks, changed-file views, file/hunk/safe selected-line staging, commit, pull/push, branches, worktrees, history, blame, stashes, and diffs
Terminals and sessions
- Terminal panes running any interactive program — a shell,
htop,vim, a coding agent — with scrollback, modal navigation over it, and a command that sends a buffer’s selection to one as a single paste - Optional
--muxlocal workspace persistence for unsaved editor, language-service, and live terminal-session state $EDITOR-compatible--waitrequests with revision-safe local edits
Configuration
- YAML configuration
- A registry-backed settings browser with previews and atomic YAML updates
- Built-in and user-defined themes, browsable and configurable under
:theme - A bounded, searchable notification center under
:notifications/:not