feat(LazyVSCode): move editors to another group

This commit is contained in:
2025-04-16 15:39:18 +08:00
parent baeab79398
commit 871d8bd7cc
2 changed files with 26 additions and 15 deletions

View File

@@ -98,15 +98,13 @@ vim.keymap.set("n", "<leader>cf", function()
vscode.action("editor.action.formatDocument")
end, { desc = "Format Code" })
-- Window
-- Editor Groups
-- TODO: <leader><leader>g to toggle between two groups
-- TODO: <leader>gv to split vertically
-- TODO: <leader>gs to split horizontally
-- TODO: <leader>gd to delete a group
-- Tab
-- TODO: <leader>td to delete a tab
-- TODO: <leader>tm + hjkl to move a tab to another group
-- Editor
local tabs = {
toggleInGroup = function()
vscode.action("workbench.action.quickOpenPreviousRecentlyUsedEditorInGroup")
@@ -124,13 +122,25 @@ local tabs = {
end,
select = function()
vscode.action("workbench.action.quickOpenPreviousRecentlyUsedEditor")
end
end,
close = function()
vscode.action("workbench.action.closeActiveEditor")
end,
moveToNextGroup = function()
vscode.action("workbench.action.moveEditorToNextGroup")
end,
moveToPreviousGroup = function()
vscode.action("workbench.action.moveEditorToPreviousGroup")
end,
}
vim.keymap.set("n", "<leader><leader>t", tabs.toggleInGroup, { desc = "Toggle Between Two Tabs inside Group" })
vim.keymap.set("n", "<leader><leader>T", tabs.toggleCrossGroups, { desc = "Toggle Between Two Tabs Cross-Groups" })
vim.keymap.set("n", "<leader>ts", tabs.select, { desc = "Select Tab Cross-Groups" })
vim.keymap.set("n", "<leader>tp", tabs.previous, { desc = "Select Tab in Group: Previous" })
vim.keymap.set("n", "<leader>tl", tabs.least, { desc = "Select Tab in Group: Least" })
vim.keymap.set("n", "<leader><leader>e", tabs.toggleInGroup, { desc = "Toggle Between Two Tabs inside Group" })
vim.keymap.set("n", "<leader><leader>E", tabs.toggleCrossGroups, { desc = "Toggle Between Two Tabs Cross-Groups" })
vim.keymap.set("n", "<leader>es", tabs.select, { desc = "Select Tab Cross-Groups" })
vim.keymap.set("n", "<leader>ep", tabs.previous, { desc = "Select Tab in Group: Previous" })
vim.keymap.set("n", "<leader>el", tabs.least, { desc = "Select Tab in Group: Least" })
vim.keymap.set("n", "<leader>ed", tabs.close, { desc = "Close Tab" })
vim.keymap.set('n', "<leader>emn", tabs.moveToNextGroup, { desc = "Move Editor to the Next Group" })
vim.keymap.set('n', "<leader>emp", tabs.moveToPreviousGroup, { desc = "Move Editor to the Previous Group" })
-- Files
local files = {