Interaction line
Development reference · View source
The interaction line teaches each command as you use it:
| Result | Echo |
|---|---|
| No more specific result | The typed keys and the command description: g l (Move to line end) |
| A useful result | The result: Space e (opened /path/to/dir), :c (closed file) |
| Failed | binding (action · failed: message) |
| Unavailable | binding (action · unavailable: message) |
| Unbound keys | No binding: g z |
- Commands that wait for a character keep showing the actual keys typed,
including configured bindings and counts, and say what to type next.
m rasks for the existing pair;m r (asks for its replacement. Find, replace, surround, register, and named-macro commands show this guidance until their last operand arrives.Esccancels the pending input. Two-key jump labels also show the first label key while waiting for the second; completion, cancellation, and invalid input leave visible feedback. - An active prompt uses the line temporarily. Errors, warnings, service output, and other notifications never replace the prompt or the echo.
- A failure carries the outcome’s own message, not only the fact that it failed.
- A message longer than the space left, or spanning several lines, is cut to
fit and ends with
....:notkeeps the complete text. A prompt being typed is never cut, since its cursor position depends on the full text. - A mistyped sequence (
No binding: g z) is also shown in the key hints, but is not kept as a notification: it says nothing worth reading later, and a burst of mistyping would otherwise be the largest and only unbounded source of unread notifications.
Pasting into prompts. Single-line prompts and filters reject a whole paste that contains control characters, including a trailing newline or tab.
- The text, cursor, and selected result stay unchanged, and the prompt shows
Control characters are not allowed; nothing was inserteduntil the next input. - This applies to the command line, search and rename prompts, Finder and list queries, session-directory queries, and typed Git confirmations.
- Literal backslash sequences such as
\nare ordinary prompt text. - Buffers and terminal sessions still accept multiline paste. Terminal paste
actions, including macOS
Cmd-v, keep line breaks even when the terminal sends them as carriage returns, and keep existing LF and CRLF separators.