Skip to content

Latest commit

 

History

History
757 lines (526 loc) · 77.8 KB

CHANGELOG.md

File metadata and controls

757 lines (526 loc) · 77.8 KB

Changelog

3.13.3 (2024-09-18)

Bug Fixes

  • config: disable wk by default for terminal mode (#825) (e7b415c)
  • triggers: never attach when macro is recording / executing. Fixes #851. Fixes #822. Fixes #807 (6b023b4)
  • view: display actual scroll up/down keys in help (#821) (dafe27a)

3.13.2 (2024-07-24)

Bug Fixes

3.13.1 (2024-07-24)

Bug Fixes

  • state: better current buf/mode check (711453b)
  • state: deal with the fact that ModeChanged doesn't always seems to trigger. Fixes #787 (388bd3f)

3.13.0 (2024-07-24)

Features

  • debug: add git info to log when using lazy (550338d)

3.12.1 (2024-07-24)

Bug Fixes

  • node: dynamic mappings only support functions as rhs. Fixes #790 (ba91db7)
  • state: use cached mode. Fixes #787. Closes #789 (c1b062a)
  • triggers: check for existing keymaps in the correct buffer. Fixes #783 (977fa23)
  • triggers: nil error (dae3bd2)

3.12.0 (2024-07-22)

Features

Bug Fixes

  • dont expand nodes without children. Fixes #782 (53a1d2a)

3.11.1 (2024-07-21)

Bug Fixes

3.11.0 (2024-07-20)

Features

  • icons: icon for grug-far (b2a2a0c)
  • state: detect recursion by users mapping wk manually. Closes #761 (55fa07f)
  • view: expand recursively. Closes #767 (5ae87af)

Bug Fixes

  • config: disable wk by default for insert/command mode (9d2b2e7)
  • config: more checks in validate (bdcc429)
  • mappings: preset descriptions should not override existing keymap descriptions. Fixes #769 (82d628f)
  • state: don't feed count in insert mode. Fixes #770 (63690ff)
  • util: better <nop> check. Fixes #766 (b7b3bd1)
  • view: dont set title when no border. Fixes #764 (6e61b09)

Performance Improvements

  • prevent expanding nodes when not needed (78cc92c)

3.10.0 (2024-07-18)

Features

  • view: expand all nodes by default when filter.global = false (c168905)

Bug Fixes

  • buf: always use nowait. Fixes #755 (ae1a235)
  • buf: early exit to determine if a trigger is safe to create. Fixes #754 (27e4716)
  • icons: added frontier pattern for ai (#760) (6fe0657)
  • list_contains doesn't exists in Neovim < 0.10. Fixes #758 (7e4eae8)
  • node: allow custom mappings to override proxy/plugin/expand mappings (9820900)
  • node: is_local check now also includes children (fdd27f9)
  • registers: don't try to get +* registers when no clipboard is available. Fixes #754 (ae4ec03)
  • state: always honor defer. Fixes #690 (c512d13)
  • state: redraw cursor before getchar (cf6cbf2)
  • triggers: prevent creating triggers for single upper-case alpha keys expect for Z. Fixes #756 (d19fa07)

3.9.0 (2024-07-18)

Features

  • config: simplified config. Some options are now deprecated (8ddf2da)
  • view: show and expand localleader mappings with filter.global = false (ed5f762)

Bug Fixes

  • ui: remove deprecated opts.layout.align option. (wasn't used). Closes #752 (db32ac6)

3.8.0 (2024-07-17)

Features

  • mappings: added health check for invalid modes (640724a)

Bug Fixes

  • buf: never create proxy/plugin mappings when a keymap exists. Fixes #738 (b4c4e36)
  • registers: use x instead of v (#742) (5c3b3e8)
  • state: schedule redraw. Fixes #740 (09f21a1)
  • triggers: allow overriding keymaps with empty rhs or <Nop>. Fixes #748 (843a93f)
  • triggers: make sure no keymaps exists for triggers (e8b454f)
  • typo: replace 'exras' for 'extras' in README. (#745) (af48cdc)

3.7.0 (2024-07-17)

Features

  • added expand property to create dynamic mappings. An example for buf and win is included (02f6e6f)
  • proxy mappings (c3cfc2b)
  • state: allow defering on certain operators. Closes #733 (984d930)

Bug Fixes

  • buf: create triggers for xo anyway. Fixes #728 (96b2e93)
  • icons: added frontier pattern for git. Fixes #727 (bb4e82b)
  • state: dont popup when switching between v and V mode. Fixes #729 (8ddb527)
  • view: always show a group as a group (96a9eb3)
  • view: empty icons (e2cacc6)

3.6.0 (2024-07-16)

Features

  • added icons for <D mappings (aaf71ab)
  • added option to disable all mapping icons. Fixes #721 (33f6ac0)
  • make which-key work without setup or calling add/register (9ca5f4a)
  • presets: added some missing mappings (6e1b3f2)
  • state: improve trigger/mode logic. Fixes #715 (3617e47)

Bug Fixes

  • config: replacement for plug mappings (495f9d9)
  • icons: get icons from parent nodes when needed (3f0a7ed)
  • icons: use nerdfont symbol for BS. Fixes #722 (18c1ff5)
  • mode: never create triggers for xo mode (15d3a70)
  • presets: motions in normal mode (e2ffc26)
  • tmp fix for op mode (91641e2)
  • view: fix format for keymaps with 3+ keys (#723) (0db7896)

3.5.0 (2024-07-15)

Features

  • api: using wk.show() always assumes you want to see the group, and not the actual mapping in case of overlap. Fixes #714 (f5067d2)

Bug Fixes

  • state: attach on BufNew as well. Fixes #681 (0f58176)
  • state: make sure mode always exists even when not safe. See #681 (7915964)

Performance Improvements

  • plugin: only expand plugins when needed (1fcfc72)
  • view: set buf/win opts with eventignore (e81e55b)

3.4.0 (2024-07-15)

Features

  • added icons for function keys (9222280)
  • mode: allow certain modes to start hidden and only show after keypress. See #690 (b4fa48f)
  • presets: added gw (09b80a6)
  • presets: better padding defaults for helix preset (4c36b9b)
  • presets: increase default height for helix (df0ad20)
  • simplified/documented/fixed mappings sorting. Closes #694 (eb73f7c)
  • state: skip mouse keys in debug (5f85b77)
  • ui: show keys/help in an overlay and added scrolling hint (50b2c43)
  • view: get parent icon if possible (b9de927)

Bug Fixes

  • buf: always detach " when executing keys. Fixes #689 (d36f722)
  • config: set expand=0 by default. Fixes #693 (89434aa)
  • config: warn when deprecated config options were used. Fixes #696 (81413ef)
  • health: move deprecated option check to health (af7a30f)
  • mappings: allow creating keymaps without desc. Fixes #695 (c442aaa)
  • plugins: add existing keymaps to plugin view. Fixes #681 (26f6fd2)
  • presets: don't override title setting for classic. See #649 (9a53c1f)
  • presets: shorter descriptions (20600e4)
  • state: always do full update on BufReadPost since buffer-local keymaps would be deleted. Fixes #709 (6068887)
  • state: don't show when coming from cmdline mode. Fixes #692 (8cba66b)
  • state: honor timeoutlen and nowait. Fixes #648. Closes #697 (80f20ee)
  • state: properly disable which-key when recording macros. Fixes #702 (b506275)
  • state: scrolling (dce9167)
  • tree: rawget for existing plugin node children (c77cda8)
  • util: when no clipboard provider exists, use the " register as default. Fixes #687 (d077a3f)
  • view: disable footer on Neovim < 0.10 (6d544a4)
  • view: ensure highlights get set for title padding (#684) (2e4f7af)
  • view: hide existing title/footer when no trail (4f589a1)
  • view: include group keymaps in expand results. See #682 (39e703c)
  • view: overlap protection should keep at least 4 lines (0d89475)
  • view: padding & column spacing. Fixes #704 (11eec49)
  • view: spacing when more than one box (89568f3)
  • view: special handling of &lt;NL&gt;/<C-J>. Fixes #706 (f8c91b2)

3.3.0 (2024-07-14)

Features

  • expand: allow expand to be a function. Closes #670 (dfaa10c)
  • mappings: mapping desc and icon can now be a function that is evaluated when which-key is show. Fixes #666 (c634af1)
  • mappings: opts.filter to exclude certain mappings from showing up in which-key. (763ea00)
  • view: add operator to trail in op mode (5a6eaaa)
  • view: when in visual mode, propagate esc. See #656 (30ef44a)

Bug Fixes

  • default preset (38987d3)
  • mappings: don't show &lt;SNR&gt; mappings (d700244)
  • presets: max 1 column in helix mode. Fixes #665 (b2a6910)
  • presets: shorter descriptions (9a73d6a)
  • state: cooldown till next tick when not safe to open which-key. Fixes #672 (bdf3b27)
  • util: nt mode should map to n (969afc9)
  • view: set nowrap for the which-key window (6e1c098)
  • view: set winhl groups. Fixes #661 (baff8ea)

3.2.0 (2024-07-13)

Features

  • added opts.debug that writes to wk.log in the current directory (c23df71)
  • hydra mode. will document later (65f2e72)
  • icons: add telescope icon (#643) (fca3d9e)

Bug Fixes

  • layout stuff (7423096)
  • mappings: always use mapping even when it's creating a keymap. Fixes #637 (2d744cb)
  • mappings: make replace_keycodes default to false in v1 spec (6ec0a1e)
  • state: dont start which-key during dot repeat. Fixes #636 (5971ecd)
  • state: dont start which-key more than once during the same tick in xo mode. Fixes #635 (0218fce)
  • state: dont start wk when chars are pending. Fixes #658. Fixes #655. Fixes #648 (877ce16)
  • state: only hide on focus lost when still hidden after 1s. Fixes #638 (649a51b)
  • types: spec field types (#645) (c6ffb1c)
  • util: set local window opts for notify. Fixes #641 (63f2112)
  • view: check for real overlap instead of just row overlap. See #649 (0427e91)
  • view: disable folds. Fixes #99 (6860e3b)

3.1.0 (2024-07-12)

Features

  • allow disabling any trigger (94b7951)

Bug Fixes

  • added support for vim.loop (54db192)
  • automatically do setup if setup wasn't called within 500ms. Fixes #630 (632ad41)
  • buf: buffer-local mappings were broken (not keymaps). Fixes #629 (58d7f82)
  • colors: compat with older Neovim vesions. Fixes #631 (4516dc9)

3.0.0 (2024-07-12)

⚠ BREAKING CHANGES

  • v3 release

Features

  • added health check back with better wording on what actually gets checked (97e6e41)
  • added WhichKey command (7c12ab9)
  • automatically use nowait based on delay and timeoutlen (110ed72)
  • bring config back and create mappings when needed (add7ab9)
  • buffer-local sort & refactor API (14309d0)
  • close which-key on FocusLost (aa99460)
  • config, and presets (541989d)
  • expand groups with less than n mappings. Closes #374. Fixes #90. Closes #208 (5caf057)
  • fancy key icons (e4d0134)
  • fix hidden and empty groups (afc4aa9)
  • health: duplicate mappings check (4762e06)
  • health: icon providers & overlapping keys (dcbf29a)
  • initial rewrite (eb3ad2e)
  • keep track of virtual mappings (4537d3e)
  • key/desc replacements (cf34ffe)
  • layout (347288a)
  • manual sorting. Closes #131, Closes #362, Closes #264 (c2daf9d)
  • mappings: added support for lazy.nvim style mappings (6f7a945)
  • mappings: added support for setting custom icons from the spec (951ae7a)
  • new spec and migration recommendation for health (41374bc)
  • option to disable icon colors (79c8ac8)
  • option to disable notify (4cc46ff)
  • play nice with macros (1abc2bf)
  • plugins partially working again (b925b31)
  • registers: show non-printable with keytrans (1832197)
  • spec parser rewrite & proper typings (07065fe)
  • state management (e2ee1fa)
  • state management (e6beb88)
  • title trail (aef2e53)
  • ui: added scrolling (5f1ab35)
  • ui: keymap icons (21d7108)
  • ui: sorters (ffeea79)
  • update ui when new mappings become available (a8f66f5)
  • v3 release (da258a8)
  • view: nerd font icons for cmd keys (2787dbd)

Bug Fixes

  • api: show view immediately when opened through the API (b0e0af0)
  • autmatically blacklist all single key hooks except for z and g (87c5a4b)
  • icons: check that mini icons hl groups exist in the current colorscheme. If not use which-key default groups (2336350)
  • icons: proper icons check (2eaed99)
  • keys: delete nop keymaps with a description (ccf0276)
  • layout: display vs multibyte ellipsis (0442a73)
  • layout: empty columns (600881a)
  • op-mode, count and reg (e4d54d1)
  • pcall keymap.del (e47ee13)
  • plugin actions & spelling (e7da411)
  • presets (bcf52ba)
  • readme (5fe6c91)
  • respect mappings with &lt;esc&gt; and close on cursor moved (22deda5)
  • set check debounce to 50 (754bcc7)
  • state: dont return or autocmd will cancel (9a77986)
  • state: keyboard interrupts (1ed9182)
  • state: make sure the buffer mode exists when changing modes (df64366)
  • stuff (f67eb19)
  • tree: check for which_key_ignore in existing keymaps (f17d78b)
  • ui: box height (528fc43)
  • ui: make sure the which-key window never overlaps the user's cursor position (1bb30a7)
  • ui: scroll and topline=1 on refresh (28b648d)
  • which_key_ignore (ab5ffa8)
  • which-key ignore and cleanup (aeae826)

2.1.0 (2024-06-06)

Features

  • presets: add descriptions for fold deletion (#504) (53b6085)

Bug Fixes

2.0.1 (2024-06-06)

Bug Fixes

2.0.0 (2024-06-06)

⚠ BREAKING CHANGES

  • which-key now requires Neovim >= 0.9

Features

  • keys: desc in "&lt;nop&gt;" or "" keymaps can now become prefix label (#522) (c1958e2)
  • mappings: check if desc exists when parsing mappings (#589) (a7ced9f)
  • which-key now requires Neovim >= 0.9 (53ba0ac)

Bug Fixes

  • ignore_missing: not showing key maps with desc field (#577) (928c6c8)
  • is_enabled: disable whichkey in cmdline-window (#581) (26ff0e6)
  • keys: fix buffer-local mapping groups (d87c01c)
  • mappings: dont remove desc (4a7d732)

1.6.1 (2024-05-31)

Bug Fixes

  • reg: Added check for OSC 52 to disable related register previews (#604) (8063a7f)
  • small typo in operator description (#528) (d65087b)

1.6.0 (2023-10-17)

Features

Bug Fixes

1.5.1 (2023-07-15)

Bug Fixes

  • revert: never overwrite actual keymaps with group names. Fixes #478 Fixes #479 Fixes #480 (fc25407)

1.5.0 (2023-07-14)

Features

  • marks: show filename as label when no label (25babc6)

Bug Fixes

  • keys: don't show empty groups (8503c0d)
  • never overwrite actual keymaps with group names (f61da3a)
  • registers: dont trigger on @. Fixes #466 (65b36cc)

1.4.3 (2023-05-22)

Bug Fixes

  • health: dont show duplicates between global and buffer-local. It's too confusing (015fdf3)

1.4.2 (2023-05-10)

Bug Fixes

  • health: update the deprecated function (#453) (12d3b11)

1.4.1 (2023-05-04)

Bug Fixes

  • keys: dont overwrite existing keymaps with a callback. Fixes #449 (4db6bb0)

1.4.0 (2023-04-18)

Features

  • view: ensure it's above other floating windows (#442) (9443778)

1.3.0 (2023-04-17)

Features

  • health: move health check to separate health file (b56c512)
  • preset: add z&lt;CR&gt; preset (#346) (ed37330)
  • preset: added zi and CTRL-W_o (#378) (5e8e6b1)
  • view: allow percentages for margins. Fixes #436 (0b5a653)

Bug Fixes

  • health: add OK output to check_health fn (#375) (c9c430a)
  • keys: allow keymap desc to override preset labels. Fixes #386 (6aa1b2f)
  • tree: don't cache plugin nodes. Fixes #441 (20fcd7b)
  • util: clear cache when leader changes (df3597f)
  • util: missing return statement (f6bb21c)
  • util: nil check (6ab25e2)

Performance Improvements

  • keys: optimized update_keymaps (476d137)
  • tree: added fast nodes lookup (8e5e012)
  • util: cache parse_keys (8649bf5)
  • util: cache replace termcodes (eaa8027)

1.2.3 (2023-04-17)

Bug Fixes

  • util: dont parse empty lhs (8d5ab76)
  • util: only collect valid <> keys (#438) (4bd6dca)
  • util: replace &lt;lt&gt; by < before parsing (789ac71)
  • view: allow deviating paddings per side (#400) (3090eaf)

Performance Improvements

1.2.2 (2023-04-16)

Performance Improvements

  • mappings: avoid computing error string on hot path (#429) (6892f16)

1.2.1 (2023-03-26)

Bug Fixes

  • icons: fixed obsolete icons with nerdfix (151f21d)
  • view: wrong window position when statusline is not set (#363) (e14f8dc)

1.2.0 (2023-03-01)

Features

  • enable spelling plugin by default (6d886f4)
  • make delay configurable for marks/registers/spelling. Fixes #379. Fixes #152, Fixes #220, Fixes #334 (5649320)

1.1.1 (2023-02-10)

Bug Fixes

1.1.0 (2023-01-10)

Features

  • Hide mapping when desc = "which_key_ignore" (#391) (fd07b61)

Bug Fixes

1.0.0 (2023-01-04)

Features

  • add <C-w>_ to misc (#296) (03b8c1d)
  • add preset key to mappings for API usage (ed7d6c5)
  • added a winblend option for the floating window (#161) (d3032b6)
  • added duplicate mapping checks to checkhealth #34 (710c5f8)
  • added healthcheck to check for conflicting keymaps (44d3c3f)
  • added ignore_missing option to hide any keymap for which no label exists #60 (1ccba9d)
  • added operators plugin (c7f8496)
  • added option to configure scroll bindings inside the popup (#175) (a54ef5f)
  • added options to align columns left, center or right #82 (2467fb1)
  • added settings to disable the WhichKey popup for certain buftypes and filetyes (fb276a0)
  • added support for expr mappings (9d2785c)
  • added triggers_blacklist to blacklist certain whichkey hooks #73 (ec1474b)
  • added WhichKeyBorder highlight group (9c190ea)
  • allow functions to be passed to create keybindings. Implements #31 (cf644cd)
  • allow manual setup of triggers #30 (423a50c)
  • allow mapping to have multiple modes as a table (0d559fa)
  • allow mode to be set on a single mapping (2a08d58)
  • allow overriding key labels #77 (2be929e)
  • allow to close popup with <c-c> #33 (410523a)
  • better logging (c39df95)
  • better support for plugin actions with custom lua function (222a8ee)
  • builtin key mappings (0063ceb)
  • check for rogue existsing WhichKey mappings and show error. WK handles triggers automatically, no need to define them (db97a30)
  • easily reset WK with plenary for development of WK (55b4dab)
  • expose registers to customize order (2b83fe7)
  • for nvim 0.7.0 or higher, use native keymap callbacks instead of which key functions (5e96cf9)
  • group symbol (5e02b66)
  • handle [count] with motion. Implements #11 (d93ef0f)
  • hide mapping boilerplate (#6) (b3357de)
  • honor timeoutlen when typing an operator followed by i or a instead of showing immediately (54d1b3a)
  • initial commit (970e79f)
  • keyamp functions (801cc81)
  • make custom operators configurable (fixes #9) (81875d8)
  • make help message configurable (7b1c6aa)
  • Make keypress message configuratble (#351) (fd2422f)
  • motions plugin (f989fcf)
  • new keymap dsl (#352) Docs to come (fbf0381)
  • option to make some triggers show immediately, regardless of timeoutlen (3a52dc0)
  • plugin for registers (5415832)
  • plugin support + first builtin marks plugin (9d5e631)
  • prefer desc to cmd as the fallback label (#253) (bd4411a)
  • preset with misc keybindings (e610338)
  • set keymap desc when creating new mappings based on the WhichKey labels (f4518ca)
  • set popup filetype to WhichKey and buftype to nofile #86 (20682f1)
  • show a warning if <leader> is already mapped, even if it's (ac56f45)
  • show breadcrumb and help on command line (c27535c)
  • show keys and help in float when cmdheight == 0 (f645017)
  • show/hide a fake cursor when WK is open (0f53f40)
  • spelling suggestion plugin (4b74f21)
  • support for custom text object completion. Fixes #10 (394ff5a)
  • support opts.remap for keymap (#339) (6885b66)
  • support using lua function for expr (#110) (e0dce15)
  • text objects (d255b71)
  • WhichKey vim command to show arbitrary keymaps (df615d4)

Bug Fixes

  • :norm .. commands keep feeding <esc> at the end of the command #58 (d66ffdd)
  • add delay option to macro key (#152) (#156) (bd226c4)
  • add remaining <esc> to pending in case there's no other characters (29a82b5)
  • add triggers for other modes in marks and register plugin (#116) (bbfc640)
  • added @ trigger for showing registers (01b6676)
  • added builtin plugins to config (6e461ca)
  • added hidden option to disable the popup on motion counts (motions.count) (ea975ef)
  • added support for operator pending keymaps (1f6b510)
  • added z= for spelling correction (59603de)
  • always escape <leader> when it's a backslash (41636a3)
  • always execute keys with remap, but unhook / hook WK triggers (Fixes #8) (bf329df)
  • always map <leader>, even without register (512631c)
  • always unhook and ignore errors (01a60cd)
  • always use noremap=false for <plug> commands (9b9cece)
  • always use word under the cursor for spelling suggestions (c5b19ec)
  • better handling of weird norm and getchar endless <esc> bug #68 (bfd37e9)
  • better sorting (99e8940)
  • center alignemnt should be an integer (db85198)
  • check for FloatBorder before setting winhighlight (af6b91d)
  • check is hook exists before unhooking (f6cf3a2)
  • cmd can be nil (060a574)
  • colors: Separator links to DiffAdd (#302) (a2749c5)
  • Compatibility with Visual Multi plug (#278) (92916b6)
  • convert trings with strtrans to properly render non printable characters (d85ce36)
  • correct floating window position in Neovim 0.6 nightly (#176) (a35a910)
  • correctly handle counts before commands #17 (4feb319)
  • correctly unhook buffer local mappings before executing keys (4f98b47)
  • disable folding on whichkey popup. Fixes #99 (78821de)
  • disable operator pending maps for now (#2) (0cd66a8)
  • do feedkeys in correct mode when dealing with operator pending commands. Fixes #8 (cf30788)
  • don't show <esc> mappings since closes the popup (09db756)
  • don't show spelling when the command was started with a count #80 (20a85bd)
  • dont do feedkeys when user uses WhichKey command with non existing prefix (f9537ce)
  • dont pass zero counts (0c3cfb0)
  • dont show errors about loading order of setup and register (2adbc17)
  • explicitely check if we try to execute an auto which-key mapping. shouldn't happen, but still safer to check (30fdd46)
  • expose presets so one can change them if needed #70 (46ea686)
  • feed CTRL-O again if called from CTRL-O (#145) (833b5ea)
  • feed the keys as typed (#333) (33b4e72)
  • fix flickering on tmux (f112602)
  • fix issue when cmdheight=0 #301 (#305) (9cd09ca)
  • fixed 0 after an operator. Wrongly assumed any number to be a count for following op mode, but not the case for 0 #59 #61 (36616ca)
  • fixed possible nil error when showing marks (b44fc09)
  • for sporadic loss of lua function for mapping (#216) (312c386)
  • formatting of text-objects plugin (442d2d3)
  • get value of register '=' with getreg('=',1) (#114) (6224ea8)
  • handle backslash as localleader #47 (cd23fdc)
  • handle baskslashes when leader or localleader isn't set (d155ab3)
  • handle keymaps with a <nop> rhs as non existing and possibly overwrite them with WK hooks #35 (402be18)
  • handle nvim_{buf_}get_keymap return no rhs due to 'callback' mapping (#223) (28d2bd1)
  • handle possible errors when getting last expression register #64 (7a1be6f)
  • highlighting of line number in marks (9997d93)
  • immediately show registers and marks. Fixes #144 (653ce71)
  • link default WhichKeyBorder to FloatBorder. Fixes #331 (1698d6d)
  • make register selection work in INSERT mode (d4315f8)
  • make spelling suggestions also work for correctly spelled words (d02dc34)
  • make sure we never accidentally show WK triggers (197b4d3)
  • make which-key's lazy loading work when it is also lazy-loaded (7d929b9)
  • manual command now uses proper escaping for prefix (334fcca)
  • mapleader=\ (b5c8985)
  • mapping when right-hand side is nil (#323) (1d449d4)
  • never hook in SELECT mode and properly handle v, x, s #45 #46 (2844e1c)
  • never hook j and k in INSERT mode automatcally to prevent jk kj <ESC> mappings to work as intended (9a2faed)
  • never hook numbers. locks up due to v:count. Fixes #118 (2d2954a)
  • never hook on <esc> (fd08322)
  • never hook q #63 (95ae9d2)
  • never hook to operators in visual mode #61 (43d799a)
  • nil in health check (5c018ae)
  • nvim_win_close force = true (ca73a0e)
  • nvim-0.7.0 check (#338) (1491c35)
  • only create mappings for builtin operators. plugings will always have their own mappings (1b2ec76)
  • only enable plugins that are specified in the configuration (b8ed0e8)
  • only show message about existing <leader> mapping in NORMAL mode #75 (bcc8297)
  • only show up/down when scrolling is posible (fixes #4) (9e7986d)
  • override <leader> if it's mapped to (928288b)
  • pass + and * regsiters to feedkeys #36 (ce37f41)
  • pass 0 instead of nil for current buffer (#227) (387fd67)
  • passing registers in INSERT mode, is not by pasting them 😅 #62 (342c8cd)
  • place popup correctly respecting cmdheight #28 (490e4d5)
  • possible nil value in health check (b1627ca)
  • possible recursion (f7fef32)
  • prevent double escaping of key codes (1676611)
  • properly escape sequence (2473329)
  • properly escape terminal chars to see if we already hooked a trigger (1bee8a1)
  • properly format unicode text in columns (fixes #66) (e3066fa)
  • properly handle < chatracters (should be <lt>) (e618f84)
  • properly handle < when loading WK #16 (6cf68b4)
  • properly handle <lt> when executing keys (fixes #16 again) (8500ebf)
  • properly handle buffer=0 as the current buffer. Fixes #91 (9ea98e5)
  • properly handle selected regsiters when executing keys #36 (5248a2d)
  • properly parse internal key codes and key notation (535703c)
  • redraw after nvim_echo to fix issue with cmdheight=0 (abcc2c6)
  • registers plugin for visual mode (86a58ea)
  • remove unnecessary replacement of backslash (#284) (7afe584)
  • removed debug code (2f823b8)
  • removed feedkeys as typed, since some normal mappings stop working (e6a63ec)
  • removed triggers_nowait from README since this really only makes sense for plugins (69fcfff)
  • Reset + and * to default register when clipboard is set (#233) (8154e65)
  • reset op_count when it's 0 (e3ad7c9)
  • set noautocmd on the WhichKey window, so it works properly for other floats like Telescope (36fdfe8)
  • set scheduled instantly (dc9c3be)
  • show correct level and sort on keys / group (a372c63)
  • show error when setup was not run (194f788)
  • sort keys case insensitive #25 (e26be8c)
  • special handling needed when <leader> = #40 (c4a59d7)
  • start of visual selection mark should be <lt> instead of < #69 (840311c)
  • typo (4bacbfd)
  • use buffer instead of bufnr + added warning (df49a59)
  • use Comment as fallback color for the Separator (7ee35a7)
  • use config.key_labels for cmdline trail as well (Fixes #108) (1872dd8)
  • use mode instead of redraw when cmdheight=0. (Fixes #327) (c966279)
  • use secret nop bindings to make sure timeoutlen is always respected (eccd5f8)
  • use strwidth instead of strdisplaywidth (386591e)

Performance Improvements

  • as long as we didnt finish loading, queue registers (1bac978)
  • defer loading to VimEnter and only process hooks once when ready (84ddcdc)
  • no need to create triggers for all levels. first level that is not a cmd is enough (3cc0424)
  • no need to hook buffer-local if we have a global hook for a certain prefix (bb5e0d9)
  • only load modules when needed (6f8ae23)