keymaps.lua 815 B

1234567891011121314151617181920212223
  1. local function map(mode, lhs, rhs, opts)
  2. local options = { noremap = true, silent = true }
  3. if opts then
  4. options = vim.tbl_extend('force', options, opts)
  5. end
  6. vim.api.nvim_set_keymap(mode, lhs, rhs, options)
  7. end
  8. -- 基础配置
  9. map("n", "qq", ":q!<CR>", { desc = "exit" })
  10. map("n", "<leader>w", ":w<CR>", { desc = "w" })
  11. map("n", "<leader>wq", ":wqa!<CR>", { desc = "wqa!" })
  12. -- 取消 s 默认功能
  13. map("n", "s", "", {})
  14. map("n", "sv", ":vsp<CR>", { desc = "split window" })
  15. map("n", "sh", ":sp<CR>", { desc = "split " })
  16. map("n", "sc", "<C-w>c", { desc = "close windows" })
  17. map("n", "so", "<C-w>o", { desc = " close other windows" })
  18. -- 切换窗口
  19. map("n", "<A-Right>", "<C-w>l", {})
  20. map("n", "<A-Down>", "<C-w>j", {})
  21. map("n", "<A-Up>", "<C-w>k", {})
  22. map("n", "<A-Left>", "<C-w>h", {})