git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 2/2] git-gui: add hotkey to toggle "Amend Last Commit" check button/menu

From
Pratyush Yadav <me@yadavpratyush.com>
Date
Sep 11, 2019, 20:55 UTC
Message-ID
<20190911205539.vb6asqcc22nzgdqa@yadavpratyush.com>
In-Reply-To
<b82a00441ff1a6a9cea3fd235c1c33729ec31b71.1567713659.git.bert.wesarg@googlemail.com>
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:
Show 26 quoted lines
> From: Birger Skogeng Pedersen <birger.sp@gmail.com>
> 
> 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@gmail.com>
> Rebased-by: Bert Wesarg <bert.wesarg@googlemail.com>
> ---
>  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 ;)

Show 17 quoted lines
> +
>  ######################################################################
>  ##
>  ## 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
Previous: Bert WesargNext: Birger Skogeng Pedersen
Message 3 of 24 in “git-gui: convert new/amend commit radiobutton to checketton”
  1. 1/2 git-gui: convert new/amend commit radiobutton to checkettonBert Wesarg, Sep 5, 2019
  2. 2/2 git-gui: add hotkey to toggle "Amend Last Commit" check button/menuBert Wesarg, Sep 5, 2019
  3. Pratyush YadavSep 11, 2019
  4. Birger Skogeng PedersenSep 12, 2019
  5. Pratyush YadavSep 12, 2019
  6. git-gui: add hotkey to toggle "Amend Last Commit"Birger Skogeng Pedersen, Sep 12, 2019
  7. Pratyush YadavSep 13, 2019
  8. git-gui: add hotkey to toggle "Amend Last Commit"Birger Skogeng Pedersen, Sep 13, 2019
  9. Birger Skogeng PedersenSep 13, 2019
  10. Pratyush YadavSep 13, 2019
  11. Birger Skogeng PedersenSep 14, 2019
  12. git-gui: add hotkey to toggle "Amend Last Commit"Birger Skogeng Pedersen, Sep 14, 2019
  13. Pratyush YadavSep 14, 2019
  14. Birger Skogeng PedersenSep 16, 2019
  15. Marc BranchaudSep 12, 2019
  16. Philip OakleySep 12, 2019
  17. Birger Skogeng PedersenSep 13, 2019
  18. Marc BranchaudSep 13, 2019
  19. Pratyush YadavSep 13, 2019
  20. Pratyush YadavSep 5, 2019
  21. Pratyush YadavSep 11, 2019
  22. Bert WesargSep 12, 2019
  23. Pratyush YadavSep 13, 2019
  24. Bert WesargSep 12, 2019

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.