Something went wrong. Try again.
🪴 my neovim config:)
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839404142434445local ns = vim.api.nvim_create_namespace("resize-mode")vim.keymap.set("n", "<space>w", function() vim.on_key(function(_, typed) local switch = { ["<C-H>"] = function() if vim.fn.winnr() == vim.fn.winnr("l") then return vim.fn.win_move_separator(vim.fn.winnr("h"), -1) end vim.fn.win_move_separator(vim.fn.winnr(), -1) end, ["<C-J>"] = function() if vim.fn.winnr() ~= vim.fn.winnr("j") then vim.fn.win_move_statusline(vim.fn.winnr(), 1) end vim.fn.win_move_statusline(vim.fn.winnr("k"), 1) end, ["<C-K>"] = function() if vim.fn.winnr() ~= vim.fn.winnr("j") then vim.fn.win_move_statusline(vim.fn.winnr(), -1) end vim.fn.win_move_statusline(vim.fn.winnr("k"), -1) end, ["<C-L>"] = function() if vim.fn.winnr() == vim.fn.winnr("l") then return vim.fn.win_move_separator(vim.fn.winnr("h"), 1) end vim.fn.win_move_separator(vim.fn.winnr(), 1) end, }
local k = vim.fn.keytrans(typed) if k == "<Esc>" then vim.on_key(nil, ns) elseif vim.tbl_contains({ "h", "j", "k", "l" }, k) then vim.cmd.wincmd(k) elseif vim.tbl_contains(vim.tbl_keys(switch), k) then local fn = switch[k] if fn and type(fn) == "function" then fn() end end return "" end, ns)end, { desc = "enter resize mode" })