User guide / The screen

Help, hints, and the tutorial

Development reference · View source

CommandWhat it opens
Space ?Contextual help for the current buffer type
:help or :?The general Runyte manual
:help <topic>The manual at a section, such as :help regex, search, mouse, git, sessions, or lsp
:aboutLogo, version, and a short getting-started guide
:tutorialA guided, hands-on introduction
:grammarThe active editing grammar

Key hints

Press a prefix such as g, Space, or Ctrl-w and a popup lists what can follow.

  • The default grammar groups commands under labelled Space namespaces. The popup shows one namespace row at a time, then the namespace’s entries when you enter it.
  • Short keys stay as fast or compatibility bindings. A row naming two keys, such as Space s a, &, runs the same command either way, so the namespace teaches the short spelling rather than hiding it.
  • Bindings added by plugins or configuration under an unlabelled prefix fold the same way: several bindings under Space = appear as one Space = row, named after their shared command name or by how many there are.
  • Space l (Language (LSP)), Space x (Syntax (Tree-sitter)), and Space g (Git) are dimmed with a reason when the service is not ready: no language server, no parser, or no Git / no repository. They stay navigable so each command can explain itself; LSP status and restart can stay usable without an attached document.

In the popup:

  • Ctrl-n and Ctrl-p scroll without affecting the pending keys. In Normal and Select, Up and Down scroll too, unless that arrow completes a binding.
  • Scroll controls appear in the title when the entries do not fit.
  • Up to three columns are used when complete rows fit. Ide-mode and attached persistent clients use the same layout.

Contextual help (Space ?)

  • One document per buffer type, not per mode. Normal and Select bind the same keys, so a text buffer has a single TEXT document describing both.
  • In a plugin view it lists the actions Tab offers there. A plugin that supplies help topics also explains the view’s workflow, such as browsing a table’s rows or inspecting one record.
  • Key lists are read from the keymap when help opens, so they follow your configured bindings. In a read-only view, keys that would only report a refusal are left out.

The generated key lists cover each mode:

  • Normal and Select: buffer-specific keys and Tab actions first, then prefixes whose hint popup teaches the rest, then direct keys grouped as letters and punctuation, Ctrl chords, Alt chords, and named keys. Shifted < and > also carry searchable Shift-< and Shift-> spellings.
  • Insert and Replace: shared keys once, then separate lists for keys that differ. A read-only view says when these modes are unavailable. Terminal Insert lists keys sent to the child and Runyte-owned exceptions separately.
  • Command: prompt controls under their own heading. The command prompt handles these itself, outside the keymap.

Help buffers

  • Both kinds of help are ordinary read-only buffers: they scroll, search, split, and close with q, :c, or Space b c. Nothing is truncated to fit the window, and opening one kind does not replace the other.
  • The about page and help colour section titles, commands, key bindings, file paths, web links, and technical examples with the theme’s syntax colours. They are not Markdown: visible backticks stay ordinary searchable, copyable text, and colouring changes no buffer coordinate and makes nothing clickable.
  • A read-only buffer is marked [RO] in the pane title and the status line, and its help says so: Help · RUNYTE · GIT STATUS · Read-only. The status line describes the buffer on screen; the help title describes the buffer type it is about, so help for an editable type is not titled read-only.

The about page

:about is centred against the pane, not against fixed columns in its text. Resize the window or split the view and the page moves, without a character being rewritten. The space around it is drawn, not stored, so search, scrolling, and clicks land on the text. A page taller than its pane starts at its first row and scrolls like any read-only buffer.

The tutorial

:tutorial opens two ordinary panes: read-only instructions and disposable scratch text.

  • First choice: show Vim-like motion spellings, Helix-like ones, or both. This changes only the spellings in the tutorial, never Runyte’s behavior or keymap.
  • Lessons: modes; selection-first editing with characterwise and x/X whole-line selections; search; multiple carets; Space discovery; Ctrl-w pane commands.
  • Views: scratch, generated, and editable explorer buffers versus terminal pane content. You open the explorer, return with Alt-o, create a terminal, and close that terminal session through its manager.
  • Final lessons: Ctrl-o/Ctrl-i jump history, the ide/mux boundary, and pointers to :help and Space ?.
CommandEffect
:tutorialResume the live lesson
:tutorial resetStart over
:tutorial sessionsOpen the persistent-session lesson directly

Editing grammar

:grammar reports the active Runyte grammar. helix is accepted as a configuration and command alias for runyte.