threads / patch / 41859

patchFeature: custom guitool commands can now have custom keyboard shortcuts

Subject: [PATCH] Feature: custom guitool commands can now have custom keyboard shortcuts

## tl;dr

2 messages between Mar 29, 2016 and Mar 31, 2016. Diffs are folded; open one to read it.

replies: 1people: 2as markdown or json

Harish K· Mar 29, 2016, 11:29 UTC · lore
---
 git-gui/lib/tools.tcl | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)
Show changes to git-gui/lib/tools.tcl +13 −4
diff --git a/git-gui/lib/tools.tcl b/git-gui/lib/tools.tcl
index 6ec9411..749bc67 100644
--- a/git-gui/lib/tools.tcl
+++ b/git-gui/lib/tools.tcl
@@ -38,7 +38,7 @@ proc tools_create_item {parent args} {
 }
 
 proc tools_populate_one {fullname} {
-	global tools_menubar tools_menutbl tools_id
+	global tools_menubar tools_menutbl tools_id repo_config
 
 	if {![info exists tools_id]} {
 		set tools_id 0
@@ -61,9 +61,19 @@ proc tools_populate_one {fullname} {
 		}
 	}
 
-	tools_create_item $parent command \
+	if {[info exists repo_config(guitool.$fullname.accelerator)] && [info exists repo_config(guitool.$fullname.accelerator-label)]} {
+		set accele_key $repo_config(guitool.$fullname.accelerator)
+		set accel_label $repo_config(guitool.$fullname.accelerator-label)
+		tools_create_item $parent command \
 		-label [lindex $names end] \
-		-command [list tools_exec $fullname]
+		-command [list tools_exec $fullname] \
+		-accelerator $accel_label
+		bind . $accele_key [list tools_exec $fullname]
+	} else {
+		tools_create_item $parent command \
+			-label [lindex $names end] \
+			-command [list tools_exec $fullname]
+	}
 }
 
 proc tools_exec {fullname} {

--
https://github.com/git/git/pull/220
David Aguilar· Mar 31, 2016, 16:49 UTC · re: Harish K · lore

Re: [PATCH] Feature: custom guitool commands can now have custom keyboard shortcuts

On Tue, Mar 29, 2016 at 11:29:41AM +0000, Harish K wrote:
> ---
>  git-gui/lib/tools.tcl | 16 +++++++++++++---
>  1 file changed, 13 insertions(+), 3 deletions(-)

I forgot to mention that git-gui has its own repository. The git project merges the upstream repo as a subtree into its git-gui directory.

You should probably clone the git-gui repository and create a patch there so that it can be applied to the upstream repo:

http://repo.or.cz/w/git-gui.git
-- 
David

← back to recent threads