Platform:

Checking your keybindings

If a command is not executing when you press a key combination or the wrong command is executing, there might be an issue with the keybinding for that combination. Pulsar ships with the keybinding-resolver package; it helps you understand what key Pulsar saw you press and the command that was triggered because of it.

Show the keybinding resolver with Ctrl+.Cmd+., or with Keybinding Resolver: Show from the Command palette. With the keybinding resolver shown, press a key combination:

Keybinding Resolver

The keybinding resolver shows you a list of keybindings that exist for the key combination, where each item in the list has the following:

The keybindings are listed in two colors. All the keybindings that are matched but not executed are shown in gray. The one that is executed, if any, is shown in green. If the command you wanted to trigger isn’t listed, then a keybinding for that command hasn’t been loaded.

If multiple keybindings are matched, Pulsar determines which keybinding will be executed based on the specificity of the selectors and the order in which they were loaded. If the command you wanted to trigger is listed in the keybinding resolver, but wasn’t the one that was executed, this is normally explained by one of two causes:

Pulsar loads core Pulsar keybindings and package keybindings first, and user-defined keybindings last. Since user-defined keybindings are loaded last, they take precedence in the case of specificity ties. So if two of your packages are fighting over a certain key binding, you can break the tie via a tweak in your keymap.cson. See the Keymaps in depth page for more information.

If you notice that a package’s keybindings are taking precedence over core Pulsar keybindings, it might be a good idea to report the issue on that package’s GitHub repository. You can contact Pulsar maintainers on Pulsar’s GitHub discussions.