Merge branch 'nix-hm' into local_machine

This commit is contained in:
Martin Larsson 2025-02-23 01:38:01 +00:00
commit 99f2c6128d
24 changed files with 469 additions and 844 deletions

53
flake.lock generated
View file

@ -58,11 +58,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1738275749, "lastModified": 1740208222,
"narHash": "sha256-PM+cGduJ05EZ+YXulqAwUFjvfKpPmW080mcuN6R1POw=", "narHash": "sha256-FqgPcK5BK+Mc4cGBCGz555UsVd/TQK9FvmuamBWu+ZY=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "a8159195bfaef3c64df75d3b1e6a68d49d392be9", "rev": "f4a07823a298deff0efb0db30f9318511de7c232",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -77,17 +77,14 @@
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs"
}, },
"locked": { "locked": {
"lastModified": 1738266384, "lastModified": 1740225052,
"narHash": "sha256-bElFR0jR2qRg0SrwWlm0CJJKGgPRLSoPN1N/26H4DNQ=", "narHash": "sha256-HZT4TXmTPueIjweb1VZmqdkFHuAeOBN1DuhCirWAFAw=",
"owner": "LarssonMartin1998", "path": "/home/nixos/dev/git/neovim-flake",
"repo": "neovim-flake", "type": "path"
"rev": "75c20106d069de3f38b7c0c420e1836ac4681b18",
"type": "github"
}, },
"original": { "original": {
"owner": "LarssonMartin1998", "path": "/home/nixos/dev/git/neovim-flake",
"repo": "neovim-flake", "type": "path"
"type": "github"
} }
}, },
"nix-darwin": { "nix-darwin": {
@ -97,11 +94,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1738277753, "lastModified": 1739933872,
"narHash": "sha256-iyFcCOk0mmDiv4ut9mBEuMxMZIym3++0qN1rQBg8FW0=", "narHash": "sha256-UhuvTR4OrWR+WBaRCZm4YMkvjJhZ1KZo/jRjE41m+Ek=",
"owner": "LnL7", "owner": "LnL7",
"repo": "nix-darwin", "repo": "nix-darwin",
"rev": "49b807fa7c37568d7fbe2aeaafb9255c185412f9", "rev": "6ab392f626a19f1122d1955c401286e1b7cf6b53",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -155,11 +152,11 @@
"nixpkgs": "nixpkgs_4" "nixpkgs": "nixpkgs_4"
}, },
"locked": { "locked": {
"lastModified": 1736095716, "lastModified": 1740046902,
"narHash": "sha256-csysw/Szu98QDiA2lhWk9seYOyCebeVEWL89zh1cduM=", "narHash": "sha256-Xbhz8eEqBmNpvqaGFbF5JopmfNJccWUr8eExtU/iGX4=",
"owner": "nix-community", "owner": "nix-community",
"repo": "NixOS-WSL", "repo": "NixOS-WSL",
"rev": "63c3b4ed1712a3a0621002cd59bfdc80875ecbb0", "rev": "c4f6ae89468939d9fcf1a317c062cf5dd02004ea",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -171,11 +168,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1737110817, "lastModified": 1740019556,
"narHash": "sha256-DSenga8XjPaUV5KUFW/i3rNkN7jm9XmguW+qQ1ZJTR4=", "narHash": "sha256-vn285HxnnlHLWnv59Og7muqECNMS33mWLM14soFIv2g=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "041c867bad68dfe34b78b2813028a2e2ea70a23c", "rev": "dad564433178067be1fbdfcce23b546254b6d641",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -216,27 +213,27 @@
}, },
"nixpkgs_4": { "nixpkgs_4": {
"locked": { "locked": {
"lastModified": 1733384649, "lastModified": 1739624908,
"narHash": "sha256-K5DJ2LpPqht7K76bsxetI+YHhGGRyVteTPRQaIIKJpw=", "narHash": "sha256-f84lBmLl4tkDp1ZU5LBTSFzlxXP4926DVW3KnXrke10=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "190c31a89e5eec80dd6604d7f9e5af3802a58a13", "rev": "a60651b217d2e529729cbc7d989c19f3941b9250",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "NixOS",
"ref": "nixos-24.05", "ref": "nixos-24.11",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
}, },
"nixpkgs_5": { "nixpkgs_5": {
"locked": { "locked": {
"lastModified": 1738142207, "lastModified": 1739866667,
"narHash": "sha256-NGqpVVxNAHwIicXpgaVqJEJWeyqzoQJ9oc8lnK9+WC4=", "narHash": "sha256-EO1ygNKZlsAC9avfcwHkKGMsmipUk1Uc0TbrEZpkn64=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "9d3ae807ebd2981d593cddd0080856873139aa40", "rev": "73cf49b8ad837ade2de76f87eb53fc85ed5d4680",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -15,7 +15,8 @@
}; };
nixos-wsl.url = "github:nix-community/NixOS-WSL/main"; nixos-wsl.url = "github:nix-community/NixOS-WSL/main";
neovim.url = "github:LarssonMartin1998/neovim-flake"; # neovim.url = "github:LarssonMartin1998/neovim-flake";
neovim.url = "path:/home/nixos/dev/git/neovim-flake";
nix-homebrew.url = "github:zhaofengli-wip/nix-homebrew"; nix-homebrew.url = "github:zhaofengli-wip/nix-homebrew";
}; };

View file

@ -49,6 +49,12 @@ let
] ]
]; ];
codelldb = pkgs.runCommand "codelldb" { } ''
mkdir -p $out/bin
cp ${pkgs.vscode-extensions.vadimcn.vscode-lldb}/share/vscode/extensions/vadimcn.vscode-lldb/adapter/codelldb $out/bin/codelldb
chmod +x $out/bin/codelldb
'';
symlinkFiles = builtins.listToAttrs ( symlinkFiles = builtins.listToAttrs (
map (file: { map (file: {
name = builtins.elemAt file 0; name = builtins.elemAt file 0;
@ -111,6 +117,8 @@ in
lldb lldb
nodejs nodejs
tree-sitter tree-sitter
codelldb
bottom
]; ];
file = symlinkFiles; file = symlinkFiles;

View file

@ -1,47 +1,38 @@
{ {
"arrow.nvim": { "branch": "master", "commit": "5438c977e729a29d96bd54c8da3103154e80dbd1" }, "arrow.nvim": { "branch": "master", "commit": "5438c977e729a29d96bd54c8da3103154e80dbd1" },
"auto-session": { "branch": "main", "commit": "021b64ed7d4ac68a37be3ad28d8e1cba5bec582c" }, "auto-session": { "branch": "main", "commit": "9c3f977aafb56bd73ba0d082c4dcbdba5666faf3" },
"blink.cmp": { "branch": "main", "commit": "1cc3b1a908fbcfd15451c4772759549724f38524" }, "blink.cmp": { "branch": "main", "commit": "18b352d12b35bca148427b607098df14b75a218f" },
"codecompanion.nvim": { "branch": "main", "commit": "e3c528aab52f32513fdb771e3e27d93efe57e12a" }, "codecompanion.nvim": { "branch": "main", "commit": "dd81bd9176daba9ea507cd0457f662c0a15c001f" },
"codesnap.nvim": { "branch": "main", "commit": "6400480aa6cc366cbd931146c429aaa64680dab9" }, "codesnap.nvim": { "branch": "main", "commit": "6400480aa6cc366cbd931146c429aaa64680dab9" },
"copilot.vim": { "branch": "release", "commit": "87038123804796ca7af20d1b71c3428d858a9124" }, "copilot.vim": { "branch": "release", "commit": "cd7f01009fb7b30e22840cadc4faad88b05c6eef" },
"diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" }, "diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" },
"dressing.nvim": { "branch": "master", "commit": "3a45525bb182730fe462325c99395529308f431e" }, "gitsigns.nvim": { "branch": "main", "commit": "4c40357994f386e72be92a46f41fc1664c84c87d" },
"fzf-lua": { "branch": "main", "commit": "6f7249741168c0751356e3b6c5c1e3bade833b6b" }, "incline.nvim": { "branch": "main", "commit": "0eb5b7f6fc6636a4e7b2eb2800b7650fd6d164a2" },
"gitsigns.nvim": { "branch": "main", "commit": "76d88f3b584e1f83b2aa51663a32cc6ee8d97eff" }, "lazy.nvim": { "branch": "main", "commit": "e5e9bf48211a13d9ee6c1077c88327c49c1ab4a0" },
"incline.nvim": { "branch": "main", "commit": "16fc9c073e3ea4175b66ad94375df6d73fc114c0" }, "leap.nvim": { "branch": "main", "commit": "8b826a9fc766bffd14288aee01847cb0d6c6c383" },
"indent-blankline.nvim": { "branch": "master", "commit": "7a698a1d7ed755af9f5a88733b23ca246ce2df28" }, "lspsaga.nvim": { "branch": "main", "commit": "4acafaf3455c57c94400e961636d979fb6ddd9fc" },
"lazy.nvim": { "branch": "main", "commit": "d8f26efd456190241afd1b0f5235fe6fdba13d4a" }, "lualine.nvim": { "branch": "master", "commit": "f4f791f67e70d378a754d02da068231d2352e5bc" },
"leap.nvim": { "branch": "main", "commit": "c6bfb191f1161fbabace1f36f578a20ac6c7642c" }, "markview.nvim": { "branch": "main", "commit": "f1e2a57388b61fff8e9d7519ce05cee27a59a57e" },
"lspsaga.nvim": { "branch": "main", "commit": "7dae6e92c82964a8889d3cd999dfd4f271e3a873" }, "neogit": { "branch": "master", "commit": "63124cf520ff24d09deb3b850e053908ab0fc66a" },
"lua-utils.nvim": { "branch": "main", "commit": "e565749421f4bbb5d2e85e37c3cef9d56553d8bd" },
"lualine.nvim": { "branch": "master", "commit": "2a5bae925481f999263d6f5ed8361baef8df4f83" },
"mason-tool-installer.nvim": { "branch": "main", "commit": "c5e07b8ff54187716334d585db34282e46fa2932" },
"mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" },
"mini.diff": { "branch": "main", "commit": "00f072250061ef498f91ed226918c9ec31a416a4" },
"neogit": { "branch": "master", "commit": "060a625660b2816649d83dbd6c7ab1b4345ea8bc" },
"neorg": { "branch": "main", "commit": "29993a7bb8279ffa0ba473a3f393daa28c645825" },
"neovim-ayu": { "branch": "master", "commit": "283badaa983234c90e857c12c1f1c18e1544360a" }, "neovim-ayu": { "branch": "master", "commit": "283badaa983234c90e857c12c1f1c18e1544360a" },
"noice.nvim": { "branch": "main", "commit": "eaed6cc9c06aa2013b5255349e4f26a6b17ab70f" }, "noice.nvim": { "branch": "main", "commit": "0427460c2d7f673ad60eb02b35f5e9926cf67c59" },
"nui.nvim": { "branch": "main", "commit": "53e907ffe5eedebdca1cd503b00aa8692068ca46" }, "nui.nvim": { "branch": "main", "commit": "53e907ffe5eedebdca1cd503b00aa8692068ca46" },
"nvim-colorizer.lua": { "branch": "master", "commit": "a065833f35a3a7cc3ef137ac88b5381da2ba302e" }, "nvim-colorizer.lua": { "branch": "master", "commit": "a065833f35a3a7cc3ef137ac88b5381da2ba302e" },
"nvim-dap": { "branch": "master", "commit": "99807078c5089ed30e0547aa4b52c5867933f426" }, "nvim-dap": { "branch": "master", "commit": "6e0e8ab4d8ed520076971465a4388dfe54a91d83" },
"nvim-dap-go": { "branch": "main", "commit": "1bacf2fa7d4dc6a8a4f6cc390f1544e5b34c35a4" }, "nvim-dap-go": { "branch": "main", "commit": "8763ced35b19c8dc526e04a70ab07c34e11ad064" },
"nvim-dap-python": { "branch": "master", "commit": "34282820bb713b9a5fdb120ae8dd85c2b3f49b51" }, "nvim-dap-python": { "branch": "master", "commit": "34282820bb713b9a5fdb120ae8dd85c2b3f49b51" },
"nvim-dap-repl-highlights": { "branch": "master", "commit": "a7512fc0a0de0c0be8d58983939856dda6f72451" }, "nvim-dap-repl-highlights": { "branch": "master", "commit": "a7512fc0a0de0c0be8d58983939856dda6f72451" },
"nvim-dap-ui": { "branch": "master", "commit": "727c032a8f63899baccb42a1c26f27687e62fc5e" }, "nvim-dap-ui": { "branch": "master", "commit": "bc81f8d3440aede116f821114547a476b082b319" },
"nvim-dap-virtual-text": { "branch": "master", "commit": "df66808cd78b5a97576bbaeee95ed5ca385a9750" }, "nvim-dap-virtual-text": { "branch": "master", "commit": "df66808cd78b5a97576bbaeee95ed5ca385a9750" },
"nvim-nio": { "branch": "master", "commit": "a428f309119086dc78dd4b19306d2d67be884eee" }, "nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" },
"nvim-notify": { "branch": "master", "commit": "a3020c2cf4dfc4c4f390c4a21e84e35e46cf5d17" }, "nvim-surround": { "branch": "main", "commit": "ae298105122c87bbe0a36b1ad20b06d417c0433e" },
"nvim-surround": { "branch": "main", "commit": "9f0cb495f25bff32c936062d85046fbda0c43517" }, "nvim-treesitter": { "branch": "master", "commit": "5774e7d3da4f681296a87fcd85d17779ad362a4f" },
"nvim-treesitter": { "branch": "master", "commit": "984214ef8e4ca18d77639663319aabdfba89632f" }, "nvim-treesitter-context": { "branch": "master", "commit": "198720b4016af04c9590f375d714d5bf8afecc1a" },
"nvim-treesitter-context": { "branch": "master", "commit": "d0dd7ce5a9d0be1f28086e818e52fdc5c78975df" },
"nvim-treesitter-textobjects": { "branch": "master", "commit": "ad8f0a472148c3e0ae9851e26a722ee4e29b1595" }, "nvim-treesitter-textobjects": { "branch": "master", "commit": "ad8f0a472148c3e0ae9851e26a722ee4e29b1595" },
"nvim-web-devicons": { "branch": "master", "commit": "aafa5c187a15701a7299a392b907ec15d9a7075f" }, "nvim-web-devicons": { "branch": "master", "commit": "1020869742ecb191f260818234517f4a1515cfe8" },
"pathlib.nvim": { "branch": "main", "commit": "57e5598af6fe253761c1b48e0b59b7cd6699e2c1" },
"persistent-breakpoints.nvim": { "branch": "main", "commit": "4b199b1dcfd136cac8b0fa9c8dbbdeb81463f7a9" }, "persistent-breakpoints.nvim": { "branch": "main", "commit": "4b199b1dcfd136cac8b0fa9c8dbbdeb81463f7a9" },
"plenary.nvim": { "branch": "master", "commit": "3707cdb1e43f5cea73afb6037e6494e7ce847a66" }, "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" },
"rustaceanvim": { "branch": "master", "commit": "0a1876b970ab946be3f4d341e9d743a5d62d646a" }, "rustaceanvim": { "branch": "master", "commit": "f03035fa03ccb36cd26d0792c946fbacba1d1a39" },
"tiny-inline-diagnostic.nvim": { "branch": "main", "commit": "5922bb3dd691a2a37bd51e20d4a3dc7895221e51" }, "snacks.nvim": { "branch": "main", "commit": "b100c937177536cf2aa634ddd2aa5b8a1dd23ace" },
"vim-repeat": { "branch": "master", "commit": "65846025c15494983dafe5e3b46c8f88ab2e9635" } "vim-repeat": { "branch": "master", "commit": "65846025c15494983dafe5e3b46c8f88ab2e9635" }
} }

