aboutsummaryrefslogtreecommitdiff
path: root/.config/nvim/lua/config/keymaps.lua
diff options
context:
space:
mode:
Diffstat (limited to '.config/nvim/lua/config/keymaps.lua')
-rw-r--r--.config/nvim/lua/config/keymaps.lua27
1 files changed, 27 insertions, 0 deletions
diff --git a/.config/nvim/lua/config/keymaps.lua b/.config/nvim/lua/config/keymaps.lua
new file mode 100644
index 0000000..363f8bc
--- /dev/null
+++ b/.config/nvim/lua/config/keymaps.lua
@@ -0,0 +1,27 @@
+local keymap = vim.keymap
+
+local opts = { noremap = true, silent = true }
+
+-- DIRECTORY NAVIGATION ------------------------------------------------------
+keymap.set("n", "<leader>m", ":NvimTreeFocus<CR>", opts)
+keymap.set("n", "<leader>f", ":NvimTreeToggle<CR> :NvimTreeRefresh<CR>", { silent = true })
+keymap.set("n", "<C-k>", "<C-w>k", opts) -- NAVIGATE [^] UP
+keymap.set("n", "<C-h>", "<C-w>h", opts) -- NAVIGATE [<] LEFT
+keymap.set("n", "<C-l>", "<C-w>l", opts) -- NAVIGATE [>] RIGHT
+keymap.set("n", "<C-j>", "<C-w>j", opts) -- NAVIGATE [v] DOWN
+
+-- WINDOW MANAGEMENT ---------------------------------------------------------
+keymap.set("n", "<leader>sv", ":vsplit<CR>", opts) -- SPLIT VERTICALLY
+keymap.set("n", "<leader>sh", ":split<CR>", opts) -- SPLIT HORIZONTALLY
+
+-- INDENT --------------------------------------------------------------------
+keymap.set("v", "<", "<gv")
+keymap.set("v", ">", ">gv")
+
+-- COMMENTS ------------------------------------------------------------------
+vim.api.nvim_set_keymap("n", "<C-c>", "gcc", { noremap = false })
+vim.api.nvim_set_keymap("v", "<C-c>", "gcc", { noremap = false })
+
+-- MOVE SELECTED LINES ---------------------------------------------------------
+vim.keymap.set("v", "J", ":m '>+1<CR>gv=gv")
+vim.keymap.set("v", "K", ":m '<-2<CR>gv=gv")