Fixed
- Which-key displays inaccurate count of group subcommands in "all" mode — when
whichKeyModewas set to "All partial keys" and the user pressed the leader key, the which-key popup showed wildly inflated(+N)group counts (e.g.,(+418)instead of(+21)). The "All partial keys" code path (showCompletions()) queriedvim.getCompletions()from the CM vim engine, which returns the entiredefaultKeymaparray — including built-in defaults, plugin-internal keymaps, and user-defined keymaps — instead of using only theleaderBindingsregistry (which contains only user-visible leader keymaps). The "Leader key only" mode (showLeaderBindings()) was unaffected because it already usedleaderBindingsdirectly. Fixed by adding anisLeaderScopebranch inshowCompletions()that mirrorsshowLeaderBindings()— building entries fromthis.leaderBindingsfiltered by the current prefix, with correct label/icon/color resolution and leader-style title formatting. Non-leader completions (g,z,d, etc.) continue usingvim.getCompletions()as before. (#91)- Plugin:
src/ui/which-key.ts(showCompletions—isLeaderScopebranch, deferredgetCompletionsto non-leaderelsebranch)
- Plugin:
- Several
vim.optand vimrcsetoptions produce "unknown vim.opt option" warning — 12 plugin settings were documented but never registered in the Luavim.optproxy (KNOWN_SET_OPTIONS) or the vimrc:setpathway (vim.defineOption). Setting them viavim.opt.yankring = trueorset yankringin vimrc logged a console warning and had no effect. Fixed by adding all 12 options to both registries. Options now work identically across Settings UI, vimrc, and Lua. (#90)- Added to both
KNOWN_SET_OPTIONSandvim.defineOption:yankring,yankhighlightmode,yankhighlightduration,undotree,undofile,undotreemaxnodes,foldawarenavigation,foldpersistence,harpoon,dial - Added to
KNOWN_SET_OPTIONSonly (already hadvim.defineOption):jumplist,jumplistsize - Plugin:
src/vimrc/loader.ts(12 newKNOWN_SET_OPTIONSentries +setJumpListEnabled/setJumpListSizeimports),src/vim/options.ts(10 newvim.defineOptioncalls + 2 new exported setters)
- Added to both
Tests
- 1 e2e test in
test/specs/lua-space-leader.e2e.ts: which-key group count in "all" mode with space leader stays bounded to actual leader bindings (not inflated by engine-internal keymaps)
Documentation
CHANGELOG.mdKNOWN_LIMITATIONS.md: Added which-key inflated group count fix; added vim.opt/vimrc option parity fixdocs/configuration/lua-config.md: Added 8 missing options to vim.opt table (harpoon,dial,jumplist,foldawarenavigation,foldpersistence,jumplistsize,yankhighlightduration,yankhighlightmode)docs/configuration/vimrc.md: Added 6 missing options to vimrc tables (harpoon,dial,foldawarenavigation,foldpersistence,yankhighlightmode,yankhighlightduration)
Full Changelog: 0.85.0...0.86.0