How Can I Override Visual Studio's Menu Accele

2019-03-11 07:42发布

问题:

I'm a Mac-based .Net developer so over the years I've got into the habit of remapping certain common functions to a more 'Macish' set of keyboard shortcuts:

CUT: Ctrl + X => Alt + X
COPY: Ctrl + C => Alt + C
PASTE: Ctrl + V => Alt + V
SELECT ALL: Ctrol + A => Alt + A
SAVE: Ctrl + S => Alt + S

and so on.

with this fancy schmancy VS 2010 Premium edition we've just got we've got extra menus e.g.

 Test
 Data  

whose menu accessor (accelerator?)shortcuts are Alt + S and Alt + A which take precedence over my user-defined shortcuts for SAVE and SELECT ALL.

Is there a way of disabling these accessors so my overrides will work?

回答1:

Here's how to change the shortcut key for a Visual Studio menu, using the 'Test' menu as an example:

  1. Go to Tools, Customize.
  2. Click the Commands tab.
  3. Ensure the Menu bar option is selected, and that Menu Bar is chosen for editing from the drop-down (this is the primary application menu bar).
  4. In the Controls section, click on the Test menu.
  5. Click on the Modify Selection ▼ button.
  6. Change the text for the Name property:
    • Any letter prefixed with an '&' ampersand will act as the shortcut key.
    • The ampersand is not required if you don't need to reach this menu with the keyboard.
  7. Press Enter to keep the setting.

'Modify Selection' for the Test menu



回答2:

Isn't this something the fault of the Windows API, not Visual Studio? I think the Alt (and nothing else) keyboard shortcuts are directed through Windows API, so the OS will probably not let you do this; it'll select the menu with the respective mnemonic (underlined letter).

You could try using a custom keyboard layout that would swap the left ctrl and left alt keys, allowing you to use "ctrl-S" but it feels like command-S.

Good Luck!



回答3:

go to tools -options - keyboard(you may have to choose show all option or something like that to be able to see this one) and you can change the shortcuts