summaryrefslogtreecommitdiff
path: root/src/tutor.txt
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-07-26 18:36:08 -0300
committerGabriel Schneider <[email protected]>2026-08-01 15:02:07 -0300
commite381c96a08f08e03a340a24acb3fe5fe1fca51be (patch)
treedb0ef0cc2652d2797b9e2f73709db601816436d1 /src/tutor.txt
parenta4a2a96d023a5977ae7a7d07c7ee9e4fe38e9c60 (diff)
downloadpardes-e381c96a08f08e03a340a24acb3fe5fe1fca51be.tar.gz
pardes-e381c96a08f08e03a340a24acb3fe5fe1fca51be.zip
adding better search to tty mode
Diffstat (limited to 'src/tutor.txt')
-rw-r--r--src/tutor.txt67
1 files changed, 57 insertions, 10 deletions
diff --git a/src/tutor.txt b/src/tutor.txt
index cf9ecab0..65788c70 100644
--- a/src/tutor.txt
+++ b/src/tutor.txt
@@ -25,8 +25,8 @@
This tutor is in THREE parts, ordered by what's most different from
editors you may know:
PART 1 — the MOUSE. Acme's three buttons; nothing like Vim/Helix.
- PART 2 — the TTY. A terminal is just a pane; Ctrl-b drops into it
- by default.
+ PART 2 — the TTY. A terminal is just a pane; Ctrl-b (or Shift-Esc)
+ drops into it.
PART 3 — the KEYS. Helix-style modal (with the Pardes differences).
PRACTICE BLOCKS (part 3): the "# keys:" line lists keystrokes
@@ -121,9 +121,27 @@
Kill Newcol Tutor Debug Colors NextColor
Middle-click "Newcol" for a new column, "Tutor" to spawn this tutor,
"Kill" to quit; Debug/Colors/NextColor toggle the stats overlay, the
- syntax/ansi recolor, and the theme.
+ syntax/ansi recolor, and the theme. Every one of them also has a KEY
+ PATH under SPC (part 3.7): SPC ? lists the lot, "Help" included.
Right-click a directory in any body to open a terminal there.
+ SEARCH: `/` in normal mode types a pattern into that pane's own tag (it
+ stays visible while you type; Esc abandons it). Enter searches the pane
+ — a file's text, a shell's scrollback, anything — for the pattern, plain
+ and case-insensitive, and writes one row per hit into a "+Search" pane.
+ That is an OUTPUT BUFFER: a file pane with no file behind it, so it has
+ no Save, but everything else about it is an ordinary buffer you can read,
+ edit, select and look in. `n`/`N` step the rows and look each one, so the
+ view follows along. Right-clicking a word that names no file searches for
+ it the same way — acme's button 3 — everywhere except a shell in tty mode,
+ where the click belongs to the program on the other end. On a shell with no
+ search armed, n/N instead step the lookable tokens in its output.
+ A hit in a file reads `path:LINE:COL`, the ordinary look target. A hit in
+ a shell or an output buffer has no file to name, so it reads `@pN:LINE:COL`
+ — pane N, line LINE, column COL. Looking either one goes there; the column
+ is optional (`main.zig:100`, `@p3:12`) and you can type one yourself
+ anywhere text lives.
+
LAYOUT: columns split the screen; windows stack within a column. Panes
abut with no wasted gap — a pane's own trailing edge (its last column, or
last row above the next tag) IS the resize handle: hover it and a dashed
@@ -165,8 +183,10 @@
TTY (TTY) the REAL shell — prompts + typed input shown, and keys
go straight to the pty as terminal input.
- ESC: insert -> normal. (Esc never reaches tty.)
- Ctrl-b: toggles TTY on a terminal by default — the ONLY way in or out.
+ ESC: insert -> normal. (A plain Esc never reaches tty.)
+ Ctrl-b: toggles TTY on a terminal by default; SHIFT-ESC is the same
+ toggle, where the host reports modifiers on Escape. Those are
+ the ONLY ways in or out.
Use `pardes --tty-toggle=g` (or another letter) to make Ctrl-g
the toggle instead. Entering is tty-native: if the shell is at
a prompt and your modal cursor sits on the input line, it first
@@ -201,9 +221,9 @@
on whichever selection is active (else the current line).
- NO verb+noun (Vim's dw, cw). Motions only MOVE. To delete a word,
select it (`v` then motions, or `x` for whole lines) then `d`.
- - ESC never reaches tty; it only does insert -> normal. Dropping a
- terminal into the live shell is the tty toggle (Ctrl-b by default;
- see Part 2).
+ - A plain ESC never reaches tty; it only does insert -> normal.
+ Dropping a terminal into the live shell is the tty toggle (Ctrl-b
+ by default, or Shift-Esc; see Part 2).
- Enter / Tab in normal mirror the mouse: Enter = look (open the path
under the cursor), Tab = execute. `:` runs a command from the tag
(see Part 1). `u` undo, `U` redo.
@@ -432,6 +452,31 @@
(No practice blocks: these are viewport/layout, not text edits.)
+-----------------------------------------------------------------
+= 3.7 SPC — THE LEADER =
+-----------------------------------------------------------------
+
+ Every builtin has a NAME you can execute anywhere text lives, and a
+ KEY PATH you can press. SPC in normal mode starts the path; the keys
+ you have typed so far show at the right edge of the pane's tag until
+ the sequence fires. Esc abandons it — so does any key that leads
+ nowhere, rather than leaving the next keystroke armed.
+
+ SPC ? Help: every builtin and the keys that run it
+ SPC k Kill (quit) SPC d Del (close this pane)
+ SPC w Save (vim's :w) SPC h t Tutor (this file)
+ SPC c n / c d Newcol / Delcol
+ SPC t d/c/n/r Debug / Colors / NextColor / Crt toggles
+ SPC s d / s r Dump / Restore the session
+
+ `?` works at ANY depth: SPC ? lists everything, SPC h ? lists only
+ what the "h" group holds. Help writes into a "+Help" OUTPUT BUFFER,
+ the same kind of pane "/" search results land in — ordinary text, so
+ the names in it are live: middle-click "Tutor" there and it opens.
+
+ (No practice blocks: these run builtins, not text edits.)
+
+
=================================================================
= SUMMARY =
=================================================================
@@ -446,13 +491,15 @@
LOOK opens URLs or embedded tracked .zig source (read-only)
published TTY dump lists every source; tree-sitter colors it
tag/separator start = left drag; touch HUD requires Debug
- TTY: a terminal IS a pane; Ctrl-b toggles the live shell by default,
+ TTY: a terminal IS a pane; Ctrl-b (or Shift-Esc) toggles the shell,
landing its cursor where you navigated (prompt start if
the input is empty, mid-text otherwise)
KEYS (helix): h j k l w b e 0 $ ^ gg G v x d c y p i a I A o O
u undo U redo Enter=look Tab=execute
: = the tag as a command line (motions, Enter, back)
zt zz zb Ctrl-d/u Ctrl-f Ctrl-w hjkl Alt-n/c
+ SPC = the leader: a key path runs a builtin (SPC ? lists
+ them; SPC k Kill, SPC d Del, SPC w Save, SPC h t Tutor)
vs Helix: no multi-cursor; selection is LINE-first (x), plus v chars.
vs Vim: no verb+noun (dw); motions only move; Esc never reaches tty.
@@ -461,7 +508,7 @@
shell's own prompt to position you precisely.
To spawn THIS tutor again from anywhere: middle-click "Tutor" in the
- top bar (next to Kill / Newcol).
+ top bar (next to Kill / Newcol), or press SPC h t.
Quit the tutor: this is a file pane — `:q` isn't wired; close the
window (middle-click "Del" in its tag), "Kill" (top bar) to quit