summaryrefslogtreecommitdiff
path: root/next-steps.txt
blob: 09a48f08cb8eff4f2e577e23ba19ed629c1c81ad (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
- clean the workspace directory at .. (we may just leave a single directory (don'tmess with the old change))
- after pardes exists on the tty, the tty should be clean and not left with any garbage (right now the spawner shell gets kinda broken)
- sometimes when I select something by mistake instead of clicking the editor crashes (this seems to happen only on paths?)
- during layout when opening or closing a pane it should only expand/split a single pane (it's chosen as a parent, child or something, the heuristic is just to be the closest one the most important thing is that it should't change the layout of the whole column) and right now there are some cases where this isn't the case.
- the tty platform renders highlighted text way slower than it should be (this is noticeable when scrolling), but the gui version doesn't seem to have this issue. make tracy tracing work and use the cli version of the tool to understand what's happening (the zig compiler also uses tracy so this might be as simple as adding some flag to build.zig or something).
- only on ghostty the middle mouse click doesn't work
- make pardes work on macos and other posix compliant targets
- mode indicators: three characters, uppercase
- the cursor's line number in the gutter gets a different bg/fg (tagline style)
- opening a file at a specific line centers the line if possible
- keyboard movement implements scroll_offset (vim/helix scrolloff)
- generalize n/N: look the next/prev tty line that yields a look result (search becomes a special case)
- dumps go to a per-user data dir (zig stdlib app-data path), not /tmp, with timestamped filenames so they never overwrite; new Restore builtin loads a dump file (first argument)
- horizontal scroll: no scrollbar, just horizontal mouse wheel + modal movements (scrolloff applies); minimal, goal is only to read the whole text
- cursor looks different in insert vs normal mode, in all pane types (tty and file); the tagline is always insert mode (normal makes no sense there)
- crash: drainEffects assert(ptys[sp.pane]==null) — spawn reusing a pane id whose old pty hasn't EOF'd yet
- initial layout: one pane, not three
- focusing a file at a line also moves the modal cursor to that line (not just the scroll)
- let's implement file searching, pardes philosophy is that what you do and the texts you read are sacred, so we don't want to implement file search with popups or information that will just dissapear. How I want you to do this is to: when I search something with / (in a text file, leave tty for later), we'll call grep -n on the current file with the search text. so far very simple, the neat thing is when I press n/N pardes will use the semantic tty access we have to select grep's result next line up or down and LOOK it (note we aren't introducing a new search concept or anything, just hooking modal editing, with semantic tty info from ghostty, and look semantics from acme).