View file

@ -2,7 +2,7 @@ return {
type = "server", type = "server",
port = "${port}", port = "${port}",
executable = { executable = {
command = vim.fn.exepath("codelldb"), -- Update with your codelldb binary path command = vim.fn.exepath("codelldb"),
args = { "--port", "${port}" }, args = { "--port", "${port}" },
}, },
} }

View file

@ -26,18 +26,10 @@ function M.setup()
vim.api.nvim_command("command! " .. cmd[1] .. " " .. cmd[2]) vim.api.nvim_command("command! " .. cmd[1] .. " " .. cmd[2])
end end
utils.add_keymaps({ utils.set_keymap_list({
n = { { "<leader>ff", function() M.format() end },
["<leader>ff"] = { { "<leader>fe", function() M.format_enable() end },
cmd = function() M.format(true) end { "<leader>fd", function() M.format_disable() end },
},
["<leader>fe"] = {
cmd = M.format_enable,
},
["<leader>fd"] = {
cmd = M.format_disable,
},
},
}) })
end end

View file

@ -1,151 +1,98 @@
local utils = require("utils")
local g = vim.g local g = vim.g
g.mapleader = " " g.mapleader = " "
g.maplocalleader = " " g.maplocalleader = " "
local move_up = { local move_up = { "v:count || mode(1)[0:1] == \"no\" ? \"k\" : \"gk\"", { expr = true } }
cmd = "v:count || mode(1)[0:1] == \"no\" ? \"k\" : \"gk\"", local move_down = { "v:count || mode(1)[0:1] == \"no\" ? \"j\" : \"gj\"", { expr = true } }
opts = {
expr = true
}
}
local move_down = { utils.foreach({
cmd = "v:count || mode(1)[0:1] == \"no\" ? \"j\" : \"gj\"", {
opts = { "n",
expr = true {
}
}
local utils = require("utils")
utils.add_keymaps({
n = {
-- Using lspsaga for hover doc -- Using lspsaga for hover doc
["K"] = { { "K", "<Nop>", },
cmd = "<Nop>",
},
-- Using lspsaga finder with gr which does references -- Using lspsaga finder with gr which does references
["grr"] = { { "grr", "<Nop>", },
cmd = "<Nop>", { "gra", "<Nop>", },
}, { "grn", "<Nop>", },
["gra"] = { { "gri", "<Nop>", },
cmd = "<Nop>",
},
["grn"] = {
cmd = "<Nop>",
},
["gri"] = {
cmd = "<Nop>",
},
-- Navigation -- Navigation
["<C-Left>"] = { { "<C-Left>", "<C-w>h", },
cmd = "<C-w>h", { "<C-Down>", "<C-w>j", },
}, { "<C-Up>", "<C-w>k", },
["<C-Down>"] = { { "<C-Right>", "<C-w>l", },
cmd = "<C-w>j", { "<C-h>", "<C-w>h", },
}, { "<C-j>", "<C-w>j", },
["<C-Up>"] = { { "<C-k>", "<C-w>k", },
cmd = "<C-w>k", { "<C-l>", "<C-w>l", },
},
["<C-Right>"] = {
cmd = "<C-w>l",
},
["<C-h>"] = {
cmd = "<C-w>h",
},
["<C-j>"] = {
cmd = "<C-w>j",
},
["<C-k>"] = {
cmd = "<C-w>k",
},
["<C-l>"] = {
cmd = "<C-w>l",
},
-- Window -- Window
["<C-q>"] = { { "<C-q>", "<C-w>q", },
cmd = "<C-w>q",
},
-- Disable current highlights -- Disable current highlights
["<Esc>"] = { { "<Esc>", "<cmd> noh <CR>", },
cmd = "<cmd> noh <CR>",
},
-- Copies the entire file -- Copies the entire file
["<C-c>"] = { { "<C-c>", ":%y+<CR>", { silent = true } },
cmd = ":%y+<CR>",
opts = {
silent = true
}
},
-- Allow moving the cursor through wrapped lines with <Up> and <Down> -- Allow moving the cursor through wrapped lines with <Up> and <Down>
-- http://www.reddit.com/r/vim/comments/2k4cbr/problem_with_gj_and_gk/ -- http://www.reddit.com/r/vim/comments/2k4cbr/problem_with_gj_and_gk/
-- empty mode is same as using <cmd> :map -- empty mode is same as using <cmd> :map
-- also don't use g[j|k] when in operator pending mode, so it doesn't alter d, y or c behaviour -- also don't use g[j|k] when in operator pending mode,
["<Up>"] = move_up, -- so it doesn't alter d, y or c behaviour
["<Down>"] = move_down, { "<Up>", move_up[1], move_up[2], },
["j"] = move_down, { "<Down>", move_down[1], move_down[2], },
["k"] = move_up, { "j", move_down[1], move_down[2], },
{ "k", move_up[1], move_up[2], },
-- Maps to remove -- Maps to remove
["<C-z>"] = { { "<C-z>", "<Nop>", },
cmd = "<Nop>",
},
-- Marks are less frequently used than leaping, also, less relevant with arrow and fzf navigation. -- Marks are less frequently used than leaping, also, less relevant with arrow and fzf navigation.
-- Prioritize regular m for leaping, and <leader>m for setting marks. -- Prioritize regular m for leaping, and <leader>m for setting marks.
["<leader>m"] = { { "<leader>m", "m", },
cmd = "m", { "[d", function()
},
["[d"] = {
cmd = function()
vim.diagnostic.jump({ count = -1, float = false }) vim.diagnostic.jump({ count = -1, float = false })
end end },
}, { "]d", function()
["]d"] = {
cmd = function()
vim.diagnostic.jump({ count = 1, float = false }) vim.diagnostic.jump({ count = 1, float = false })
end end },
}, }
},
i = {},
v = {
["<Up>"] = move_up,
["<Down>"] = move_down,
["j"] = move_down,
["k"] = move_up,
["<tab>"] = {
cmd = ">gv",
},
["<S-tab>"] = {
cmd = "<gv",
}, },
{
"v",
{
{ "<Up>", move_up[1], move_up[2], },
{ "<Down>", move_down[1], move_down[2], },
{ "j", move_down[1], move_down[2], },
{ "k", move_up[1], move_up[2], },
{ "<tab>", ">gv", },
{ "<S-tab>", "<gv", },
-- Marks are less frequently used than leaping, also, less relevant with arrow and fzf navigation. -- Marks are less frequently used than leaping, also, less relevant with arrow and fzf navigation.
-- Prioritize regular m for leaping, and <leader>m for setting marks. -- Prioritize regular m for leaping, and <leader>m for setting marks.
["<leader>m"] = { { "<leader>m", "m", },
cmd = "m",
}, },
}, },
x = { {
["<Up>"] = move_up, "x",
["<Down>"] = move_down, {
["j"] = move_down, { "<Up>", move_up[1], move_up[2], },
["k"] = move_up, { "<Down>", move_down[1], move_down[2], },
["p"] = { { "j", move_down[1], move_down[2], },
cmd = "p:let @+=@0<CR>:let @\"=@0<CR>", { "k", move_up[1], move_up[2], },
opts = { { "p", "p:let @+=@0<CR>:let @\"=@0<CR>", { silent = true }, },
silent = true }
}, },
{
"t",
{
{ "<C-q>", "<C-\\><C-N>", },
}
}, },
}, }, function(mode_mapping)
t = { local mode = mode_mapping[1]
["<C-q>"] = { local mappings = mode_mapping[2]
cmd = "<C-\\><C-N>", utils.set_keymap_list(mappings, mode)
}, end)
},
})

