44 lines
668 B
Lua
44 lines
668 B
Lua
local M = {}
|
|
|
|
local function swap(key)
|
|
vim.keymap.set({ "n", "v" }, key, "g" .. key, { buffer = true })
|
|
vim.keymap.set({ "n", "v" }, "g" .. key, key, { buffer = true })
|
|
end
|
|
|
|
local function unswap(key)
|
|
vim.keymap.del({ "n", "v" }, key)
|
|
vim.keymap.del({ "n", "v" }, "g" .. key)
|
|
end
|
|
|
|
function M.enable()
|
|
vim.opt.wrap = true
|
|
|
|
swap("j")
|
|
swap("k")
|
|
swap("<up>")
|
|
swap("<down>")
|
|
swap("0")
|
|
swap("$")
|
|
end
|
|
|
|
function M.disable()
|
|
vim.opt.wrap = false
|
|
|
|
unswap("j")
|
|
unswap("k")
|
|
unswap("<up>")
|
|
unswap("<down>")
|
|
unswap("0")
|
|
unswap("$")
|
|
end
|
|
|
|
function M.toggle()
|
|
if vim.opt.wrap == true then
|
|
M.disable()
|
|
else
|
|
M.enable()
|
|
end
|
|
end
|
|
|
|
return M
|