trixy/lua/options/keybind.lua

64 lines
1.8 KiB
Lua
Executable file

vim.g.mapleader = " "
local map = vim.api.nvim_set_keymap
local cmap = vim.keymap.set
local options = { noremap = true }
local cmd_options = { noremap = true, silent = true }
map('n', '<C-space>', '<cmd>Telescope buffers<CR>', options)
-- slef explanitory
map("n", "<leader>tw", "<cmd>lua MiniTrailspace.trim()<CR>", options)
vim.keymap.set("n", "<leader>fo", function()
require("oil").open()
end)
map("n", "<leader>ff", "<cmd>Telescope find_files<CR>", options)
map("n", "<leader>fs", "<cmd>Telescope current_buffer_fuzzy_find<CR>", options)
map("n", "<leader>gs", "<cmd>Telescope git_status<CR>", options)
map("n", "<leader>gg", "<cmd>Telescope live_grep<CR>", options)
-- remap keys so that they dont skip camelCase
map("n", "w", "<Plug>CamelCaseMotion_w", cmd_options)
map("n", "b", "<Plug>CamelCaseMotion_b", cmd_options)
map("n", "e", "<Plug>CamelCaseMotion_e", cmd_options)
map("n", "ge", "<Plug>CamelCaseMotion_ge", cmd_options)
-- this little guy helps you move text, really helpful
map("v", "J", ":m '>+1<CR>gv=gv", options)
map("v", "K", ":m '<-2<CR>gv=gv", options)
-- Cursor always stays on center
map("n", "J", "mzJ`z", options)
map("n", "<C-d>", "<C-d>zz", options)
map("n", "<C-u>", "<C-u>zz", options)
map("n", "n", "nzzzv", options)
map("n", "N", "Nzzzv", options)
-- paste text but DONT copy the overridden text
cmap("x", "p", [["_dP]])
cmap("x", "<leader>p", [["+dP]])
-- delete text but DONT copy to clipboard
cmap({ "n", "v" }, "<leader>d", [["_d]])
-- quickfix stuff
--
--
-- map("n", "<C-k>", "<cmd>cnext<CR>zz", options)
-- map("n", "<C-j>", "<cmd>cprev<CR>zz", options)
-- map("n", "<leader>k", "<cmd>lnext<CR>zz", options)
-- map("n", "<leader>j", "<cmd>lprev<CR>zz", options)
-- search and replace every instance of word under cursor
cmap("n", "<leader>s", [[:%s/\<<C-r><C-w>\>/<C-r><C-w>/gI<Left><Left><Left>]])