View file

@ -1,12 +1,14 @@
local utils = require("utils") local utils = require("utils")
-- https://clangd.llvm.org/extensions.html#switch-between-sourceheader -- https://clangd.llvm.org/extensions.html#switch-between-sourceheader
local function switch_source_header(bufnr) local function switch_source_header()
bufnr = utils.validate_bufnr(bufnr) local bufnr = utils.validate_bufnr(0)
local clangd_client = vim.lsp.get_clients({ bufnr = bufnr, name = "clangd" })[1] local clangd_client = vim.lsp.get_clients({ bufnr = bufnr, name = "clangd" })[1]
local params = { uri = vim.uri_from_bufnr(bufnr) }
if clangd_client then if clangd_client then
clangd_client.request("textDocument/switchSourceHeader", params, function(err, result) clangd_client.request(
"textDocument/switchSourceHeader",
{ uri = vim.uri_from_bufnr(bufnr) },
function(err, result)
if err then if err then
error(tostring(err)) error(tostring(err))
end end
@ -44,19 +46,9 @@ return {
"compile_flags.txt", "compile_flags.txt",
"configure.ac", "configure.ac",
}, },
on_attach = function(_, bufnr) on_attach = function()
local lsp_maps = { utils.set_keymap_list({
{ { "<leader>ko", switch_source_header, },
"<leader>ko", })
function() switch_source_header(0) end,
},
}
local keymaps = { n = {} }
for i, _ in ipairs(lsp_maps) do
local binding, cmd = unpack(lsp_maps[i])
keymaps.n[binding] = { cmd = cmd, opts = { buffer = bufnr } }
end
utils.add_keymaps(keymaps)
end, end,
} }

