local M = { v = { ["J"] = { ":m '>+1gv=gv" }, ["K"] = { ":m '<-2gv=gv" }, }, n = { ["P"] = { [["+p]], desc = "Paste from sys clipboard" }, ["J"] = { "mzJ`z" }, [""] = { "zz" }, [""] = { "zz" }, ["n"] = { "nzzzv" }, ["N"] = { "Nzzzv" }, ["Q"] = { "" }, ["0"] = { "^", desc = "Go to first non blank character in line" }, ["0"] = { "0", desc = "Go to true line beggining" }, ["q"] = { ":noh" }, -- buffer ["bf"] = { function() vim.lsp.buf.format({ async = false }) end, desc = "Format buffer", }, ["bs"] = { ":write ", desc = "Save buffer" }, [""] = { "cnextzz" }, [""] = { "cprevzz" }, ["k"] = { "lnextzz" }, ["j"] = { "lprevzz" }, -- window movement ["ww"] = { "w", desc = "Move between splits" }, ["wc"] = { "c", desc = "Close split" }, ["wv"] = { "v", desc = "Vertical split" }, ["ws"] = { "s", desc = "Horizontal split" }, [""] = { function() if vim.bo.filetype ~= "lua" then vim.notify("Not a lua file") return end vim.cmd("so") end, desc = "Source current file", }, ["ht"] = { function() require("taken.utils.themes").themeselector() end, desc = "Theme selector", }, }, vn = { ["y"] = { [["+y]], desc = "Yank in to sys clipboard" }, ["d"] = { [["_d]], desc = "Actually deletes text" }, }, } require("taken.utils.maps").setmap(M)