Screen layout
Development reference · View source
session strip (optional, persistent sessions only)
┌ pane title ───────────────┐┌ pane title ───────────────┐
│ gutter │ buffer viewport ││ gutter │ buffer viewport │ editor area
│ │ ││ │ │
└───────────────────────────┘└───────────────────────────┘
global status line
interaction line
| Name | What it is |
|---|---|
| Runyte screen | The complete terminal surface. |
| Editor area | The upper part, holding one or more panes. |
| Pane | A pane border, a pane title in its top border, and a pane body inside it. |
| Gutter | Part of the pane body: line numbers, soft-wrap markers, syntax-fold markers, and Git change marks. |
| Content padding | Optional space in the pane body, used by aligned generated pages. |
| Buffer viewport | Where buffer text is shown and, for editable buffers, changed. |
| Global status line | Mode, workspace directory, active-buffer state, cursor, Git/LSP state, and unread notifications. |
| Interaction line | An active prompt or the last action echo. |
These names are also the vocabulary of help and source documentation, and any
future extension surface must inherit them. The canonical definitions live in
context/reference/ui-vocabulary.md
.
Which surface a task gets depends on its lifetime and interaction, not on the shape of its box:
| Surface | Used for |
|---|---|
| Buffer (or a pane-backed filterable list) | A navigable result. Keeps movement, selection, search, splits, help, and buffer management. |
| Special buffer | Contents Runyte assembles rather than reads as file text: the explorer, config, Git views, notifications, help, the about page. |
| Picker overlay | A transient choose-one request. |
| Context overlay | Assistance tied to a source position. |
| Confirmation overlay | A pending prepared operation. |
| Interaction line | Short scalar input. |
| Input overlay | Richer validated input. |
Special buffers:
- remain full buffers while displayed, may be shared by panes, and may be editable or read-only;
- are retained while clean, up to the eight most recently active. Activating a ninth retires the least recent one once it is detached;
- stay available while dirty, until saved or discarded.
A pathless scratch buffer is ordinary text, not a special buffer.
For example, Space g l opens a Git-log buffer for ordinary browsing, while
Space g f opens a fuzzy commit picker that disappears after one choice. Both
open the same retained special commit-detail buffer when a commit is selected.
Pane titles name the buffer kind:
- ordinary paths are prefixed
[file]; - directory paths are prefixed
[explorer]; - virtual views keep their bracketed names, such as
[git status]and[git branches]; [+]marks unsaved changes and[RO]a read-only buffer.