View file

@ -24,34 +24,9 @@ local function global_on_attach(client, bufnr)
}) })
end end
utils.add_keymaps({ utils.set_keymap_list({
n = { { "gd", function() vim.lsp.buf.definition({ reuse_win = true, }) end, { noremap = true, buffer = bufnr } },
{ "gD", function() vim.lsp.buf.declaration({ reuse_win = true, }) end, { noremap = true, buffer = bufnr } },
["gd"] = {
cmd = function()
vim.lsp.buf.definition({
reuse_win = true,
})
end,
opts = {
noremap = true,
silent = true,
buffer = bufnr
}
},
["gD"] = {
cmd = function()
vim.lsp.buf.declaration({
reuse_win = true,
})
end,
opts = {
noremap = true,
silent = true,
buffer = bufnr
}
},
}
}) })
end end

View file

@ -11,7 +11,6 @@ return {
"~/Dev", "~/Dev",
"~/Dev/Git", "~/Dev/Git",
"~/.config", "~/.config",
"~/dev/git/.dotfiles",
}, },
}, },
init = function() init = function()

View file

@ -3,11 +3,8 @@ return {
dependencies = { dependencies = {
"nvim-lua/plenary.nvim", "nvim-lua/plenary.nvim",
"nvim-treesitter/nvim-treesitter", "nvim-treesitter/nvim-treesitter",
{ 'echasnovski/mini.diff', version = false },
{ "stevearc/dressing.nvim", opts = {} },
}, },
config = function() opts = {
require("codecompanion").setup({
strategies = { strategies = {
chat = { chat = {
adapter = "copilot", adapter = "copilot",
@ -30,26 +27,13 @@ return {
opts = { opts = {
log_level = "DEBUG", log_level = "DEBUG",
}, },
})
local keymaps = {
n = {
["<Leader>ci"] = { cmd = "<cmd>CodeCompanion<cr>" },
["<Leader>cc"] = { cmd = "<cmd>CodeCompanionChat toggle<cr>" },
["<Leader>cm"] = { cmd = "<cmd>CodeCompanion /commit<cr>" },
}, },
v = { keys = {
["<Leader>ci"] = { cmd = "<cmd>CodeCompanion<cr>" }, { "<Leader>ci", "<cmd>CodeCompanion<cr>" },
["ga"] = { cmd = "<cmd>CodeCompanionAdd<cr>" }, { "<Leader>cc", "<cmd>CodeCompanionChat toggle<cr>" },
["<Leader>ce"] = { cmd = "<cmd>CodeCompanion /explain<cr>" }, { "<Leader>ce", "<cmd>CodeCompanion /explain<cr>", mode = "v" },
["<Leader>cf"] = { cmd = "<cmd>CodeCompanion /fix<cr>" }, },
["<Leader>ct"] = { cmd = "<cmd>CodeCompanion /tests<cr>" }, init = function()
}
}
local utils = require("utils")
utils.add_opts_to_all_mappings(keymaps, { silent = true })
utils.add_keymaps(keymaps)
vim.cmd([[cab cc CodeCompanion]]) vim.cmd([[cab cc CodeCompanion]])
end end
} }

View file

@ -3,8 +3,7 @@ return {
build = "make", build = "make",
event = "VeryLazy", event = "VeryLazy",
lazy = true, lazy = true,
config = function() opts = {
require("codesnap").setup({
mac_window_bar = true, mac_window_bar = true,
title = "codesnap.nvim", title = "codesnap.nvim",
code_font_family = "JetBrainsMono Nerd Font", code_font_family = "JetBrainsMono Nerd Font",
@ -12,15 +11,8 @@ return {
has_breadcrumbs = true, has_breadcrumbs = true,
bg_theme = "grape", bg_theme = "grape",
watermark = "", watermark = "",
})
require("utils").add_keymaps({
v = {
["<leader>cs"] = {
cmd = ":CodeSnap<CR>",
opts = { silent = true },
}, },
} keys = {
}) { "<leader>cs", ":CodeSnap<CR>", mode = "v", silent = true, noremap = true },
end, },
} }

View file

@ -1,18 +1,18 @@
return { return {
"github/copilot.vim", "github/copilot.vim",
config = function() event = "InsertEnter",
init = function()
vim.g.copilot_no_tab_map = true vim.g.copilot_no_tab_map = true
require("utils").add_keymaps({ end,
i = { keys = {
["<Right>"] = { {
cmd = 'copilot#Accept("\\<Right>")', "<Right>",
opts = { 'copilot#Accept("\\<Right>")',
mode = "i",
expr = true, expr = true,
replace_keycodes = false, replace_keycodes = false,
silent = true, silent = true,
} desc = "Copilot Accept with <Right>",
} },
} },
})
end
} }

View file

@ -1,15 +1,18 @@
return { return {
"b0o/incline.nvim", "b0o/incline.nvim",
dependencies = { dependencies = {
"lewis6991/gitsigns.nvim" {
"lewis6991/gitsigns.nvim",
opts = {},
keys = {
{ "[g", function() require("gitsigns").nav_hunk("prev") end, },
{ "]g", function() require("gitsigns").nav_hunk("next") end, },
}
}
}, },
event = "VeryLazy", event = "VeryLazy",
lazy = true, lazy = true,
config = function() opts = {
local gitsigns = require("gitsigns")
gitsigns.setup({})
local devicons = require("nvim-web-devicons")
require("incline").setup({
window = { window = {
padding = 0, padding = 0,
}, },
@ -21,7 +24,7 @@ return {
if filename == "" then if filename == "" then
filename = "[No Name]" filename = "[No Name]"
end end
local ft_icon, ft_color = devicons.get_icon_color(filename) local ft_icon, ft_color = require("nvim-web-devicons").get_icon_color(filename)
local function get_git_diff() local function get_git_diff()
local icons = { removed = "", changed = "", added = "" } local icons = { removed = "", changed = "", added = "" }
@ -79,17 +82,5 @@ return {
{ " " } { " " }
} }
end, end,
require("utils").add_keymaps({
n = {
["[g"] = {
cmd = function() gitsigns.nav_hunk("prev") end
}, },
["]g"] = {
cmd = function() gitsigns.nav_hunk("next") end
}
}
})
})
end,
} }

View file

@ -1,3 +1,15 @@
local function leap_across_windows()
require("leap").leap({
target_windows = require("leap.user").get_focusable_windows()
})
end
local function leap_in_current_buffer()
require("leap").leap({
target_windows = { vim.api.nvim_get_current_win() }
})
end
local saved_hlsearch = false local saved_hlsearch = false
local saved_highlights = {} local saved_highlights = {}
local colors = require("ayu.colors") local colors = require("ayu.colors")
@ -19,7 +31,13 @@ return {
}, },
event = "VeryLazy", event = "VeryLazy",
lazy = true, lazy = true,
config = function() opts = {},
keys = {
{ "m", function() leap_across_windows() end, mode = "n" },
{ "m", function() leap_in_current_buffer() end, mode = "v" },
{ "m", function() leap_in_current_buffer() end, mode = "o" },
},
init = function()
local leap = require("leap") local leap = require("leap")
-- Disable auto jumping to the first match -- Disable auto jumping to the first match
@ -53,42 +71,5 @@ return {
for _, cmd in ipairs(autocmds) do for _, cmd in ipairs(autocmds) do
utils.create_user_event_cb(cmd.event_name, cmd.cb, leap_augroup_name) utils.create_user_event_cb(cmd.event_name, cmd.cb, leap_augroup_name)
end end
local leap_user = require("leap.user")
local function leap_across_windows()
leap.leap({
target_windows = leap_user.get_focusable_windows()
})
end
local function leap_in_current_buffer()
leap.leap({
target_windows = { vim.api.nvim_get_current_win() }
})
end
utils.add_keymaps({
n = {
["m"] = {
cmd = function()
leap_across_windows()
end,
},
},
v = {
["m"] = {
cmd = function()
leap_in_current_buffer()
end,
}
},
o = {
["m"] = {
cmd = function()
leap_in_current_buffer()
end,
}
}
})
end, end,
} }

View file

@ -7,9 +7,7 @@ return {
dependencies = { dependencies = {
"nvim-tree/nvim-web-devicons", "nvim-tree/nvim-web-devicons",
}, },
after = "nvim-lspconfig", opts = {
config = function()
require("lspsaga").setup({
request_timeout = 750, request_timeout = 750,
symbol_in_winbar = { symbol_in_winbar = {
enable = false, enable = false,
@ -31,35 +29,14 @@ return {
hover = { hover = {
jump_on_first_press = true jump_on_first_press = true
}, },
})
local keymaps = {
n = {
["K"] = {
cmd = ":Lspsaga hover_doc<CR>"
}, },
["<leader>rn"] = { keys = {
cmd = ":Lspsaga rename<CR>" { "K", ":Lspsaga hover_doc<CR>", silent = true, },
{ "<leader>rn", ":Lspsaga rename<CR>", silent = true, },
{ "gr", ":Lspsaga finder<CR>", silent = true, },
{ "<leader>lt", ":Lspsaga peek_type_definition<CR>", silent = true, },
{ "<leader>ld", ":Lspsaga peek_definition<CR>", silent = true, },
{ "<leader>ca", ":Lspsaga code_action<CR>", silent = true, },
{ "<leader>lc", ":Lspsaga incoming_calls<CR>", silent = true, },
}, },
["gr"] = {
cmd = ":Lspsaga finder<CR>"
},
["<leader>lt"] = {
cmd = ":Lspsaga peek_type_definition<CR>"
},
["<leader>ld"] = {
cmd = ":Lspsaga peek_definition<CR>"
},
["<leader>ca"] = {
cmd = ":Lspsaga code_action<CR>"
},
["<leader>lc"] = {
cmd = ":Lspsaga incoming_calls<CR>"
},
}
}
local utils = require("utils")
utils.add_opts_to_all_mappings(keymaps, { silent = true })
utils.add_keymaps(keymaps)
end,
} }

View file

@ -1,7 +1,5 @@
local wm = require("window_management")
local function resize_mode() local function resize_mode()
if wm.is_in_resizing_mode() then if require("window_management").is_in_resizing_mode() then
return "▲ Resizing ▼" return "▲ Resizing ▼"
else else
return "" return ""
@ -15,8 +13,7 @@ return {
}, },
event = "VeryLazy", event = "VeryLazy",
lazy = true, lazy = true,
config = function() opts = {
require("lualine").setup {
options = { options = {
theme = "ayu", theme = "ayu",
section_separators = { section_separators = {
@ -56,5 +53,4 @@ return {
}, },
tabline = {}, tabline = {},
} }
end
} }

View file

@ -14,16 +14,8 @@ return {
}, },
event = "VeryLazy", event = "VeryLazy",
lazy = true, lazy = true,
config = function() opts = {},
local neogit = require("neogit") keys = {
neogit.setup() { "<leader>g", function() require("neogit").open({ kind = "vsplit" }) end }
require("utils").add_keymaps({
n = {
["<leader>g"] = {
cmd = function() neogit.open({ kind = "vsplit" }) end,
}, },
}
})
end
} }

View file

@ -5,36 +5,9 @@ local are_stepping_keymaps_active = false
return { return {
"mfussenegger/nvim-dap", "mfussenegger/nvim-dap",
dependencies = { dependencies = {
{
"rcarriga/nvim-dap-ui", "rcarriga/nvim-dap-ui",
opts = {
-- Special adapters
"leoluz/nvim-dap-go",
"mfussenegger/nvim-dap-python",
{ "nvim-neotest/nvim-nio", lazy = true },
"LiadOz/nvim-dap-repl-highlights",
"theHamsta/nvim-dap-virtual-text",
"Weissle/persistent-breakpoints.nvim",
},
config = function()
local dap = require("dap")
local dapui = require("dapui")
-- Special adapters
require("dap-go").setup()
require("dap-python").setup("python3")
-- Special adapters
require("dap.ext.vscode").load_launchjs()
require("persistent-breakpoints").setup {
load_breakpoints_event = { "BufReadPost" }
}
require("nvim-dap-repl-highlights").setup()
require("nvim-dap-virtual-text").setup()
local virtual_text = require("nvim-dap-virtual-text/virtual_text")
local breakpoint_api = require("persistent-breakpoints.api")
dapui.setup({
controls = { controls = {
enabled = false, enabled = false,
}, },
@ -54,32 +27,35 @@ return {
size = 15 size = 15
} }
}, },
}) },
},
-- Special adapters
{ "leoluz/nvim-dap-go", opts = {} },
{ "mfussenegger/nvim-dap-python", },
{ "nvim-neotest/nvim-nio", lazy = true },
{ "LiadOz/nvim-dap-repl-highlights", opts = {} },
{ "theHamsta/nvim-dap-virtual-text", opts = {} },
{ "Weissle/persistent-breakpoints.nvim", opts = { load_breakpoints_event = { "BufReadPost" } } },
},
config = function()
local dap = require("dap")
require("dap-python").setup("python3")
require("dap.ext.vscode").load_launchjs()
local virtual_text = require("nvim-dap-virtual-text/virtual_text")
local breakpoint_api = require("persistent-breakpoints.api")
local stepping_keymaps = { local stepping_keymaps = {
n = { { "m", function() dap.step_out() end },
["m"] = { { "n", function() dap.step_over() end },
cmd = function() { "i", function() dap.step_into() end },
dap.step_out()
end
},
["n"] = {
cmd = function()
dap.step_over()
end
},
["i"] = {
cmd = function()
dap.step_into()
end
},
}
} }
local function enter_debug_mode() local function enter_debug_mode()
dapui.open() require("dapui").open()
if not are_stepping_keymaps_active then if not are_stepping_keymaps_active then
utils.add_temporary_keymaps(stepping_keymaps) utils.set_keymap_list(stepping_keymaps)
are_stepping_keymaps_active = true are_stepping_keymaps_active = true
end end
@ -87,9 +63,9 @@ return {
end end
local function exit_debug_mode() local function exit_debug_mode()
dapui.close() require("dapui").close()
if are_stepping_keymaps_active then if are_stepping_keymaps_active then
utils.remove_keymaps(stepping_keymaps) utils.del_keymap_list(stepping_keymaps)
are_stepping_keymaps_active = false are_stepping_keymaps_active = false
end end
@ -117,36 +93,17 @@ return {
exit_debug_mode() exit_debug_mode()
end end
utils.add_keymaps({ local function dap_stop()
n = {
["<leader>dr"] = {
cmd = function()
dap.continue()
end
},
["<leader>bt"] = {
cmd = function()
breakpoint_api.toggle_breakpoint()
end
},
["<leader>bc"] = {
cmd = function()
breakpoint_api.set_conditional_breakpoint()
end
},
["<leader>br"] = { -- breakpoint remove
cmd = function()
breakpoint_api.clear_all_breakpoints()
end
},
["<leader>ds"] = {
cmd = function()
dap.disconnect({ terminateDebuggee = true }) dap.disconnect({ terminateDebuggee = true })
dap.close() dap.close()
exit_debug_mode() exit_debug_mode()
end end
}, utils.set_keymap_list({
} { "<leader>dr", dap.continue },
{ "<leader>bt", breakpoint_api.toggle_breakpoint },
{ "<leader>bc", breakpoint_api.set_conditional_breakpoint },
{ "<leader>br", breakpoint_api.clear_all_breakpoints },
{ "<leader>ds", dap_stop },
}) })
end, end,
} }

