xavierog / moulti

Moulti is a CLI-driven Terminal User Interface (TUI) displaying arbitrary outputs inside visual, collapsible blocks called steps.
MIT License
119 stars 5 forks source link

[FR] `?` help dialog #12

Closed huyz closed 3 months ago

huyz commented 3 months ago

Would be nice to have a help pop-up window when I hit ?. The bottom menu doesn't contain keybindings such as ⬅️ and ↩. It took me a while to figure out how to expand/collapse an individual item without the mouse.

xavierog commented 3 months ago

It is true that some keybindings may not be that intuitive. Plus, a help pop-up window is quite standard in TUIs and should be relatively easy to implement.

xavierog commented 3 months ago

@huyz Here is a first draft, straight from my working directory: moulti-help-screen-0

Comments, suggestions?

huyz commented 3 months ago

@xavierog looks perfect to me. Didn't know about tab!

xavierog commented 3 months ago

@xavierog looks perfect to me. Didn't know about tab!

Thanks for your feedback. I also intend to revamp the quit dialog:

Before: moulti-quit-dialog-old

After: moulti-quit-dialog-new

huyz commented 3 months ago

Yeah that's better.

I would leave Do not quit as a a default color, e.g. gray, as it's for a reversal of user intent and should thus be a rare occurrence and shouldn't grab so much attention.

xavierog commented 3 months ago

I'll think about it. My initial intent was to use a traffic light pattern to reflect the level of safety inherent to each option:

huyz commented 3 months ago

IMHO, the traffic light pattern further confuses. "Green" means "go"—i.e., go with my original intent. Which isn't what we'd want to convey

xavierog commented 3 months ago

That makes sense.

moulti-quit-dialog-new-2

xavierog commented 3 months ago

The help dialog and the revamped quit dialog are available as of Moulti v1.13.0, released on 2024-07-21.

xavierog commented 2 months ago

FYI, Textual 0.77 introduces a help panel that is slightly different (it appears on the right side, not in the middle) but is also context-aware and exhaustive. I think it is worth switching from the help dialog discussed here to that new help panel.