vim

Log | Files | Refs

keymaps.lua (1729B)


      1 local map = vim.keymap.set
      2 
      3 -- Split navigation
      4 map("n", "<C-h>", "<C-w>h")
      5 map("n", "<C-l>", "<C-w>l")
      6 map("n", "<C-j>", "<C-w>j")
      7 map("n", "<C-k>", "<C-w>k")
      8 
      9 -- Natural line movement
     10 map({ "n", "x" }, "j", "v:count == 0 ? 'gj' : 'j'", { expr = true, silent = true })
     11 map({ "n", "x" }, "k", "v:count == 0 ? 'gk' : 'k'", { expr = true, silent = true })
     12 
     13 -- Escape clears search highlight
     14 map("n", "<Esc>", "<cmd>nohlsearch<CR>")
     15 
     16 -- File ops
     17 map("n", "<leader>w", "<cmd>write<CR>",  { desc = "Save" })
     18 map("n", "<leader>q", "<cmd>quit<CR>",   { desc = "Quit" })
     19 
     20 -- Buffer navigation
     21 map("n", "<S-h>", "<cmd>bprevious<CR>", { desc = "Prev buffer" })
     22 map("n", "<S-l>", "<cmd>bnext<CR>",     { desc = "Next buffer" })
     23 
     24 -- Stay in visual mode after indent
     25 map("v", "<", "<gv")
     26 map("v", ">", ">gv")
     27 
     28 -- Move lines
     29 map("n", "<A-j>", "<cmd>m .+1<CR>==")
     30 map("n", "<A-k>", "<cmd>m .-2<CR>==")
     31 map("v", "<A-j>", ":m '>+1<CR>gv=gv")
     32 map("v", "<A-k>", ":m '<-2<CR>gv=gv")
     33 
     34 -- Telescope
     35 map("n", "<leader>ff", "<cmd>Telescope find_files<CR>",  { desc = "Find files" })
     36 map("n", "<leader>fg", "<cmd>Telescope live_grep<CR>",   { desc = "Live grep" })
     37 map("n", "<leader>fb", "<cmd>Telescope buffers<CR>",     { desc = "Buffers" })
     38 map("n", "<leader>fr", "<cmd>Telescope oldfiles<CR>",    { desc = "Recent files" })
     39 
     40 -- Diagnostics
     41 map("n", "<leader>d",  vim.diagnostic.open_float, { desc = "Show diagnostic" })
     42 map("n", "[d",         vim.diagnostic.goto_prev,  { desc = "Prev diagnostic" })
     43 map("n", "]d",         vim.diagnostic.goto_next,  { desc = "Next diagnostic" })
     44 map("n", "<leader>dl", vim.diagnostic.setloclist, { desc = "Diagnostic list" })
     45 
     46 -- File explorer
     47 map("n", "<leader>e", "<cmd>NvimTreeToggle<CR>", { desc = "Explorer" })