summaryrefslogtreecommitdiff
path: root/public/nvim/.nvim/lua/plugins/core/which-key.lua
diff options
context:
space:
mode:
Diffstat (limited to 'public/nvim/.nvim/lua/plugins/core/which-key.lua')
-rw-r--r--public/nvim/.nvim/lua/plugins/core/which-key.lua45
1 files changed, 45 insertions, 0 deletions
diff --git a/public/nvim/.nvim/lua/plugins/core/which-key.lua b/public/nvim/.nvim/lua/plugins/core/which-key.lua
new file mode 100644
index 0000000..6e046a3
--- /dev/null
+++ b/public/nvim/.nvim/lua/plugins/core/which-key.lua
@@ -0,0 +1,45 @@
+return {
+ "folke/which-key.nvim",
+ event = "VeryLazy",
+ init = function()
+ vim.o.timeout = true
+ vim.o.timeoutlen = 300
+ end,
+
+ opts = {
+ f = { name = "File" },
+ b = {
+ name = "Buffer",
+ n = { "<cmd>BufferNext<cr>", "Next" },
+ p = { "<cmd>BufferPrevious<cr>", "Previous" },
+ c = { "<cmd>BufferClose<cr>", "Close" },
+ ["1"] = { "<cmd>BufferGoto 1<cr>", "1" },
+ ["2"] = { "<cmd>BufferGoto 2<cr>", "2" },
+ ["3"] = { "<cmd>BufferGoto 3<cr>", "3" },
+ ["4"] = { "<cmd>BufferGoto 4<cr>", "4" },
+ ["5"] = { "<cmd>BufferGoto 5<cr>", "5" },
+ ["6"] = { "<cmd>BufferGoto 6<cr>", "6" },
+ ["7"] = { "<cmd>BufferGoto 7<cr>", "7" },
+ ["8"] = { "<cmd>BufferGoto 8<cr>", "8" },
+ ["9"] = { "<cmd>BufferGoto 9<cr>", "9" },
+ },
+ l = {
+ name = "LSP",
+ a = { "<cmd>lua vim.lsp.buf.code_action()<cr>", "Action" },
+ f = { "<cmd>lua vim.lsp.buf.format({ async = false, timeout_ms = 5000 })<cr>", "Format" },
+ d = { "<cmd>lua vim.diagnostic.open_float()<cr>", "Diagnostic" },
+ h = { "<cmd>lua vim.lsp.buf.hover()<cr>", "Help" },
+ g = {
+ name = "Go to",
+ D = { "<cmd>lua vim.lsp.buf.declaration()<cr>", "Go to declaration" },
+ d = { "<cmd>lua vim.lsp.buf.definition()<cr>", "Go to definition" },
+ i = { "<cmd>lua vim.lsp.buf.definition()<cr>", "Go to implementation" },
+ },
+ },
+ },
+
+ config = function(_, opts)
+ local wk = require("which-key")
+ wk.register(opts, { prefix = "<leader>" })
+ end,
+}