microsoft / terminal

The new Windows Terminal and the original Windows console host, all in the same place!
MIT License
95.01k stars 8.22k forks source link

All nested commands get keybindings (`ctrl+t`) in command palette? #17792

Open zadjii-msft opened 3 weeks ago

zadjii-msft commented 3 weeks ago

main, ~ e006f75f6

Something is WRONG with all nested commands:

image

You'll note, they seemingly all have ctrl+t as their keychord text.

This doesn't repro for me on 1.22.2334.0

Looking now at my settings to see if there's something sus in there...

zadjii-msft commented 3 weeks ago

image

Yes this is sus...

I actually have quite a few of these:

        {
            "id": null,
            "keys": "ctrl+t"
        },
        {
            "id": "User.showContextMenu",
            "keys": "ctrl+z"
        },
        {
            "id": "User.scrollToMark.6CD791B",
            "keys": "ctrl+pgdn"
        },
        {
            "id": "User.movePane.6E7070F6",
            "keys": "f3"
        },
        {
            "id": "User.movePane.B137036",
            "keys": "f4"
        },
        {
            "id": "User.closeTab.0",
            "keys": "ctrl+w"
        },
        {
            "id": "User.showSuggestions.807E15EE",
            "keys": "ctrl+shift+h"
        },
        {
            "id": null,
            "keys": "ctrl+shift+comma"
        },
        {
            "id": null,
            "keys": "ctrl+shift+period"
        },
        {
            "id": null,
            "keys": "ctrl+shift+/"
        },
        {
            "id": null,
            "keys": "ctrl+shift+;"
        },

I have no memory of what these were. Alas, sublime doesn't have the undo stack to a state before they were added. If I had to guess, commands that are no longer valid? Like, I bet ctrl+t was tasks (which over the course of time was turned into showSuggestions)

zadjii-msft commented 3 weeks ago

Deleting those fixes it. And adding back a


        {
            "id": null,
            "keys": "ctrl+x"
        },

adds back a ctrl+x label to the cmdpal. I guess we're just handling the logic in here a little wack.