microsoft / PowerToys

Windows system utilities to maximize productivity
MIT License
109.52k stars 6.45k forks source link

[KBM] Adding exceptions to "All Apps", or defining a list of apps for a same shortcut #6276

Open Ariane-B opened 4 years ago

Ariane-B commented 4 years ago

📝 Provide a description of the new feature

In Keyboard Manager, it's possible to remap a shortcut globally. Since there are many annoying programs that not only don't use what I consider the standard shortcut, Ctrl+Shift-Z, for Redo, but some of them even have another action on there, which results in a loss of redo history.

Some of those shortcuts aren't even remappable or the shortcut settings are hard to find and use, so I was really thankful for the possibility. I remapped Ctrl+Shift+Z to Ctrl+Y globally, which has mostly worked great for me.

However, I stumbled upon a particular program that has the reverse problem. Its command for Redo is Ctrl+Shift+Z, and it's not remappable. My remapping makes it impossible to redo and it triggers another action, which is the behaviour I wanted to fix in the first place.

I wish I could define exceptions for my "all apps" rule, or apply it to a certain list of apps instead of a single one. What's the best way to achieve what I want?

saahmedm commented 4 years ago

hi @ariane-b we don't currently have a workaround unfortunately but we have an issue similarly, to specify multiple targets: #6223

right now the only workaround, that is tedious, would be to remap Ctrl+Shift+Z to Ctrl+Y for all the apps you wanted it for and thus keep it from clashing with the particular program. This could be tedious but obv would be a one time action and temporary solution as we work to push updates!

Ariane-B commented 4 years ago

Hi! Thanks for your answer. Does this count as a duplicate of #6223, or does "all apps except these apps" constitute a different feature request?

saahmedm commented 3 years ago

No, this is a different ask!

ajs256 commented 3 years ago

Another use case: I use an Apple keyboard, so I switch Cmd (Meta/Win) with Ctrl so it has the behavior I'm used to. Unfortunately, this has the side effect of not playing nicely with terminals. I would use this feature to ignore terminals, so the Ctrl key has the effect I am used to there.

Jay-o-Way commented 2 years ago

My thought: some control (radio buttons or something?) with labels like either "apply to:" and "exclude:" comes before a list.

novavision commented 2 years ago

Any estimations when this important feature can be added?

Zikoat commented 1 year ago

This could be fixed by allowing a mapping from a keyboard shortcut to itself on a target app if there is a global shortcut.

Something like: ctrl+p -> alt+space (All Apps) ctrl+p -> ctrl+p (code)

This would remap the shortcut for all apps except for VSCode where the original shortcut would be used.

benlubas commented 1 year ago

For anyone that wants a workaround, you can just use the other side modifier in most cases.

ie. I have a global bind that's Alt (Right) + Backspace => Ctrl (Right) + Backspace because I'm used to typing on MacOS. But that messes with my WSL setup where I need to use Alt + backspace to delete a full word at a time.

So I have an additional bind Alt (Right) + Backspace => Alt (Left) + Backspace specifically for alacritty.exe, my terminal. I'm not sure if that's really sending both keys behind the scenes or what. But it seems to work exactly as I would expect.

LumKitty commented 1 year ago

26091 was closed as a duplicate of this, even though this is a slightly different request, so re-requesting: Could the feature allowing remapping of individual keys (not shortcuts) get an option to only remap for certain applications, like shortcuts already can do?

TheStruggleForAntiSpaghetti commented 1 year ago

I think my request is similar. Most of the time I'd like my laptop's function keys such as volume up, down and silence to work without me having to press the fn key, which I configured in PT Keyboard Manager to do so.

In some apps though I'd like to use the function keys as-is so as normal f10, f11 & f12.

That's why an Exclude for apps list would be handy.

seokbeomKim commented 1 year ago

How is the progress for this feature? Is this feature going to be considered as a new feature?

cameron-gagnon commented 9 months ago

This has been a great feature and made it much easier to use both a Windows and Mac machine and mostly land on one set of shortcuts between both machines. However, without being able to override the behavior of shortcuts in some apps, it makes this tool much more tedius to use.

I have 6 navigation shortcuts I expect to use in ~every app. This means I'm quickly registering dozens and dozens of repeat shortcuts.

It'd be a huge win if we could just denylist an application instead of only being able to allowlist them.

LifeWorks commented 9 months ago

I figured out a way to work around it, specifically for alacritty. Please see the attached screenshots. The trick is to modify the Ctrl and Win with left and right specified for alacritty while maintain Ctrl or Win for All Apps. This way the alacritty setting will overwrite the general setting. At least I tested it, it works fine for me.

Updates: Additional trick: when selecting the short cut for the additional mapping, you should type alacritty in the "All app" text box first then select the shortcut you want to send, the at last you select the short cut you want to map from. This way it won't evoke "duplicated mapping" warnings.

image image

ego-lay-atman-bay commented 8 months ago

I would also really like this. I am running into an issue where I want to map ctrl + . to the context menu button, as I use a spellchecker in vscode, and it uses the quick fixes, which are mapped to ctrl + ., so I was thinking of bringing that to all my programs. Unfortunately this messes up vscode, because now it opens the context menu instead of the quick actions (although I can remap it in vscode), so I would like to exclude vscode from this shortcut.