summaryrefslogtreecommitdiff
path: root/next-steps.txt
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-07-31 02:59:58 -0300
committerGabriel Schneider <[email protected]>2026-08-01 15:02:08 -0300
commitf2b8a25d0a25df778bce57efa4c2c7282c71893b (patch)
tree9f4c4ad3bddac13e4b32cb984ec390a7430c87e9 /next-steps.txt
parent7022d738dba00049e820e969cabc34ecbeaea465 (diff)
downloadpardes-f2b8a25d0a25df778bce57efa4c2c7282c71893b.tar.gz
pardes-f2b8a25d0a25df778bce57efa4c2c7282c71893b.zip
a new file splits the doc column you were last working in
placeDoc picked its source by SLOT INDEX — it scanned panes from 0 and took the first doc it found — so which column your file landed in depended on internal id allocation, not on where you had been. It now walks the jump stack backwards to the newest live doc pane. No new state: jumps already IS the record of where the keyboard has been, and Pane.serial is already the "this slot was reused" test. The slot-order scan stays as the fallback, deliberately: a restored dump has one jump entry, and if that pane is a shell the stack knows no doc — without the fallback the next file would claim a second column with docs already open. lookpanes moved: a file now lands under the doc that was actually last read rather than under whichever doc happened to hold the lowest pane id. New golden doccol pins the case the line exists for, and it fails at exactly one capture with the walk disabled.
Diffstat (limited to 'next-steps.txt')
-rw-r--r--next-steps.txt2
1 files changed, 1 insertions, 1 deletions
diff --git a/next-steps.txt b/next-steps.txt
index 2718848e..3b00d67d 100644
--- a/next-steps.txt
+++ b/next-steps.txt
@@ -1,6 +1,6 @@
+ All syntatic choices must be centralized in single .zig file: keybindings, syntax for Look, etc; the motivation for this is that those can easilly be changed and tweaked if they're centralized like this and in the process we may cut down some repetition of logic.
+ Carve out and isolate the Output pane as its own semantic entity, right now we are doing specific stuff on the output pane based on the command that opened it, let's make this part of the data structure that represents it, the heuristics for special handling of the output panes will be done by reading the Command that originated it field from itself. Make this centralized on the code so its clear to see and tweak those heuristics.
-- File panes need to split the latest column which a file pane was being used.
++ File panes need to split the latest column which a file pane was being used.
- Add multiple cursor support, and Ctrl-c auto comments. Use the same methodology of running helix in a harness as the oracle for differential testing. Also add regex interactive selection like on helix and the more specific selection semantics, use https://github.com/mnemnion/mvzr for regexes, add it using zig fetch.
+ Add a new builtin that will list all builtins and their respective shortcuts if they have any (note that shortcuts may be spc+... or just keyboard or mouse chords/movements)
- Scrolling on a touchpad moves horizontally accidentally way too much, add some heuristics to prioritize vertical scrolling and make horizontal scrolling work only when the user is a bit more explicit about it - for example by measuring if there was recent high-enough vertical movement, etc.