diff options
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/plugins.lua | 8 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/plugins/dressing.lua | 40 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/plugins/which-key.lua | 1 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/utils.lua | 1 |
4 files changed, 48 insertions, 2 deletions
diff --git a/nvim/.config/nvim/lua/tobyvin/plugins.lua b/nvim/.config/nvim/lua/tobyvin/plugins.lua index 3007dbe..47def50 100644 --- a/nvim/.config/nvim/lua/tobyvin/plugins.lua +++ b/nvim/.config/nvim/lua/tobyvin/plugins.lua @@ -20,7 +20,13 @@ M.plugins = function(use) require("tobyvin.plugins.notify").setup() end, }) - use("stevearc/dressing.nvim") + + use({ + "stevearc/dressing.nvim", + config = function() + require("tobyvin.plugins.dressing").setup() + end, + }) use({ "andweeb/presence.nvim", diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/dressing.lua b/nvim/.config/nvim/lua/tobyvin/plugins/dressing.lua new file mode 100644 index 0000000..e00a363 --- /dev/null +++ b/nvim/.config/nvim/lua/tobyvin/plugins/dressing.lua @@ -0,0 +1,40 @@ +local themes = require("telescope.themes") +local M = {} + +M.get_mt = function(kind) + return { + __index = function(v) + local backends = require("dressing.config").get_mod_config(kind).backend + if vim.tbl_contains(backends, v) then + return { backend = v } + end + end, + } +end + +M.kinds = { + select = setmetatable({ + select_normal = { + telescope = themes.get_dropdown({ initial_mode = "normal" }), + }, + }, M.get_mt("input")), + input = setmetatable({}, M.get_mt("input")), +} + +M.setup = function() + local status_ok, dressing = pcall(require, "dressing") + if not status_ok then + vim.notify("Failed to load module 'dressing'", "error") + return + end + + dressing.setup({ + select = { + get_config = function(opts) + return M.kinds.select[opts.kind] + end, + }, + }) +end + +return M diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/which-key.lua b/nvim/.config/nvim/lua/tobyvin/plugins/which-key.lua index 2f75f01..3b88636 100644 --- a/nvim/.config/nvim/lua/tobyvin/plugins/which-key.lua +++ b/nvim/.config/nvim/lua/tobyvin/plugins/which-key.lua @@ -7,7 +7,6 @@ M.setup = function() return end -vim.opt.timeoutlen = 1500 which_key.setup({ plugins = { spelling = { diff --git a/nvim/.config/nvim/lua/tobyvin/utils.lua b/nvim/.config/nvim/lua/tobyvin/utils.lua index ace6ea9..5b3e932 100644 --- a/nvim/.config/nvim/lua/tobyvin/utils.lua +++ b/nvim/.config/nvim/lua/tobyvin/utils.lua @@ -34,6 +34,7 @@ M.bdelete = function(opts) if not opts.force and vim.bo[opts.bufnr].modified then return vim.ui.select({ "write", "discard", "abort" }, { prompt = string.format("No write since last change for buffer %d:", opts.bufnr), + kind = "select_normal", }, function(_, idx) if idx == 1 then vim.cmd("write") |