feat(keymaps): added more keymaps

This commit is contained in:
Folke Lemaitre 2023-01-04 21:34:49 +01:00
parent 485d4f0232
commit 47fa58c2ed
No known key found for this signature in database
GPG key ID: 41F8B1FBACAE2040
4 changed files with 51 additions and 10 deletions

View file

@ -1,5 +1,7 @@
-- This file is automatically loaded by plugins.config -- This file is automatically loaded by plugins.config
local util = require("lazyvim.util")
-- Move to window using the <meta> movement keys -- Move to window using the <meta> movement keys
vim.keymap.set("n", "<A-left>", "<C-w>h") vim.keymap.set("n", "<A-left>", "<C-w>h")
vim.keymap.set("n", "<A-down>", "<C-w>j") vim.keymap.set("n", "<A-down>", "<C-w>j")
@ -53,20 +55,35 @@ vim.keymap.set({ "i", "v", "n", "s" }, "<C-s>", "<cmd>w<cr><esc>")
vim.keymap.set("v", "<", "<gv") vim.keymap.set("v", "<", "<gv")
vim.keymap.set("v", ">", ">gv") vim.keymap.set("v", ">", ">gv")
-- lazy
vim.keymap.set("n", "<leader>l", "<cmd>:Lazy<cr>")
-- new file -- new file
vim.keymap.set("n", "<leader>fn", "<cmd>enew<cr>", { desc = "New File" }) vim.keymap.set("n", "<leader>fn", "<cmd>enew<cr>", { desc = "New File" })
vim.keymap.set("n", "<leader>xl", "<cmd>lopen<cr>", { desc = "Open Location List" }) vim.keymap.set("n", "<leader>xl", "<cmd>lopen<cr>", { desc = "Open Location List" })
vim.keymap.set("n", "<leader>xq", "<cmd>copen<cr>", { desc = "Open Quickfix List" }) vim.keymap.set("n", "<leader>xq", "<cmd>copen<cr>", { desc = "Open Quickfix List" })
-- toggle options
vim.keymap.set("n", "<leader>tf", require("lazyvim.plugins.lsp.format").toggle, { desc = "Format on Save" })
vim.keymap.set("n", "<leader>ts", function()
util.toggle("spell")
end, { desc = "Spelling" })
vim.keymap.set("n", "<leader>tw", function()
util.toggle("wrap")
end, { desc = "Word Wrap" })
vim.keymap.set("n", "<leader>tn", function()
util.toggle("relativenumber", true)
util.toggle("number")
end, { desc = "Line Numbers" })
-- lazygit -- lazygit
vim.keymap.set("n", "<leader>gg", function() vim.keymap.set("n", "<leader>gg", function()
require("lazyvim.util").float_term({ "lazygit" }) require("lazyvim.util").float_term({ "lazygit" })
end, { desc = "Lazygit for cwd" }) end, { desc = "Lazygit (cwd)" })
vim.keymap.set("n", "<leader>gG", function() vim.keymap.set("n", "<leader>gG", function()
local util = require("lazyvim.util")
util.float_term({ "lazygit" }, { cwd = util.get_root() }) util.float_term({ "lazygit" }, { cwd = util.get_root() })
end, { desc = "Lazygit for root dir" }) end, { desc = "Lazygit (root dir)" })
-- quit -- quit
vim.keymap.set("n", "<leader>qq", "<cmd>qa<cr>", { desc = "Quit all" }) vim.keymap.set("n", "<leader>qq", "<cmd>qa<cr>", { desc = "Quit all" })

View file

