Editor
A document — a file, a note, a diff, a commit, a pull request — opens as a pane, in the same split grid as the terminals. Fold's editor is a good editor, not an IDE: no language intelligence, ever.
Document panes
- Open a file from the Files pane, from search (⌘P), or from a diff. The first one splits the focused terminal and takes 54% of it. Every later document opens into that same pane — one document pane by default, however many documents you have open.
- Open to the side makes a second one: ⌘-click any row that opens a document, or use Open to the Side in the explorer's file menu or a note card's menu.
- The dock's file group is the one listing of everything open — a tile per document, no tabs. A tile has three states: active (showing in the pane you used last), onstage (showing in another visible pane) and idle (open, not showing).
- A pane holding more than one document says so. Past one document its header wears a count beside the ✕. Click the count and the pane lists what it holds — what it shows, then what it has shown that is still open, each with its own ✕.
- A tile's click tucks its pane and brings it back — there is no minimize. ⌘E tucks every document pane and restores the set.
- ⌘⇧↩ zooms the focused pane to the whole stage; the same key puts the grid back.
- Drag a pane by its header to move it anywhere in the grid; drag any gutter to resize.
- ⌘⇧W closes the document in front — it asks first while the file has unsaved edits. ⌘S saves.
What the editor does
- Syntax colour for the usual languages, through tree-sitter.
- A change gutter: what differs from git HEAD, live as you type.
- Files follow the disk. When an agent rewrites a file you have open, it reloads under you.
- Markdown preview — ⌘⇧M switches a markdown file between source and preview.
- Diffs with clickable line numbers that open the file at that line.
Diffs, commits and pull requests
A change's diff, a commit and a pull request are each their own document, with their own tile. Several stand at once — the dock's file group grows to hold them, and scrolls past six. Opened to the side, they stand side by side. A markdown file inside a diff can be read as rendered writing in place: one toggle on that file's own row, and the code beside it never moves.
A followed diff whose changes are all staged away keeps its pane, showing its "nothing left" state, rather than collapsing the grid under you.
Keys inside the editor
| Key | Does |
|---|
| ⌘C / ⌘X / ⌘V | copy, cut, paste |
| ⌘A | select all |
| ⌘Z / ⌘⇧Z | undo, redo — per file |
| ⌘← / ⌘→ | line start, line end — ⇧ extends the selection on every move |
| ⌘↑ / ⌘↓ | file start, file end |
| ⌘⌫ | delete to line start |