View file

@ -1,4 +1,5 @@
return { return {
"nvim-lua/plenary.nvim", "nvim-lua/plenary.nvim",
branch = "master",
lazy = true, lazy = true,
} }

View file

@ -30,29 +30,9 @@ return {
}) })
end end
utils.add_keymaps({ utils.set_keymap_list({
n = { { "gd", function() vim.lsp.buf.definition({ reuse_win = true, }) end, { noremap = true, buffer = bufnr } },
["gd"] = { { "gD", function() vim.lsp.buf.declaration({ reuse_win = true, }) end, { noremap = true, buffer = bufnr } },
cmd = function()
vim.lsp.buf.definition()
end,
opts = {
noremap = true,
silent = true,
buffer = bufnr,
}
},
["gD"] = {
cmd = function()
vim.lsp.buf.declaration()
end,
opts = {
noremap = true,
silent = true,
buffer = bufnr,
}
},
}
}) })
end, end,
} }

View file

@ -1,10 +1,8 @@
local utils = require("utils")
local wm = require("window_management")
local terminal_window = nil local terminal_window = nil
local terminal_bufnr = nil local terminal_bufnr = nil
local function open_terminal_window() local function open_terminal_window()
local utils = require("utils")
if terminal_bufnr and vim.api.nvim_buf_is_valid(terminal_bufnr) and utils.is_buf_buftype(terminal_bufnr, "terminal") then if terminal_bufnr and vim.api.nvim_buf_is_valid(terminal_bufnr) and utils.is_buf_buftype(terminal_bufnr, "terminal") then
vim.cmd("botright split") vim.cmd("botright split")
terminal_window = vim.api.nvim_get_current_win() terminal_window = vim.api.nvim_get_current_win()
@ -23,6 +21,7 @@ local function toggle_terminal()
return return
end end
local utils = require("utils")
open_terminal_window() open_terminal_window()
local term_height = vim.api.nvim_get_option("lines") local term_height = vim.api.nvim_get_option("lines")
@ -37,13 +36,7 @@ local function toggle_terminal()
vim.api.nvim_command("startinsert") vim.api.nvim_command("startinsert")
end end
utils.add_keymaps({ vim.keymap.set("n", "<leader>h", function()
n = {
["<leader>h"] = {
cmd = function()
toggle_terminal() toggle_terminal()
wm.autosize_windows() require("window_management").autosize_windows()
end, end)
}
}
})

