feat(LazyVSCode): operations on Groups
This commit is contained in:
@@ -98,12 +98,6 @@ vim.keymap.set("n", "<leader>cf", function()
|
||||
vscode.action("editor.action.formatDocument")
|
||||
end, { desc = "Format Code" })
|
||||
|
||||
-- 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
|
||||
|
||||
-- Editor
|
||||
local tabs = {
|
||||
toggleInGroup = function()
|
||||
@@ -133,14 +127,46 @@ local tabs = {
|
||||
vscode.action("workbench.action.moveEditorToPreviousGroup")
|
||||
end,
|
||||
}
|
||||
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" })
|
||||
vim.keymap.set("n", "<leader><leader>e", tabs.toggleInGroup, { desc = "Toggle Between Two Editors inside Group" })
|
||||
vim.keymap.set("n", "<leader><leader>E", tabs.toggleCrossGroups, { desc = "Toggle Between Two Editors Cross-Groups" })
|
||||
vim.keymap.set("n", "<leader>eg", tabs.select, { desc = "Select Editor Cross-Groups" })
|
||||
vim.keymap.set("n", "<leader>ei", tabs.previous, { desc = "Select Editor Inside Group" })
|
||||
-- vim.keymap.set("n", "<leader>ep", tabs.previous, { desc = "Select Editor in Group: Previous" })
|
||||
-- vim.keymap.set("n", "<leader>el", tabs.least, { desc = "Select Editor in Group: Least" })
|
||||
vim.keymap.set("n", "<leader>ed", tabs.close, { desc = "Close Editor" })
|
||||
vim.keymap.set('n', "<leader>en", tabs.moveToNextGroup, { desc = "Move Editor to the Next Group" })
|
||||
vim.keymap.set('n', "<leader>ep", tabs.moveToPreviousGroup, { desc = "Move Editor to the Previous Group" })
|
||||
|
||||
-- Editor Groups
|
||||
-- TODO: <leader>gd to delete a group
|
||||
local groups = {
|
||||
toggle = function()
|
||||
vscode.action("workbench.action.focusNextGroup")
|
||||
end,
|
||||
vertical = function()
|
||||
vscode.action("workbench.action.splitEditorRight")
|
||||
-- vscode.action("workbench.action.moveEditorToNextGroup")
|
||||
end,
|
||||
horizontal = function()
|
||||
vscode.action("workbench.action.splitEditorDown")
|
||||
-- vscode.action("workbench.action.moveEditorToPreviousGroup")
|
||||
end,
|
||||
equalGroupSize = function ()
|
||||
vscode.action("workbench.action.evenEditorWidths")
|
||||
end,
|
||||
close = function ()
|
||||
vscode.action("workbench.action.closeGroup")
|
||||
end,
|
||||
alsoCloseEditors = function ()
|
||||
vscode.action("workbench.action.closeEditorsAndGroup")
|
||||
end,
|
||||
}
|
||||
vim.keymap.set("n", "<leader><leader>g", groups.toggle, { desc = "Focus Next Group" })
|
||||
vim.keymap.set("n", "<leader>gv", groups.vertical, { desc = "Split Editor Group Vertically" })
|
||||
vim.keymap.set("n", "<leader>gs", groups.horizontal, { desc = "Split Editor Group Horizontally" })
|
||||
vim.keymap.set("n", "<leader>g=", groups.equalGroupSize, { desc = "Equal Group Size" })
|
||||
vim.keymap.set("n", "<leader>gd", groups.close, { desc = "Close Group, Remain Editors" })
|
||||
vim.keymap.set("n", "<leader>gD", groups.alsoCloseEditors, { desc = "Close Group and Editors" })
|
||||
|
||||
-- Files
|
||||
local files = {
|
||||
|
Reference in New Issue
Block a user