Cretezy / lazyjj

TUI for Jujutsu/jj
Apache License 2.0
34 stars 2 forks source link

File tree view (in default tab) #20

Open maralorn opened 1 month ago

maralorn commented 1 month ago

lazygit has the excellent (and very pretty) tree view of changes right at the top when you start it. It is basically a prettier version of the files tab.

I was wondering if we could 1. make it possible to integrate it into one tab with the log, like lazygit does and 2. make it nicer with folding of dirs and stuff like that.

However both of these are nice to have.

Cretezy commented 1 month ago

I think a file tree view would be great. https://crates.io/crates/tui-tree-widget exists which seems to implement what's required. It would be a great option to have, although I think the current list should be kept as the default as most changes likely have <25 files (random number I made up), and a list can be easier to navigate (and it's already sorted by file path).

An "all-in-one" view with log + file tree + file diff would be cool. One concern is which keyboard navigation, as 3 panes means we'll likely need to be able to switch the active pane and scroll inside of it separately. Users could also have the ability to switch between the current 2 pane layout (of log + diff) to the 3 panel layout (with diff replaced with tree + individual diffs).