1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
|
== snap boot grid=120x67 cursor=7,3
|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/builtins/cwd/notes.txt Save Tty Collapse Del
| 1 line 1
| 2 line 2
| 3 line 3
| 4 line 4
| 5 line 5
| 6 line 6
| 7
== snap window-group grid=120x67 cursor=7,10
|9: /tmp/pardes-snap/builtins/cwd/+Help Save Tty Collapse Del
|10: 1 pardes builtins under SPC w
|11: 2
|12: 3 SPC w h Left C-w h, C-w left
|13: 4 SPC w j Down C-w j, C-w down
|14: 5 SPC w k Up C-w k, C-w up
|15: 6 SPC w l Right C-w l, C-w right
|16: 7
== snap docs-group grid=120x67 cursor=7,10
|10: 1 pardes builtins under SPC h
|12: 3 SPC h c Changelog topbar
|13: 4 SPC h m Messages
|14: 5 SPC h t Tutor topbar
|15: 6
|16:
== snap tutor-from-index grid=120x67 cursor=7,16
|10: 1 pardes builtins under SPC h Tutor
|15: /Tutor Save Tty Collapse Del
|16: 1
|17: 2 PARDES TUTOR
|18: 3 tmux + vi + acme, from scratch.
|19: 4
|20: 5 The model is acme's: EVERYTHING is text, editable and executable
|21: 6 the same way. Modal editing (helix-style) lives on top of that.
|22: 7 Press j until you reach the introduction.
|23: 8
|24: 9
|25: 10 =================================================================
|26: 11 = INTRODUCTION =
|27: 12 =================================================================
|28: 13
|29: 14 A pane is just text on screen. There is no separate "buffer" type —
|30: 15 what you see is what you edit. Some panes happen to be live terminals;
|31: 16 most are text you move a cursor over. Modal editing is layered on top.
|32: 17
|33: 18 Three modes (the BOX at the pane's top-left corner shows which):
|34: 19 NORMAL block cursor, keys move and edit. The box is BLANK.
|35: 20 ^ INSERT keys type text at the cursor.
|36: 21 $ TTY keys go straight to the shell. (terminals only)
|37: 22
|38: 23 A bare `pardes` opens one shell already in TTY. Give it a file or a
|39: 24 directory and you start in NORMAL.
|40: 25
|41: 26 SIX PARTS, ordered by what is most different from editors you know:
|42: 27 1 — THE MOUSE. Acme's three buttons; nothing like vim.
|43: 28 2 — PANES. Moving between them. Esc, Shift-Esc, Ctrl-w.
|44: 29 3 — THE TTY. Raw input, prompt-aware Esc, and the mode tag.
|45: 30 4 — DETACHED. The core outliving the terminal showing it.
|46: 31 5 — THE KEYS. Helix-style modal, and where it differs.
|47: 32 6 — THE REST. PDFs, images, the language backend, scripting.
|48: 33
|49: 34 PRACTICE BLOCKS (part 5): the "# keys:" line lists keystrokes
|50: 35 (space-separated; esc/enter/bs are special, the rest type each char).
|51: 36 The lines under "# before" are what you practice on; "# after" is what
|52: 37 you should end up with. They are here to be TYPED and nothing runs
|53: 38 them. What pins the real behaviour is `zig build hxdiff`, which replays
|54: 39 test/hxcases against goldens recorded from a real helix, and
|55: 40 `zig build hxparity`, which runs each case twice — once in a file pane,
|56: 41 once in a shell — and demands the two agree.
|57: 42
|58: 43 Hold j to reach part 1.
|59: 44
|60: 45
|61: 46 =================================================================
|62: 47 = PART 1 — THE MOUSE (acme chording) =
|63: 48 =================================================================
|64: 49
|65: 50 Three buttons, three verbs:
|66: 51 LEFT select, and focus the pane. Also pins the cursor.
|