summaryrefslogtreecommitdiff
path: root/next-steps.txt
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-07-31 00:52:02 -0300
committerGabriel Schneider <[email protected]>2026-08-01 15:02:08 -0300
commita77e342eb7fa4add700a96a661226649e8c4763f (patch)
tree3ad4978cca350090463e58840dc94404ea8a1a33 /next-steps.txt
parentea228d1b832401db8efe33a5db4099ba41d42509 (diff)
downloadpardes-a77e342eb7fa4add700a96a661226649e8c4763f.tar.gz
pardes-a77e342eb7fa4add700a96a661226649e8c4763f.zip
output panes remember the command that opened them
An output buffer was a file pane with a flag, and everything special about it was re-derived from outside by asking the wrong question: the buffer NAME ("+Search", "+Help"), a parallel search_kind field, and f.output predicates sprinkled through kind-agnostic code. Now it carries its Origin — the Builtin, or the lsp.Kind for the five gotos helix binds as motions rather than words — plus that command's argument, and one Traits table answers every question the scattered code used to ask: what it is called, whether n/N steps it, whether it is a doc for layout, whether Esc dismisses it, whether it saves. The name is derived FROM the command instead of being the thing that identifies it. Adding a kind of output pane is adding a row. No golden moved.
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 e2211e7b..cd745f17 100644
--- a/next-steps.txt
+++ b/next-steps.txt
@@ -1,5 +1,5 @@
+ 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.
++ 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.
- 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)