137 lines
5.2 KiB
Lua
137 lines
5.2 KiB
Lua
local M = {}
|
|
|
|
function M.setup(vscode)
|
|
local fold = {
|
|
unfold_all = function()
|
|
vscode.action("editor.unfoldAll")
|
|
end,
|
|
fold_all = function()
|
|
vscode.action("editor.foldAll")
|
|
end,
|
|
toggle = function()
|
|
vscode.action("editor.toggleFold")
|
|
end,
|
|
}
|
|
|
|
vim.keymap.set("n", "zR", fold.unfold_all, { desc = "Unfold All" })
|
|
vim.keymap.set("n", "zM", fold.fold_all, { desc = "Fold All" })
|
|
vim.keymap.set("n", "za", fold.toggle, { desc = "Toggle Fold" })
|
|
|
|
vim.keymap.set("n", "<leader><leader>z", function()
|
|
vscode.action("workbench.action.toggleZenMode")
|
|
end, { desc = "Toggle Zen Mode" })
|
|
|
|
vim.keymap.set("n", "<leader><leader>b", function()
|
|
vscode.action("workbench.action.toggleSidebarVisibility")
|
|
end, { desc = "Toggle Sidebar Visibility" })
|
|
|
|
vim.keymap.set("n", "<leader><leader>B", function()
|
|
vscode.action("workbench.action.toggleSidebarPosition")
|
|
end, { desc = "Toggle Sidebar Position" })
|
|
|
|
vim.keymap.set("n", "<leader>be", function()
|
|
vscode.action("workbench.view.explorer")
|
|
end, { desc = "Open Sidebar Explorer" })
|
|
|
|
vim.keymap.set("n", "<leader>bs", function()
|
|
vscode.action("workbench.view.search")
|
|
end, { desc = "Open Sidebar Search" })
|
|
|
|
vim.keymap.set("n", "<leader><leader>l", function()
|
|
local line_numbers = vscode.get_config("editor.lineNumbers")
|
|
local next_value = line_numbers == "on" and "relative" or "on"
|
|
vscode.update_config("editor.lineNumbers", next_value, "workspace")
|
|
end, { desc = "Toggle Line Number Mode" })
|
|
|
|
vim.keymap.set("n", "<leader><leader>w", function()
|
|
local wrap_mode = vscode.get_config("editor.wordWrap")
|
|
local next_value = wrap_mode == "on" and "off" or "on"
|
|
vscode.update_config("editor.wordWrap", next_value, "workspace")
|
|
end, { desc = "Toggle Word Wrap Mode" })
|
|
|
|
vim.keymap.set("n", "<leader>cf", function()
|
|
vscode.action("editor.action.formatDocument")
|
|
end, { desc = "Format Code" })
|
|
|
|
vim.keymap.set("n", "<leader><leader>e", function()
|
|
vscode.action("workbench.action.quickOpenPreviousRecentlyUsedEditorInGroup")
|
|
vscode.action("list.select")
|
|
end, { desc = "Toggle Between Two Editors Inside Group" })
|
|
|
|
vim.keymap.set("n", "<leader><leader>E", function()
|
|
vscode.action("workbench.action.quickOpenPreviousRecentlyUsedEditor")
|
|
vscode.action("list.select")
|
|
end, { desc = "Toggle Between Two Editors Cross Groups" })
|
|
|
|
vim.keymap.set("n", "<leader>eg", function()
|
|
vscode.action("workbench.action.quickOpenPreviousRecentlyUsedEditor")
|
|
end, { desc = "Select Editor Cross Groups" })
|
|
|
|
vim.keymap.set("n", "<leader>ei", function()
|
|
vscode.action("workbench.action.quickOpenPreviousRecentlyUsedEditorInGroup")
|
|
end, { desc = "Select Editor Inside Group" })
|
|
|
|
vim.keymap.set("n", "<leader>eh", function()
|
|
vscode.action("workbench.action.previousEditorInGroup")
|
|
end, { desc = "Previous Editor In Group" })
|
|
|
|
vim.keymap.set("n", "<leader>el", function()
|
|
vscode.action("workbench.action.nextEditorInGroup")
|
|
end, { desc = "Next Editor In Group" })
|
|
|
|
vim.keymap.set("n", "<leader>ed", function()
|
|
vscode.action("workbench.action.closeActiveEditor")
|
|
end, { desc = "Close Editor" })
|
|
|
|
vim.keymap.set("n", "<leader>emn", function()
|
|
vscode.action("workbench.action.moveEditorToNextGroup")
|
|
end, { desc = "Move Editor To Next Group" })
|
|
|
|
vim.keymap.set("n", "<leader>emp", function()
|
|
vscode.action("workbench.action.moveEditorToPreviousGroup")
|
|
end, { desc = "Move Editor To Previous Group" })
|
|
|
|
vim.keymap.set("n", "<leader><leader>g", function()
|
|
vscode.action("workbench.action.focusNextGroup")
|
|
end, { desc = "Focus Next Group" })
|
|
|
|
vim.keymap.set("n", "<leader>gv", function()
|
|
vscode.action("workbench.action.splitEditorRight")
|
|
end, { desc = "Split Editor Group Vertically" })
|
|
|
|
vim.keymap.set("n", "<leader>gs", function()
|
|
vscode.action("workbench.action.splitEditorDown")
|
|
end, { desc = "Split Editor Group Horizontally" })
|
|
|
|
vim.keymap.set("n", "<leader>g=", function()
|
|
vscode.action("workbench.action.evenEditorWidths")
|
|
end, { desc = "Equal Group Size" })
|
|
|
|
vim.keymap.set("n", "<leader>gd", function()
|
|
vscode.action("workbench.action.closeGroup")
|
|
end, { desc = "Close Group, Keep Editors" })
|
|
|
|
vim.keymap.set("n", "<leader>gD", function()
|
|
vscode.action("workbench.action.closeEditorsAndGroup")
|
|
end, { desc = "Close Group And Editors" })
|
|
|
|
vim.keymap.set("n", "<leader>sf", function()
|
|
vscode.action("workbench.action.quickOpen")
|
|
vscode.action("workbench.action.quickOpenSelectNext")
|
|
end, { desc = "Search Files" })
|
|
|
|
vim.keymap.set("n", "<leader>ss", function()
|
|
vscode.action("workbench.action.gotoSymbol")
|
|
end, { desc = "Search Symbols" })
|
|
|
|
vim.keymap.set("n", "<leader>sb", function()
|
|
vscode.action("breadcrumbs.focusAndSelect")
|
|
end, { desc = "Search Breadcrumbs" })
|
|
|
|
vim.keymap.set("n", "<leader>se", function()
|
|
vscode.action("workbench.action.quickOpenPreviousRecentlyUsedEditor")
|
|
end, { desc = "Search Editors Cross Groups" })
|
|
end
|
|
|
|
return M
|