local wk = require("which-key") local Terminal = require('toggleterm.terminal').Terminal local toggle_float = function() local float = Terminal:new({ direction = "float" }) return float:toggle() end local toggle_lazygit = function() local lazygit = Terminal:new({ cmd = "lazygit", direction = "float" }) return lazygit:toggle() end local mappings = { q = {":q", "Quit"}, Z = {":wq", "Save and Quit"}, w = {":w", "Save"}, x ={":bdelete", "Close"}, E = { ":e ~/.config/nvim/init.lua", "Edit config" }, f = { ":Telescope find_files", "Telescope Find Files" }, h = { ":Telescope find_files hidden=true", "Telescope Find Files" }, g = { ":Telescope live_grep", "Telescope Live Grep" }, r = { ":Telescope oldfiles", "Recent files" }, t = { t = { ":ToggleTerm", "Split Below" }, f = { toggle_float, "Floating Terminal" }, l = { toggle_lazygit, "Lazygit" }, }, p = { name = "Packer", s = { ":PackerSync", "Sync Plugins" }, r = { ":PackerClean", "Remove Unused Plugins" }, c = { ":PackerCompile profile=true", "Recompile Plugins" }, i = { ":PackerInstall", "Install Plugins" }, p = { ":PackerProfile", "Packer Profile" }, S = { ":PackerStatus", "Packer Status" }, u = { ":PackerUpdate", "Update Plugins" } }, } local opts = {prefix = ''} wk.register(mappings, opts)