-
Notifications
You must be signed in to change notification settings - Fork 9.1k
Closed
Closed
Copy link
Labels
Issue-FeatureComplex enough to require an in depth planning process and actual budgeted, scheduled work.Complex enough to require an in depth planning process and actual budgeted, scheduled work.Resolution-DuplicateThere's another issue on the tracker that's pretty much the same thing.There's another issue on the tracker that's pretty much the same thing.
Description
Description of the new feature
I have seen that there are demands for switching shrotcuts / keybinds / keymaps sets in #9301 and #15277, which I think this is because people are used to different shrotcuts / keybinds / keymaps when working in different profiles, so that I think it would be an effective solution if the shrotcuts / keybinds / keymaps set can be specified in the profile.
Proposed technical implementation details
A simple and specific idea is as follows: move the current actions options to the default profile as default actions, and allow each profile to override the default actions, such as overriding unnecessary actions to null or adding keybinds for new actions.
The new settings.json will look like this:
{
...,
"actions":
[
{
"command": "ACommandName",
"id": "User.a"
},
{
"command": "BCommandName",
"id": "User.b"
},
{
"command": "CCommandName",
"id": "User.c"
},
{
"command": "DCommandName",
"id": "User.d"
},
...
],
...,
"profiles":
{
"defaults":
{
...,
"keybinds":
[
{
"id": "User.a",
"keys":
[
"ctrl+a"
]
},
...
]
},
"list":
[
{
"commandline": "%ProgramFiles%\\Neovim\\bin\\nvim.exe",
"guid": "{00000000-0000-0000-0000-000000000000}",
"hidden": false,
"icon": "%ProgramFiles%\\Neovim\\bin\\neovim.png",
"name": "Neovim",
"keybinds":
[
{
"id": null,
"keys":
[
"ctrl+a"
]
},
...,
{
"id": "User.b",
"keys":
[
"ctrl+b"
]
},
...
]
},
{
"commandline": "%ProgramFiles%\\Git\\bin\\bash.exe",
"guid": "{00000000-0000-0000-0000-000000000000}",
"hidden": false,
"icon": "%ProgramFiles%\\Git\\git-bash.exe",
"name": "Git Bash",
"keybinds":
[
{
"id": null,
"keys":
[
"ctrl+a"
]
},
...,
{
"id": "User.c",
"keys":
[
"ctrl+c"
]
},
...
]
},
{
"commandline": "%ProgramFiles%\\PowerShell\\7\\pwsh.exe",
"guid": "{00000000-0000-0000-0000-000000000000}",
"hidden": false,
"name": "PowerShell",
"source": "Windows.Terminal.PowershellCore",
"keybinds":
[
{
"id": null,
"keys":
[
"ctrl+a"
]
},
...,
{
"id": "User.d",
"keys":
[
"ctrl+d"
]
},
...
]
},
...
]
},
...
}Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
Issue-FeatureComplex enough to require an in depth planning process and actual budgeted, scheduled work.Complex enough to require an in depth planning process and actual budgeted, scheduled work.Resolution-DuplicateThere's another issue on the tracker that's pretty much the same thing.There's another issue on the tracker that's pretty much the same thing.