sourcegit icon indicating copy to clipboard operation
sourcegit copied to clipboard

[FR]建议为自定义 action 添加一个弹出菜单快捷键。

Open heartacker opened this issue 4 months ago • 8 comments

这算是高级模式,一般为F8 或者F12

heartacker avatar Jul 30 '25 05:07 heartacker

The associated PR was closed as Not Planned, after the following comment from @love-linger : "I have no plans to add hotkey to just open a context menu."

How about instead adding an option for assigning a specific hotkey to a specific Custom Action?

(These could be limited to only a specific subset, like Ctrl+Shift+<digit> or similar, to avoid collisions with existing hotkeys in SourceGit.)

This issue could be renamed, to request this feature, or we could open a new issue for that?

goran-w avatar Aug 05 '25 08:08 goran-w

for target

  1. repo: you can run all action any time
  2. branch: you have to select a branch before
  3. tag: you have to select a tag before
  4. commit: you have to select a commit before

you can not run action directly unless you 're running a repo-action so, that is why do I add a global shortcut for repo-action

about adding an option for assigning a specific hotkey to a specific Custom Action if you have nothing selection, what the action should do after you kick the keyboard

heartacker avatar Aug 05 '25 09:08 heartacker

对于repo action, 有一个快捷键就足够了,只需要打开菜单,就可以使用上下键选择并执行你想要的action 了, For repo actions, one shortcut key is sufficient. Just open the menu and you can select and execute the action you want by up/down key, fast.

对于branch/tag/commit, 很大程度上,你必须依赖鼠标或者触摸板,这个时候一个快捷键已经没有那么必要了。
For branch/tag/commit, to a large extent, you have to rely on the mouse or touchpad. At this time, a shortcut key is no longer so necessary.

heartacker avatar Aug 05 '25 09:08 heartacker

you can down load the build and feel the way of F8 key, I believe that is simple , but enough,

https://github.com/heartacker/sourcegit/actions/runs/16740876873#:~:text=images/issues/12520-,Artifacts,-Produced%20during%20runtime

heartacker avatar Aug 05 '25 09:08 heartacker

about adding an option for assigning a specific hotkey to a specific Custom Action if you have nothing selection, what the action should do after you kick the keyboard

If the Action's scope does not have a valid selection, the Action should simply not run. Alternatively, it could popup a message-box saying something like this: No valid selection for Action '<action-name>'.

For branch/tag/commit, to a large extent, you have to rely on the mouse or touchpad. At this time , a shortcut key is no longer so necessary.

With a distinct shortcut for a specific Custom Action (and its associated scope), we would only need to select a Branch/Tag/Commit and press the hotkey.

goran-w avatar Aug 05 '25 12:08 goran-w

(Brain-storming : the current selected & focused item among Branches / Tags / Commits could probably be determined, and then a single shortcut like F9 could be used to bring up a context-dependent list of Actions for that scope?) 🤔

goran-w avatar Aug 05 '25 12:08 goran-w

This is too complicated. You select branch/tag/commit with your mouse. At this point, you can right-click and use action. There is no need for shortcut keys either. If it is necessary to add other complex forms to select branches, etc., and then execute a shortcut key, is this really necessary? If you can quickly get familiar with the selection, does it mean that you can execute your action at the same time? This might be similar to the command panel in vscode.

这太复杂了,

你用鼠标选择branch/tag/commit, 这个时候你右键就可以使用action 了。也没有必要快捷键了。

如果有必要增加其他复杂的形式去选择 分支等,然后再执行一个快捷键,这是否真的有必要? 如果你能够快熟选着,是否代表你可以顺带执行你的action 了,这也许类似 vscode 的command panel 了。

heartacker avatar Aug 05 '25 13:08 heartacker

What I would actually prefer is an option for assigning a specific hotkey to a specific Custom Action. The available hotkeys could be limited to only a specific subset, like Ctrl+Shift+<digit> (or similar), to avoid collisions with existing hotkeys in SourceGit.

When executing such a hotkey, it would check that the associated scope is valid (selection etc) and then run the Action as if called from that scope's context menu.

goran-w avatar Aug 06 '25 08:08 goran-w