prati0100 / git-gui

Tcl/Tk based UI for Git. I am currently acting as the project's maintainer.
161 stars 87 forks source link

Document keyboard shortcuts and options #8

Open prati0100 opened 4 years ago

prati0100 commented 4 years ago

Right now, no keyboard shortcuts or options (the ones that can be opened from the "Options" menu) are not documented. In case of options, most are pretty self-explanatory, but some do warrant a more detailed explanation.

For documenting options, IMHO the best solution would be to use a tooltip. When the user hovers over the option, the tooltip would have a "hint" for it. This tooltip can be created via Tk's Tooltip package.

git-gui also has a homebrew tooltip implementation. Well, two tooltip implementations. The first resides in lib/choose_rev.tcl, and the second in lib/blame.tcl. Most of the implementations are the same, but have some subtle differences. If this implementation is to be used, I recommend writing a generic tooltip implementation from the two existing ones, and then refactor those two to use the common, generic one. This is a significant refactor though, and it might prove to be difficult to write a generic interface that works with both the two implementations. I haven't really looked too much into it so can't really say.

For documenting keyboard shortcuts, I'm not sure what the best place would be. Maybe the man page? I'm not really sure.

PhilipOakley commented 4 years ago

For documenting options, IMHO the best solution would be to use a tooltip.

I'd agree that a tool-tip provides a good way for user discovery.

But also that should be complemented by documentation (e.g. man page) so that the users can de directed to these capabilities

NikosAlexandris commented 3 years ago

For example, what does Ctrl+F do?

NikosAlexandris commented 3 years ago

For example, what does Ctrl+F do?

https://github.com/prati0100/git-gui/blob/c91ee2bd61299737c2795bd7b798e17ef0714e47/git-gui.sh#L2738

OK, but it would be nice to have these documented.