Share via


How to: List Current Keyboard Shortcut Mappings

Use this procedure to create a macro that generates a list of all the commands in the integrated development environment (IDE) and any shortcut keys mapped to those commands according to the current keyboard mapping scheme.

Several keyboard mapping schemes are available in the IDE. You can change keyboard mapping schemes on the Keyboard page, under the Environment folder of the Options dialog box. For more information, see How to: Work with Shortcut Key Combinations.

Note

The dialog boxes and menu commands you see might differ from those described in Help depending on your active settings or edition. To change your settings, click Import and Export Settings on the Tools menu. For more information, see Visual Studio Settings.

To list current keyboard shortcut mappings

  1. On the Tools menu, point to Macros, and then click Macros IDE.

  2. In Project Explorer, double-click MyMacros.

  3. Right-click Module1 and then click Rename.

  4. Type KeyboardShortcuts as the new name for the module.

  5. Double-click KeyboardShortcuts to open the file in the editor.

  6. Paste the following code in the file after Public Module KeyboardShortcuts:

    Sub GetAllCommands()
            Dim getCommandsWithSCOnly As Boolean
            Dim cmd As Command
            Dim cmdCollection As Commands
            Dim ow As OutputWindow = DTE.Windows.Item(Constants.vsWindowKindOutput).Object
            Dim owp As OutputWindowPane
            Dim exists As Boolean
            Dim i As Integer
    
            i = 1
            exists = False
    
            For Each owp In ow.OutputWindowPanes
                If owp.Name = "Macro Output" Then
                    exists = True
                    Exit For
    
                End If
                i = i + 1
            Next
    
            If exists Then
                owp = ow.OutputWindowPanes.Item(i)
            Else
                owp = ow.OutputWindowPanes.Add("Macro Output")
            End If
    
            owp.Clear()
    
            ' Output 1 line per command
            For Each cmd In DTE.Commands
                Dim binding As Object
                Dim shortcuts As String
    
                shortcuts = ""
    
    
                For Each binding In cmd.Bindings
                    Dim b As String
                    Dim sArray() As String
                    b = binding
                    shortcuts = shortcuts + b + " "
                Next
    
                shortcuts = shortcuts.Trim()
    
                If Not cmd.Name.Trim().Equals("") Then
    
                    owp.OutputString(cmd.Name + vbTab + shortcuts + vbCrLf)
                Else
                    owp.OutputString(cmd.Guid.ToString() + ":" + cmd.ID.ToString() + vbTab + shortcuts + vbCrLf)
                End If
    
            Next    
    End Sub
    
  7. On the File menu, click Save MyMacros.

  8. Switch back to Visual Studio.

  9. On the Tools menu, point to Macros and then click Macro Explorer.

  10. Expand MyMacros and then expand KeyboardShortcuts.

  11. Right-click GetAllCommands and then click Run.

    The macro generates a list of all possible commands in the IDE and any keyboard shortcut mappings these commands have in the current keyboard mapping scheme.

  12. On the View menu, click Output.

    Commands and their shortcut key combinations appear in the Output window. You can copy this information and paste it into another application, such as Microsoft Office Excel, for additional formatting and printing options.

See Also

Tasks

How to: Work with Shortcut Key Combinations

Other Resources

Shortcut Keys

Working with Settings