From 7ed2303648bf83bb081d9bd863660ebf2344ce47 Mon Sep 17 00:00:00 2001 From: srdusr Date: Wed, 24 Sep 2025 04:19:28 +0200 Subject: Squashed 'common/config/nvim/' changes from 2a8020a..966d12a 966d12a Update/Overhaul git-subtree-dir: common/config/nvim git-subtree-split: 966d12ac730c83da90d60ab24eae539b2ea69441 --- lua/plugins/which-key.lua | 109 ++++++++++++++++++++++------------------------ 1 file changed, 51 insertions(+), 58 deletions(-) mode change 100644 => 100755 lua/plugins/which-key.lua (limited to 'lua/plugins/which-key.lua') diff --git a/lua/plugins/which-key.lua b/lua/plugins/which-key.lua old mode 100644 new mode 100755 index 10c0c41..10015aa --- a/lua/plugins/which-key.lua +++ b/lua/plugins/which-key.lua @@ -1,60 +1,53 @@ -require("which-key").setup { - plugins = { - marks = true, -- shows a list of your marks on ' and ` - registers = true, -- shows your registers on " in NORMAL or in INSERT mode - spelling = { - enabled = true, -- enabling this will show WhichKey when pressing z= to select spelling suggestions - suggestions = 9, -- how many suggestions should be shown in the list? - }, - -- the presets plugin, adds help for a bunch of default keybindings in Neovim - -- No actual key bindings are created - presets = { - operators = true, -- adds help for operators like d, y, ... and registers them for motion / text object completion - motions = true, -- adds help for motions - text_objects = true, -- help for text objects triggered after entering an operator - windows = true, -- default bindings on - nav = true, -- misc bindings to work with windows - z = true, -- bindings for folds, spelling and others prefixed with z - g = true, -- bindings for prefixed with g +local M = {} + +function M.setup() + local ok, wk = pcall(require, 'which-key') + if not ok then + return false + end + + -- Basic configuration + wk.setup({ + plugins = { + marks = true, + registers = true, + spelling = { enabled = true, suggestions = 20 }, + presets = { + operators = true, + motions = true, + text_objects = true, + windows = true, + nav = true, + z = true, + g = true, + }, }, - }, - -- add operators that will trigger motion and text object completion - -- to enable all native operators, set the preset / operators plugin above - operators = { gc = "Comments" }, - key_labels = { - -- override the label used to display some keys. It doesn't effect WK in any other way. - -- For example: - -- [""] = "SPC", - -- [""] = "RET", - -- [""] = "TAB", - }, - icons = { - breadcrumb = "»", -- symbol used in the command line area that shows your active key combo - separator = "➜", -- symbol used between a key and it's label - group = "+", -- symbol prepended to a group - }, - window = { - border = "none", -- none, single, double, shadow - position = "bottom", -- bottom, top - margin = { 0, 0, 0, 0 }, -- extra window margin [top, right, bottom, left] - padding = { 1, 0, 1, 0 }, -- extra window padding [top, right, bottom, left] - }, - layout = { - height = { min = 1, max = 25 }, -- min and max height of the columns - width = { min = 20, max = 50 }, -- min and max width of the columns - spacing = 1, -- spacing between columns - align = "center", -- align columns left, center or right - }, - ignore_missing = false, -- enable this to hide mappings for which you didn't specify a label - hidden = { "", "", "", "", "call", "lua", "^:", "^ " }, -- hide mapping boilerplate - show_help = true, -- show help message on the command line when the popup is visible - triggers = "auto", -- automatically setup triggers - -- triggers = {""} -- or specify a list manually + --window = { + -- border = "none", + -- position = "bottom", + -- margin = { 1, 0, 1, 0 }, + -- padding = { 2, 2, 2, 2 }, + -- winblend = 0 + --}, + --layout = { + -- height = { min = 4, max = 25 }, + -- width = { min = 20, max = 50 }, + -- spacing = 3, + -- align = "left" + --}, + --ignore_missing = false, + --hidden = { "", "", "", "", "call", "lua", "^:", "^ " }, + --show_help = true, + --triggers = "", + --triggers_blacklist = { + -- i = { "j", "k" }, + -- v = { "j", "k" }, + --} + }) + + + + return true +end - triggers_blacklist = { - -- list of mode / prefixes that should never be hooked by WhichKey - -- this is mostly relevant for key maps that start with a native binding - -- most people should not need to change this - n = { "o", "O" }, - }, -} +return M -- cgit v1.2.3