View file

@ -1,10 +1,17 @@
local M = {} local M = {}
local overridden_default_keymaps = {} function M.set_keymap_list(keymap_list, mode)
mode = mode or "n"
M.foreach(keymap_list, function(mapping)
vim.keymap.set(mode, mapping[1], mapping[2], mapping[3] or {})
end)
end
local function is_single_keymap_table(map_table) function M.del_keymap_list(keymap_list, mode)
assert(map_table) mode = mode or "n"
return map_table.n or map_table.t or map_table.i or map_table.v or map_table.x or map_table.o M.foreach(keymap_list, function(mapping)
vim.keymap.del(mode, mapping[1])
end)
end end
function M.get_file_names_in_dir(dir, expr, strip_extension) function M.get_file_names_in_dir(dir, expr, strip_extension)
@ -75,94 +82,6 @@ function M.add_opts_to_all_mappings(mappings, opts)
end end
end end
local function pass_keymap_tbl_to_fn(maps, fn)
if is_single_keymap_table(maps) then
fn(maps)
else
for _, map_table in pairs(maps) do
fn(map_table)
end
end
end
local function get_keymaps(mode, buffer)
if buffer then
return vim.api.nvim_buf_get_keymap(buffer, mode)
end
return vim.api.nvim_get_keymap(mode)
end
function M.add_temporary_keymaps(maps)
assert(maps)
pass_keymap_tbl_to_fn(maps, function(map_table)
for mode, entries in pairs(map_table) do
-- We make an assumptino here which is that all the entries are buffers, or not buffers.
-- Meaning, we only check the first entry and trust that the rest are the same.
local result = get_keymaps(mode, (function()
for _, entry in pairs(entries) do
-- nil buffer is treated as a global keymap
return entry.buffer
end
end)())
for code, _ in pairs(entries) do
for _, map in ipairs(result) do
if map.lhs == code then
if not overridden_default_keymaps[mode] then
overridden_default_keymaps[mode] = {}
end
overridden_default_keymaps[mode][code] = {
cmd = map.callback or map.rhs,
opts = {
noremap = map.noremap == 1,
expr = map.expr == 1,
silent = map.silent == 1,
nowait = map.nowait == 1,
script = map.script == 1,
buffer = type(map.buffer) == "number" and map.buffer or nil,
},
}
end
end
end
end
end)
M.add_keymaps(maps)
end
function M.add_keymaps(maps)
assert(maps)
pass_keymap_tbl_to_fn(maps, function(map_table)
for mode, entries in pairs(map_table) do
for code, info in pairs(entries) do
vim.keymap.set(mode, code, info.cmd, info.opts)
end
end
end)
end
function M.remove_keymaps(maps)
assert(maps)
pass_keymap_tbl_to_fn(maps, function(map_table)
for mode, entries in pairs(map_table) do
local overriden_mode = overridden_default_keymaps[mode]
for code, _ in pairs(entries) do
vim.keymap.del(mode, code)
if overriden_mode and overriden_mode[code] then
vim.keymap.set(mode, code, overriden_mode[code].cmd, overriden_mode[code].opts)
end
end
end
end)
end
function M.is_buf_filetype(bufnr, filetype) function M.is_buf_filetype(bufnr, filetype)
return vim.api.nvim_buf_get_option(bufnr, "filetype") == filetype return vim.api.nvim_buf_get_option(bufnr, "filetype") == filetype
end end

