Birger, Please ignore the two emails I sent about basing your work on top of Bert's. I see that you have already done so (or maybe Bert did it, I don't know), and I was reading an older version of the patch. On 05/09/19 10:09PM, Bert Wesarg wrote: > From: Birger Skogeng Pedersen <birger.sp@xxxxxxxxx> > > Selecting whether to "Amend Last Commit" or not does not have a hotkey. > > With this patch, the user may toggle between the two options with > CTRL/CMD+e. > > Signed-off-by: Birger Skogeng Pedersen <birger.sp@xxxxxxxxx> > Rebased-by: Bert Wesarg <bert.wesarg@xxxxxxxxxxxxxx> > --- > git-gui.sh | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/git-gui.sh b/git-gui.sh > index 80a07d5..8b776dd 100755 > --- a/git-gui.sh > +++ b/git-gui.sh > @@ -2640,6 +2640,12 @@ proc show_less_context {} { > } > } > > +proc toggle_commit_type {} { > + global commit_type_is_amend > + set commit_type_is_amend [expr !$commit_type_is_amend] > + do_select_commit_type > +} Ah! So we had almost exactly the same thought process. This is pretty much what I suggested in my other email ;) > + > ###################################################################### > ## > ## ui construction > @@ -2830,6 +2836,7 @@ if {[is_enabled multicommit] || [is_enabled singlecommit]} { > if {![is_enabled nocommit]} { > .mbar.commit add checkbutton \ > -label [mc "Amend Last Commit"] \ > + -accelerator $M1T-E \ > -variable commit_type_is_amend \ > -command do_select_commit_type > lappend disable_on_lock \ > @@ -3825,6 +3832,7 @@ bind . <$M1B-Key-equal> {show_more_context;break} > bind . <$M1B-Key-plus> {show_more_context;break} > bind . <$M1B-Key-KP_Add> {show_more_context;break} > bind . <$M1B-Key-Return> do_commit > +bind . <$M1B-Key-e> toggle_commit_type Nitpick: Please move this up with the binds for other letters (u, j, etc) Also, I notice that the bindings for other letters have the same function bound for both small and capital letters (IOW, same behavior with shift held and released). I don't necessarily think that is a great idea. It is a pretty common pattern to have, say Ctrl+a, do something, and Ctrl+Shift+a, do something else. Just want to pick your brain on whether you think we should do the same thing for both Ctrl+e and for Ctrl+E (aka Ctrl+Shift+e), or just bind it to Ctrl+e, and leave Ctrl+E for something else. > foreach i [list $ui_index $ui_workdir] { > bind $i <Button-1> { toggle_or_diff click %W %x %y; break } > bind $i <$M1B-Button-1> { add_one_to_selection %W %x %y; break } Overall, the patch LGTM apart from a couple of nitpicks above. Thanks. -- Regards, Pratyush Yadav