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

@@ -7,8 +7,8 @@
|`<leader>`(toggle) |b |- | Toggle Side Bar Visibility | |`<leader>`(toggle) |b |- | Toggle Side Bar Visibility |
|`<leader>` |B |- | Toggle Side Bar Position | |`<leader>` |B |- | Toggle Side Bar Position |
|`<leader>` |l |- | Toggle Line Number Mode | |`<leader>` |l |- | Toggle Line Number Mode |
|`<leader>` |t |- | Toggle Tabs Inside Group | |`<leader>` |e |- | Toggle Editor Inside Group |
|`<leader>` |T |- | Toggle Tabs Cross-Groups | |`<leader>` |E |- | Toggle Editor Cross-Groups |
|`<leader>` |z |- | Toggle Zen Mode | |`<leader>` |z |- | Toggle Zen Mode |
|`<leader>` |/ |- | Toggle Flash.nvim Search | |`<leader>` |/ |- | Toggle Flash.nvim Search |
|b (side bar) |e |- | Open Sidebar Explorer | |b (side bar) |e |- | Open Sidebar Explorer |
@@ -17,7 +17,8 @@
|c |t |- | Flash.nvim Treesitter | |c |t |- | Flash.nvim Treesitter |
|f (file) |s |- | File search with VSCode ctrl-p | |f (file) |s |- | File search with VSCode ctrl-p |
|s (search) | |s (search) |
|t (tab) |l |- | Search Tabs Inside Group: Least | |e (editor) |d |- | Close Editor |
|t (tab) |p |- | Search Tabs Inside Group: Previous | |e |l |- | Search Editor Inside Group: Least |
|t (tab) |s |- | Search Tabs Cross-Groups: Previous | |e |p |- | Search Editor Inside Group: Previous |
|e |s |- | Search Editor Cross-Groups: Previous |
|g (group) | | |g (group) | |

View File

@@ -98,15 +98,13 @@ vim.keymap.set("n", "<leader>cf", function()
vscode.action("editor.action.formatDocument") vscode.action("editor.action.formatDocument")
end, { desc = "Format Code" }) end, { desc = "Format Code" })
-- Window -- Editor Groups
-- TODO: <leader><leader>g to toggle between two groups -- TODO: <leader><leader>g to toggle between two groups
-- TODO: <leader>gv to split vertically -- TODO: <leader>gv to split vertically
-- TODO: <leader>gs to split horizontally -- TODO: <leader>gs to split horizontally
-- TODO: <leader>gd to delete a group -- TODO: <leader>gd to delete a group
-- Tab -- Editor
-- TODO: <leader>td to delete a tab
-- TODO: <leader>tm + hjkl to move a tab to another group
local tabs = { local tabs = {
toggleInGroup = function() toggleInGroup = function()
vscode.action("workbench.action.quickOpenPreviousRecentlyUsedEditorInGroup") vscode.action("workbench.action.quickOpenPreviousRecentlyUsedEditorInGroup")
@@ -124,13 +122,25 @@ local tabs = {
end, end,
select = function() select = function()
vscode.action("workbench.action.quickOpenPreviousRecentlyUsedEditor") 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>e", 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><leader>E", 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>es", 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>ep", 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>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 -- Files
local files = { local files = {