@ -12,8 +12,9 @@ return {
function() function()
require("neo-tree.command").execute({ toggle = true, dir = require("lazyvim.util").get_root() }) require("neo-tree.command").execute({ toggle = true, dir = require("lazyvim.util").get_root() })
end, end,
desc = "NeoTree", desc = "NeoTree (root dir)",
}, },
{ "<leader>fT", "<cmd>Neotree toggle<cmd>", desc = "NeoTree (cwd)" },
}, },
init = function() init = function()
vim.g.neo_tree_remove_legacy_commands = 1 vim.g.neo_tree_remove_legacy_commands = 1
@ -41,9 +42,10 @@ return {
cmd = "Telescope", cmd = "Telescope",
keys = { keys = {
{ "<leader>/", util.telescope("live_grep"), desc = "Find in Files (Grep)" }, { "<leader>/", util.telescope("live_grep"), desc = "Find in Files (Grep)" },
{ "<leader><space>", util.telescope("find_files"), desc = "Find Files" }, { "<leader><space>", util.telescope("find_files"), desc = "Find Files (root dir)" },
{ "<leader>fb", "<cmd>Telescope buffers<cr>", desc = "Buffers" }, { "<leader>fb", "<cmd>Telescope buffers<cr>", desc = "Buffers" },
{ "<leader>ff", util.telescope("find_files"), desc = "Find Files" }, { "<leader>ff", util.telescope("find_files"), desc = "Find Files (root dir)" },
{ "<leader>fF", util.telescope("find_files", { cwd = false }), desc = "Find Files (cwd)" },
{ "<leader>fr", "<cmd>Telescope oldfiles<cr>", desc = "Recent" }, { "<leader>fr", "<cmd>Telescope oldfiles<cr>", desc = "Recent" },
{ "<leader>gc", "<Cmd>Telescope git_commits<CR>", desc = "commits" }, { "<leader>gc", "<Cmd>Telescope git_commits<CR>", desc = "commits" },
{ "<leader>gs", "<Cmd>Telescope git_status<CR>", desc = "status" }, { "<leader>gs", "<Cmd>Telescope git_status<CR>", desc = "status" },
@ -58,7 +60,8 @@ return {
{ "<leader>ht", "<cmd>Telescope builtin<cr>", desc = "Telescope" }, { "<leader>ht", "<cmd>Telescope builtin<cr>", desc = "Telescope" },
{ "<leader>sb", "<cmd>Telescope current_buffer_fuzzy_find<cr>", desc = "Buffer" }, { "<leader>sb", "<cmd>Telescope current_buffer_fuzzy_find<cr>", desc = "Buffer" },
{ "<leader>sc", "<cmd>Telescope command_history<cr>", desc = "Command History" }, { "<leader>sc", "<cmd>Telescope command_history<cr>", desc = "Command History" },
{ "<leader>sg", util.telescope("live_grep"), desc = "Grep" }, { "<leader>sg", util.telescope("live_grep"), desc = "Grep (root dir)" },
{ "<leader>sG", util.telescope("live_grep", { cwd = false }), desc = "Grep (cwd)" },
{ "<leader>sm", "<cmd>Telescope marks<cr>", desc = "Jump to Mark" }, { "<leader>sm", "<cmd>Telescope marks<cr>", desc = "Jump to Mark" },
{ "<leader>,", "<cmd>Telescope buffers show_all_buffers=true<cr>", desc = "Switch Buffer" }, { "<leader>,", "<cmd>Telescope buffers show_all_buffers=true<cr>", desc = "Switch Buffer" },
{ "<leader>:", "<cmd>Telescope command_history<cr>", desc = "Command History" }, { "<leader>:", "<cmd>Telescope command_history<cr>", desc = "Command History" },
@ -125,7 +128,6 @@ return {
config = function() config = function()
local wk = require("which-key") local wk = require("which-key")
wk.setup({ wk.setup({
show_help = false,
plugins = { spelling = true }, plugins = { spelling = true },
key_labels = { ["<leader>"] = "SPC" }, key_labels = { ["<leader>"] = "SPC" },
}) })
@ -193,7 +195,8 @@ return {
cmd = { "TroubleToggle", "Trouble" }, cmd = { "TroubleToggle", "Trouble" },
config = { use_diagnostic_signs = true }, config = { use_diagnostic_signs = true },
keys = { keys = {
{ "<leader>xx", "<cmd>TroubleToggle workspace_diagnostics<cr>", desc = "Trouble" }, { "<leader>xx", "<cmd>TroubleToggle document_diagnostics<cr>", desc = "Document Diagnostics (Trouble)" },
{ "<leader>xX", "<cmd>TroubleToggle workspace_diagnostics<cr>", desc = "Workspace Diagnostics (Trouble)" },
}, },
}, },
@ -207,7 +210,7 @@ return {
keys = { keys = {
{ "]t", function() require("todo-comments").jump_next() end, desc = "Next todo comment" }, { "]t", function() require("todo-comments").jump_next() end, desc = "Next todo comment" },
{ "[t", function() require("todo-comments").jump_prev() end, desc = "Previous todo comment" }, { "[t", function() require("todo-comments").jump_prev() end, desc = "Previous todo comment" },
{ "<leader>xt", "<cmd>TodoTrouble<cr>", "Todo Trouble" }, { "<leader>xt", "<cmd>TodoTrouble<cr>", desc = "Todo Trouble" },
{ "<leader>xtt", "<cmd>TodoTrouble keywords=TODO,FIX,FIXME<cr>", desc = "Todo Trouble" }, { "<leader>xtt", "<cmd>TodoTrouble keywords=TODO,FIX,FIXME<cr>", desc = "Todo Trouble" },
{ "<leader>xT", "<cmd>TodoTelescope<cr>", desc = "Todo Telescope" }, { "<leader>xT", "<cmd>TodoTelescope<cr>", desc = "Todo Telescope" },
}, },

View file

@ -126,6 +126,15 @@ return {
long_message_to_split = true, long_message_to_split = true,
}, },
}, },
-- stylua: ignore
keys = {
{ "<S-Enter>", function() require("noice").redirect(vim.fn.getcmdline()) end, mode = "c", desc = "Redirect Cmdline" },
{ "<leader>nl", function() require("noice").cmd("last") end, desc = "Noice Last Message" },
{ "<leader>nh", function() require("noice").cmd("history") end, desc = "Noice History" },
{ "<leader>na", function() require("noice").cmd("all") end, desc = "Noice All" },
{ "<c-f>", function() if not require("noice.lsp").scroll(4) then return "<c-f>" end end, silent = true, expr = true },
{ "<c-b>", function() if not require("noice.lsp").scroll(-4) then return "<c-b>" end end, silent = true, expr = true },
},
}, },
-- dashboard -- dashboard

View file

@ -73,4 +73,16 @@ function M.float_term(cmd, opts)
require("lazy.util").open_cmd(cmd, opts) require("lazy.util").open_cmd(cmd, opts)
end end
---@param silent boolean?
function M.toggle(option, silent)
vim.opt_local[option] = not vim.opt_local[option]:get()
if not silent then
vim.notify(
(vim.opt_local[option]:get() and "Enabled" or "Disabled") .. option,
vim.log.levels.INFO,
{ title = "Option" }
)
end
end
return M return M