Improved neovim config
This commit is contained in:
@ -1,25 +1,29 @@
|
||||
local map = vim.keymap.set
|
||||
local map = function(mode, lhs, rhs, info)
|
||||
vim.keymap.set(mode, lhs, rhs, { desc = info })
|
||||
end
|
||||
|
||||
-- Normal mode
|
||||
map("n", "<C-n>", "<cmd>enew<cr>", { desc = "New File" })
|
||||
map("n", "<C-b>", "<cmd>NvimTreeToggle<cr>", { desc = "Toggle file explorer" })
|
||||
map("n", "<C-q>", "<cmd>qa<cr>", { desc = "Quit all" })
|
||||
map("n", "<leader>l", "<cmd>Lazy<cr>", { desc = "Lazy" })
|
||||
map("n", "<leader>f", "<cmd>Telescope find_files<cr>", { desc = "Find files" })
|
||||
map("n", "<leader>r", "<cmd>Telescope oldfiles<cr>", { desc = "Recent files" })
|
||||
map("n", "<leader>s", "<cmd>Telescope symbols<cr>", { desc = "Symbols" })
|
||||
map("n", "<leader>cf", vim.lsp.buf.format, { desc = "Format" })
|
||||
map("n", "gd", vim.lsp.buf.definition, { desc = "Go to definition" })
|
||||
map("n", "gr", vim.lsp.buf.references, { desc = "Go to references" })
|
||||
-- Basics
|
||||
map("n", "<C-n>", "<cmd>enew<cr>", "New File")
|
||||
map({ "i", "n", "s", "v" }, "<C-s>", "<cmd>w<cr><esc>", "Save file")
|
||||
map("n", "<C-q>", "<cmd>qa<cr>", "Quit all")
|
||||
map({ "i", "n" }, "<esc>", "<cmd>noh<cr><esc>", "Clear search")
|
||||
|
||||
-- Visual mode
|
||||
-- Indenting
|
||||
map("v", "<", "<gv")
|
||||
map("v", ">", ">gv")
|
||||
|
||||
-- Mixed modes
|
||||
map({ "i", "n" }, "<esc>", "<cmd>noh<cr><esc>", { desc = "Clear search" })
|
||||
map({ "i", "v", "n", "s" }, "<C-s>", "<cmd>w<cr><esc>", { desc = "Save file" })
|
||||
-- LSP
|
||||
map("n", "gd", vim.lsp.buf.definition, "Go to definition")
|
||||
map("n", "gr", vim.lsp.buf.references, "Go to references")
|
||||
map("n", "<leader>cf", vim.lsp.buf.format, "Format")
|
||||
|
||||
-- Toggle comment
|
||||
map("n", "<leader>/", "<cmd>lua require('Comment.api').toggle.linewise.current()<cr>", { desc = "Toggle comment" })
|
||||
map("v", "<leader>/", "<esc><cmd>lua require('Comment.api').toggle.linewise(vim.fn.visualmode())<cr>", { desc = "Toggle comment" })
|
||||
map("n", "<C-_>", "<cmd>lua require('Comment.api').toggle.linewise.current()<cr>", "Toggle comment")
|
||||
map("v", "<C-_>", "<esc><cmd>lua require('Comment.api').toggle.linewise(vim.fn.visualmode())<cr>", "Toggle comment")
|
||||
|
||||
-- Normal mode
|
||||
map("n", "<C-b>", "<cmd>NvimTreeToggle<cr>", "Toggle tree")
|
||||
map("n", "<leader>l", "<cmd>Lazy<cr>", "Lazy")
|
||||
map("n", "<leader>f", "<cmd>Telescope find_files<cr>", "Find files")
|
||||
map("n", "<leader>r", "<cmd>Telescope oldfiles<cr>", "Recent files")
|
||||
map({ "n", "t" }, "<A-i>", "<cmd>lua require('nvterm.terminal').toggle('float')<cr>", "Toggle terminal")
|
||||
|
Reference in New Issue
Block a user