aboutsummaryrefslogtreecommitdiff
path: root/nvim/lua/core/keymaps.lua
diff options
context:
space:
mode:
Diffstat (limited to 'nvim/lua/core/keymaps.lua')
-rw-r--r--nvim/lua/core/keymaps.lua55
1 files changed, 55 insertions, 0 deletions
diff --git a/nvim/lua/core/keymaps.lua b/nvim/lua/core/keymaps.lua
new file mode 100644
index 0000000..fcaadcb
--- /dev/null
+++ b/nvim/lua/core/keymaps.lua
@@ -0,0 +1,55 @@
+local keymap = vim.keymap
+
+-- <leader> -> \
+vim.g.mapleader = "\\"
+keymap.set("n", "<leader>pv", vim.cmd.Ex)
+
+-- alter indentation in visual mode
+keymap.set("v", "<", "<gv")
+keymap.set("v", ">", ">gv")
+
+-- Grab visual selection and place the line(s) anywhere
+keymap.set("v", "J", ":m '>+1<CR>gv=gv")
+keymap.set("v", "K", ":m '<-2<CR>gv=gv")
+
+-- Half-page Navigation, position preservation
+keymap.set("n", "<C-d>", "<C-d>zz")
+keymap.set("n", "<C-u>", "<C-u>zz")
+
+-- file-wide replace-substitution
+keymap.set("n", "<leader>r", [[:%s/\<<C-r><C-w>\>/<C-r><C-w>/gI<Left><Left><Left>]])
+
+-- Make it executable
+keymap.set("n", "<leader>x", "<cmd>!chmod +x %<CR>", { silent = true })
+
+-- Map CTRL-BS -> CTRL-W (delete prev. word)
+keymap.set("i", "<C-h>", "<C-\\><C-o>db", { noremap = true, silent = true })
+
+-- 2 fewer keystrokes to enter another file
+keymap.set("n", "E", ":e ")
+
+-- Get rid of this shit
+vim.api.nvim_set_keymap('n', 'q:', '<Nop>', { noremap = true, silent = true })
+
+
+
+--[[-- Tabs --]]
+
+-- Open a new tab
+keymap.set("n", "<M-n>", ":tabnew ", { noremap = true })
+
+-- Close the current tab
+keymap.set("n", "<C-n>", ":tabclose<CR>", { noremap = true, silent = true })
+
+-- Switch to the next tab (Normal, Insert, and Command modes)
+keymap.set("n", "<M-Tab>", ":<C-U>tabnext<CR>", { noremap = true })
+keymap.set("i", "<M-Tab>", "<C-\\><C-N>:tabnext<CR>", { noremap = true })
+keymap.set("c", "<M-Tab>", "<C-C>:tabnext<CR>", { noremap = true })
+
+-- Switch to the previous tab (Normal, Insert, and Command modes)
+keymap.set("n", "<S-Tab>", ":<C-U>tabprevious<CR>", { noremap = true })
+keymap.set("i", "<S-Tab>", "<C-\\><C-N>:tabprevious<CR>", { noremap = true })
+keymap.set("c", "<S-Tab>", "<C-C>:tabprevious<CR>", { noremap = true })
+
+-- Enable Spell Check
+keymap.set("n", "<leader>s", ":setlocal spell! spelllang=en_us<CR>", { silent = true })