View file

@ -189,75 +189,35 @@ end
function M.setup() function M.setup()
local resizing_mode_keymaps = { local resizing_mode_keymaps = {
n = { { "<Left>", function() resize_window(vim.api.nvim_get_current_win(), "h") end },
["<Left>"] = { { "<Down>", function() resize_window(vim.api.nvim_get_current_win(), "j") end },
cmd = function() resize_window(vim.api.nvim_get_current_win(), "h") end { "<Up>", function() resize_window(vim.api.nvim_get_current_win(), "k") end },
}, { "<Right>", function() resize_window(vim.api.nvim_get_current_win(), "l") end },
["<Down>"] = { { "<Esc>", function() exit_resizing_mode() end },
cmd = function() resize_window(vim.api.nvim_get_current_win(), "j") end { "<Enter>", function() exit_resizing_mode() end },
}, { "=", function() M.autosize_windows() end },
["<Up>"] = {
cmd = function() resize_window(vim.api.nvim_get_current_win(), "k") end
},
["<Right>"] = {
cmd = function() resize_window(vim.api.nvim_get_current_win(), "l") end
},
["<Esc>"] = {
cmd = function() exit_resizing_mode() end
},
["<Enter>"] = {
cmd = function() exit_resizing_mode() end
},
["="] = {
cmd = function() M.autosize_windows() end
},
}
} }
local enter_resizing_mode_keymaps = { local enter_resizing_mode_keymaps = {
n = { { "<C- >", function() enter_resizing_mode() end }
["<C- >"] = {
cmd = function() enter_resizing_mode() end
}
},
} }
local window_shifting_keymaps = { local window_shifting_keymaps = {
n = { { "<C-S-Left>", function() swap_window("h") end },
["<C-S-Left>"] = { { "<C-S-Down>", function() swap_window("j") end },
cmd = function() { "<C-S-Up>", function() swap_window("k") end },
swap_window("h") { "<C-S-Right>", function() swap_window("l") end },
end
},
["<C-S-Down>"] = {
cmd = function()
swap_window("j")
end
},
["<C-S-Up>"] = {
cmd = function()
swap_window("k")
end
},
["<C-S-Right>"] = {
cmd = function()
swap_window("l")
end
},
},
} }
utils.add_keymaps({ utils.set_keymap_list(window_shifting_keymaps)
window_shifting_keymaps, utils.set_keymap_list(enter_resizing_mode_keymaps)
enter_resizing_mode_keymaps
})
local function on_resize_mode_enter() local function on_resize_mode_enter()
utils.remove_keymaps(enter_resizing_mode_keymaps) M.del_keymap_list(enter_resizing_mode_keymaps)
utils.add_keymaps(resizing_mode_keymaps) M.set_keymap_list(resizing_mode_keymaps)
end end
local function on_resize_mode_exit() local function on_resize_mode_exit()
utils.remove_keymaps(resizing_mode_keymaps) M.del_keymap_list(resizing_mode_keymaps)
utils.add_keymaps(enter_resizing_mode_keymaps) M.set_keymap_list(enter_resizing_mode_keymaps)
end end
local window_management_augroup = "WindowManagementEvents" local window_management_augroup = "WindowManagementEvents"