diff --git a/README.md b/README.md index a41a20b..b117e66 100644 --- a/README.md +++ b/README.md @@ -7,8 +7,9 @@ |``(toggle) |b |- | Toggle Side Bar Visibility | |`` |B |- | Toggle Side Bar Position | |`` |l |- | Toggle Line Number Mode | -|`` |e |- | Toggle Editor Inside Group | -|`` |E |- | Toggle Editor Cross-Groups | +|`` |e |- | Toggle Editor Inside Group | +|`` |E |- | Toggle Editor Cross-Groups | +|`` |g |- | Toggle Groups | |`` |z |- | Toggle Zen Mode | |`` |/ |- | Toggle Flash.nvim Search | |b (side bar) |e |- | Open Sidebar Explorer | @@ -18,7 +19,12 @@ |f (file) |s |- | File search with VSCode ctrl-p | |s (search) | |e (editor) |d |- | Close Editor | -|e |l |- | Search Editor Inside Group: Least | -|e |p |- | Search Editor Inside Group: Previous | -|e |s |- | Search Editor Cross-Groups: Previous | -|g (group) | | +|e |g |- | Search Editor Cross-Groups | +|e |i |- | Search Editor Inside Group | +|e |n |- | Move Editor to Next Group | +|e |p |- | Move Editor to Previous Group | +|g (group) |= |- | Equal Groups Sizes | +|g |d |- | Close Group but Remain Editors | +|g |D |- | Close Group and Editors | +|g |s |- | Split Group Horizontally | +|g |v |- | Split Group Vertically | diff --git a/lua/config/lazyvscode.lua b/lua/config/lazyvscode.lua index 774a287..829b4d5 100644 --- a/lua/config/lazyvscode.lua +++ b/lua/config/lazyvscode.lua @@ -98,12 +98,6 @@ vim.keymap.set("n", "cf", function() vscode.action("editor.action.formatDocument") end, { desc = "Format Code" }) --- Editor Groups --- TODO: g to toggle between two groups --- TODO: gv to split vertically --- TODO: gs to split horizontally --- TODO: 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", "e", tabs.toggleInGroup, { desc = "Toggle Between Two Tabs inside Group" }) -vim.keymap.set("n", "E", tabs.toggleCrossGroups, { desc = "Toggle Between Two Tabs Cross-Groups" }) -vim.keymap.set("n", "es", tabs.select, { desc = "Select Tab Cross-Groups" }) -vim.keymap.set("n", "ep", tabs.previous, { desc = "Select Tab in Group: Previous" }) -vim.keymap.set("n", "el", tabs.least, { desc = "Select Tab in Group: Least" }) -vim.keymap.set("n", "ed", tabs.close, { desc = "Close Tab" }) -vim.keymap.set('n', "emn", tabs.moveToNextGroup, { desc = "Move Editor to the Next Group" }) -vim.keymap.set('n', "emp", tabs.moveToPreviousGroup, { desc = "Move Editor to the Previous Group" }) +vim.keymap.set("n", "e", tabs.toggleInGroup, { desc = "Toggle Between Two Editors inside Group" }) +vim.keymap.set("n", "E", tabs.toggleCrossGroups, { desc = "Toggle Between Two Editors Cross-Groups" }) +vim.keymap.set("n", "eg", tabs.select, { desc = "Select Editor Cross-Groups" }) +vim.keymap.set("n", "ei", tabs.previous, { desc = "Select Editor Inside Group" }) +-- vim.keymap.set("n", "ep", tabs.previous, { desc = "Select Editor in Group: Previous" }) +-- vim.keymap.set("n", "el", tabs.least, { desc = "Select Editor in Group: Least" }) +vim.keymap.set("n", "ed", tabs.close, { desc = "Close Editor" }) +vim.keymap.set('n', "en", tabs.moveToNextGroup, { desc = "Move Editor to the Next Group" }) +vim.keymap.set('n', "ep", tabs.moveToPreviousGroup, { desc = "Move Editor to the Previous Group" }) + +-- Editor Groups +-- TODO: 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", "g", groups.toggle, { desc = "Focus Next Group" }) +vim.keymap.set("n", "gv", groups.vertical, { desc = "Split Editor Group Vertically" }) +vim.keymap.set("n", "gs", groups.horizontal, { desc = "Split Editor Group Horizontally" }) +vim.keymap.set("n", "g=", groups.equalGroupSize, { desc = "Equal Group Size" }) +vim.keymap.set("n", "gd", groups.close, { desc = "Close Group, Remain Editors" }) +vim.keymap.set("n", "gD", groups.alsoCloseEditors, { desc = "Close Group and Editors" }) -- Files local files = {