92 lines
2.4 KiB
Lua
92 lines
2.4 KiB
Lua
local set = vim.keymap.set
|
|
|
|
local v = {
|
|
["J"] = { ":m '>+1<CR>gv=gv" },
|
|
["K"] = { ":m '<-2<CR>gv=gv" },
|
|
}
|
|
|
|
local n = {
|
|
["<leader>P"] = { [["+p]], desc = "Paste from sys clipboard" },
|
|
|
|
["J"] = { "mzJ`z" },
|
|
["<C-d>"] = { "<C-d>zz" },
|
|
["<C-u>"] = { "<C-u>zz" },
|
|
["n"] = { "nzzzv" },
|
|
["N"] = { "Nzzzv" },
|
|
|
|
["Q"] = { "<nop>" },
|
|
["0"] = { "^", desc = "Go to first non blank character in line" },
|
|
|
|
["<leader>0"] = { "0", desc = "Go to true line beggining" },
|
|
["<leader>q"] = { ":noh<CR>" },
|
|
-- buffer
|
|
["<leader>bf"] = { vim.lsp.buf.format, desc = "Format buffer" },
|
|
["<leader>bs"] = { ":write <CR>", desc = "Save buffer" },
|
|
["<C-k>"] = { "<cmd>cnext<CR>zz" },
|
|
["<C-j>"] = { "<cmd>cprev<CR>zz" },
|
|
["<leader>k"] = { "<cmd>lnext<CR>zz" },
|
|
["<leader>j"] = { "<cmd>lprev<CR>zz" },
|
|
|
|
-- window movement
|
|
["<leader>ww"] = { "<C-w>w", desc = "Move between splits" },
|
|
["<leader>wc"] = { "<C-w>c", desc = "Close split" },
|
|
["<leader>wv"] = { "<C-w>v", desc = "Vertical split" },
|
|
["<leader>ws"] = { "<C-w>s", desc = "Horizontal split" },
|
|
|
|
["<leader><leader>"] = {
|
|
function()
|
|
if vim.bo.filetype ~= "lua" then
|
|
vim.notify("Not a lua file")
|
|
return
|
|
end
|
|
|
|
vim.cmd("so")
|
|
end,
|
|
desc = "Source current file",
|
|
},
|
|
|
|
["<leader>ht"] = {
|
|
function()
|
|
require("taken.functions.themes").themeselector()
|
|
end,
|
|
desc = "Theme selector",
|
|
},
|
|
|
|
["<leader>s"] = {
|
|
[[:%s/\<<C-r><C-w>\>/<C-r><C-w>/gI<Left><Left><Left>]],
|
|
desc = "Replace all instances of the word on cursor",
|
|
},
|
|
|
|
-- lazy
|
|
["<leader>lu"] = { "<cmd>Lazy<CR>", desc = "Lazy UI" },
|
|
}
|
|
|
|
local vn = {
|
|
["<leader>y"] = { [["+y]], desc = "Yank in to sys clipboard" },
|
|
["<leader>d"] = { [["_d]], desc = "Actually deletes text" },
|
|
}
|
|
|
|
for map, command in pairs(v) do
|
|
if command.desc then
|
|
set("v", map, command[1], { desc = command.desc })
|
|
else
|
|
set("v", map, command[1])
|
|
end
|
|
end
|
|
|
|
for map, command in pairs(n) do
|
|
if command.desc then
|
|
set("n", map, command[1], { desc = command.desc })
|
|
else
|
|
set("n", map, command[1])
|
|
end
|
|
end
|
|
|
|
for map, command in pairs(vn) do
|
|
if command.desc then
|
|
set({ "v", "n" }, map, command[1], { desc = command.desc })
|
|
else
|
|
set({ "v", "n" }, map, command[1])
|
|
end
|
|
end
|