Skip to content

Latest commit

 

History

History
506 lines (314 loc) · 42.2 KB

CHANGELOG.md

File metadata and controls

506 lines (314 loc) · 42.2 KB

Changelog

2.1.0 (2024-07-07)

Features

  • prompt: add flash.prompt() to get the prompt text (#347) (f226e02)
  • treesitter: opt-out selection of the smallest node with flash.treesitter() by specifying autojump = false (#276) (daa06cd)

Bug Fixes

2.0.0 (2024-07-05)

⚠ BREAKING CHANGES

  • search: flash is now no longer enabled by default during search. Enable it in your config, or use toggle.

Features

  • char: add auto-jump/auto-motion option when using labels, closes #183 (#281) (b14120a)
  • search: flash is now no longer enabled by default during search. Enable it in your config, or use toggle. (2411de6)

Bug Fixes

  • Don't exit in regular search mode when there is no result (#277) (518c047)
  • use real cursors on Neovim >= 0.10. See #345 (7ba2298)

1.18.3 (2024-05-03)

Bug Fixes

  • hacks: use vim.api.nvim__redraw to fix the cursor instead of ffi. Fixes #333 (1b128ff)

1.18.2 (2023-10-17)

Bug Fixes

  • treesitter: show warning when treesitter not available. Fixes #261 (77c66d8)

1.18.1 (2023-10-16)

Bug Fixes

  • char: allow setting autohide=true for char mode. Fixes #231 (71040c8)
  • jump: send esc when cancelling flash. Fixes #212. Fixes #233 (677eb59)
  • treesitter: include treesitter injections. Fixes #242 (5fe47ba)
  • treesitter: keep treesitter sorting when doing ;,. Fixes #219 (aae8352)

1.18.0 (2023-10-02)

Features

  • char: allow disabling clever-f motions. Fixes #245 (bc1f49f)
  • enable multi window in vscode (#230) (65bd3ee)
  • highlight: allow overriding flash cursor hl. Fixes #228 (79d67c6)

Bug Fixes

  • char: disable jump labels when reg recording/executing (#226) (503b0ab)
  • jump: only open folds containing match. Fixes #224. Fixes #225 (a74d31f)
  • search: allow disabling multi window for search. Fixes #198. Fixes #197 (0256d8e)
  • state: use actions instead of opts.actions (30442c8)

1.17.3 (2023-07-20)

Bug Fixes

  • jump: disable operator keymaps when replaying remote. Fixes #165 (9f30d48)

1.17.2 (2023-07-18)

Bug Fixes

  • char: only use c for first search (of count) when current=true (c92ecbf)
  • config: run setup when using flash and it wasn't run yet. Fixes #162 (c81e0d1)
  • state: feed char when incremental and no match. Fixes #57 (925f733)

1.17.1 (2023-07-16)

Bug Fixes

  • char: fix current for tT when count=0. Fixes #159 (8604b56)
  • char: never add mappings for mapleader and maplocalleader (6e3dab6)
  • char: never overwrite existing mappings for ; and , (abda6b8)
  • char: reset including current for tT searches. Fixes #152 (9c53dad)
  • highlight: set hl of target to current if it's a single character only. See #158 (47d147b)
  • remote: properly pass register for remote ops. Fixes #156 (34cf6f6)

1.17.0 (2023-07-14)

Features

  • labels: allow disabling reusing labels. Closes #147 (4b73e61)

Bug Fixes

  • char: properly exit op mode when doing esc with ftFT and jump labels (4731cc4)
  • char: set inclusive=false for FT. Fixes #149 (b1af2b7)
  • jump: better way to cancel operator pending mode (4a980ea)

1.16.0 (2023-07-12)

Features

  • fold: show first label inside a fold on the folded text line. Fixes #39 (2846324)
  • jump: open folds when jumping to a folded position. See #39 (dcb494c)
  • search: when nohlsearch=false, matches will now be shown after jump. Fixes #142 (6e7d6c2)

Bug Fixes

  • repeat: no dot repeat inside macros. Fixes #143 (f7218c2)

1.15.0 (2023-07-07)

Features

  • search: flash toggle in search is now permanent until you toggle again. Closes #134 (7ceee0d)

Bug Fixes

  • char: special handling for t/T at current position. Fixes #137 (268bffe)

1.14.0 (2023-07-05)

Features

  • char: added optional multi_line=false for ftFT motions. See #102 (2f92418)
  • char: option for behavior of ;, and char repeats. Closes #124 (97eba7d)
  • search: allow finding current (6659a94)
  • state: added optional filter for matches by non-search matcher. See #118 (780ad57)
  • treesitter: added node:TSNode to ts Flash.Match.TS (1cbaff4)

Bug Fixes

  • char: fixed tT at current. Fixes #128 (a1c8aa6)
  • jump: move offset calc outside op mode (69141ea)
  • search: count=0 (6d1d066)
  • take into count of multi-width characters on offset of highlights and jump (#125) (41c09fa)

1.13.2 (2023-07-02)

Bug Fixes

  • highlight: dont use current when rainbow is used and match == target. Fixes #109 (edb82f7)

1.13.1 (2023-07-02)

Bug Fixes

  • config: dont show jumpt labels by default! Fixup. See #103 (7bb89b2)
  • highlight: don't show the label when at cursor in same window and not a range. See #74 (7a8e07e)
  • labeler: don't label folded lines. Fixes #39. See #106 (8af3773)

1.13.0 (2023-07-01)

Features

  • config: added opts.config for dynamically configuring flash. Closes #103 (3829d81)

Bug Fixes

  • state: use strchars instead of strcharlen for compat 0.8.2. Fixes #105 (33e0793)

1.12.0 (2023-06-30)

Features

  • state: added support for custom keymaps and lmap. See #66 (9aa7805)

Bug Fixes

  • labeler: fixed calculating skip labels for mbyte keymaps. See #66 (2da635f)
  • treesitter: added support for Nvim 0.8.0. Fixes #100 (67ed44d)
  • treesitter: some nodes were missing (7f4e25f)

1.11.0 (2023-06-29)

Features

  • char: hide flash when doing an ftFT search while yanking. Closes #6 (feda1d5)
  • char: optional jump labels for ftFT searches (d2ad5e0)
  • char: support alternative f/F/t/T/;/, keymaps (fix #96) (#99) (c0c006a)
  • label: added opts.label.format for formatting rendered labels. Closes #84 (2d3e7b9)
  • labeler: allow excluding certain labels with a specific case (6b255d3)
  • pos: Pos can now be initialized with window or current window cursor (7a05cd5)
  • search: you can now toggle flash while using regular search (e761182)
  • state: custom char actions (4f44bb4)

Bug Fixes

  • hacks: make sure to render the cursor before getchar (2b328d1)
  • highlight: never put an extmark on the current cursor position (8434130)
  • highlight: use current hl if pos == label pos (56531ee)
  • jump: replace opfunc by noop to properly cancel custom operators. Fixes #93 (40b2bcb)
  • jump: temporarily set selection=inclusive. Closes #81 (5c9505a)
  • labeler: fixed label distance calculation (1d941de)
  • labeler: put original pattern in a \%() group. Fixes some skip label issues (6102a7c)
  • labeler: skip all labels on invalid regex. Fixes #94 (1fff746)
  • remote: use nvim_input instead of nvim_feedkeys for clearing op mode (c90eae5)
  • search: correctly set match end pos for multi byte characters. Fixes #90 (0193d52)
  • treesitter: ignore windows without ts parser. Fixes #91 (13022c0)

1.10.1 (2023-06-27)

Bug Fixes

  • highlight: apply after labels and then before (4439fca)
  • highlight: correctly order after labels at the same column (b096797)
  • highlight: make sure col is not negative with label.before = true (cbce7f9)
  • prompt: never show the prompt when in regular search (51149ba)
  • rainbow: stable rainbow label highlight groups (937df4f)

1.10.0 (2023-06-27)

Features

  • highlight: added optional rainbow labels. Disabled by default. Useful for Treesitter ranges. (#74) (ffb865b)

Bug Fixes

  • char: force before=false with f, F motion (#75) (40313ec)
  • search: fixup for search commmands (0f2d53d)

1.9.0 (2023-06-26)

Features

  • treesitter: added treesitter search to label ts nodes around search matches (6f791d4)

Bug Fixes

  • added unicode support for labels/skips and fuzzy search. See #66 (2528752)
  • state: restore window views on esc or ctrl-c (7b21dfd)
  • treesitter: add incremental = false to default settings of treesitter (1cf706f)

1.8.0 (2023-06-26)

Features

  • added prompt window that shows pattern during jump (can be disabled) (3fff703)
  • api: allow a match to disable getting a label (ea56cea)
  • api: allow a match to enable/disable highlight (38eca97)
  • ffi: added mappings_enabled (6f6af15)
  • hacks: added support for detecting user input waiting (81c610a)
  • highlight: added option to disable distance based labeling (ad9212f)
  • highlight: show fake cursor in all windows when flash is active (471b165)
  • highlight: when running in vscode, set default hl groups to something that works (d4c30b1)
  • jump: added jump offset (0f2dfac)
  • jump: added options for remote operator pending mode (436d1f4)
  • jump: remote operator pending operations will now always return to the original window (c11d0d1)
  • label: minimum pattern length to show labels. Closes #68 (2c2302a)
  • matcher function now has a from/to opts param (1cb669d)
  • remote_op: allow setting motion to nil to automatically start a new motion when needed (259062d)
  • remote: implement remote using new remote_op options (51f5c35)
  • searches can now be continued. Closes #54 (487aa52)
  • state: added support for restoring all window views and current window (01736c0)
  • util: luv check that does something when something finishes (a3643eb)
  • vscode: make flash work properly in vscode by updating/changing the default config. Fixes #58 (fa72836)

Bug Fixes

  • config: process modes in correct order. Fixes #50 again (919cbe4)
  • disable prompt on vscode (f93b33d)
  • jump: fixup to always use a motion for remote ops (11fa883)
  • jump: improved operator pending mode for jumps (16f785f)
  • jump: operator pending mode for remote jumps now behaves correctly (cb24e66)
  • remote: make sure opts always exists (7083750)
  • search: added support for search-commands. Fixes #67 (7a59c42)

1.7.0 (2023-06-24)

Features

  • config: allow mode inheritance. Closes #50 (3deefe8)
  • jump: added option to force inclusive/exclusive. Closes #49 (e71efbf)
  • remote: peoperly deal with c for remote. Will jump back when leaving insert mode (1075013)
  • state: allow passing a callable object as matcher (f49fa9c)

Bug Fixes

  • cache: allow current window to be excluded (770763c)
  • cache: fixup for window selection (ed3bec6)
  • char: add group to autocmd (fc08d27)
  • remote: properly restore remote window as well. Also remove the normal! o (587a243)

Performance Improvements

  • remote: restore views on TextYankPost (d4dadc8)

1.6.0 (2023-06-24)

Features

  • config: pattern can now have a max_length. When length is reached, labels are no longer skipped. When it exceeds, either a jump is followed or the search is ended (bd9dbee)

Bug Fixes

  • config: exclude noice by default (bc9a599)
  • repeat: make sure repeat is enabled for char searches. Fixes #40 (219f0c0)
  • state: always reposition the cursor on incremental mode (81e38d6)

1.5.0 (2023-06-23)

Features

Bug Fixes

  • char: always stop highlights in insert mode (64e5129)

1.4.1 (2023-06-23)

Bug Fixes

  • char: don't repeat on motion char when executing a macro. See #34 (674cfb4)

1.4.0 (2023-06-23)

Features

  • char: tfTF now behave like clever-f when repeating the motion. Fixes #26 (97c3a99)
  • config: allow custom window filters. Added non-focusable windows by default (e6ee00d)

Bug Fixes

  • config: dont show flash in cmp_menu (29c35de)
  • treesitter: always disable incremental mode for treesitter. Fixes #27 (6e84716)

1.3.0 (2023-06-22)

Features

  • char: optionally disable some ftFT keymaps (3e27d9a)
  • config: show labels for current jump target by default (0dcc00e)
  • search: optional trigger character. Not recommended. Fixes #21 (cb0977c)

Bug Fixes

  • char: fixup for keys (81469aa)
  • treesitter: properly deal with nodes ending at col 0. Fixes #17 (6cd4414)
  • treesitter: removed debug print (0fabd1b)

1.2.0 (2023-06-21)

Features

  • added example that matches beginning of words only (1e2c61d)
  • config: setting to disable uppercase labels. Fixes #11 (13d7b3e)
  • labeler: reuse only lowercase labels by default. See #11 (8f0b9ed)

1.1.0 (2023-06-21)

Features

  • added config.jump.autojump. Fixes #5 (1808d3e)
  • added custom actions on label select (eb0769f)
  • added example plugin that shows a diagnostic at a certain label without moving the cursor (7a9bd11)

Bug Fixes

  • config: get mode opts from options instead of defaults. Fixes #4 (41fab4c)
  • diag: always hide when done (226c634)
  • jump: register and history should use pattern.search instead of pattern. Fixes #7 (a11cf6a)
  • treesitter: make treesitter plugin work with custom labels. Fixes #9 (3fac625)

1.0.0 (2023-06-21)

Features

  • abort_pattern can now be false (e036667)
  • add option to save loc to jumplist before jump (0aae816)
  • added char searches, f, F, t, T (06839d8)
  • added config for forward/wrap (b9649bd)
  • added config.search.regex (bda1be0)
  • added ffi based searcher. Finally 100% correct end pos for matches (46b41d1)
  • added option to label the first match (63b75ed)
  • added optional backdrop (2172a90)
  • added support for label offsets and label styles (3e9f630)
  • added treesitter command (fd9bd80)
  • advance for results (9d70126)
  • allow to always render search highlight to prevent flickering when updating ui (ff0e25f)
  • charsearch: close on <esc> (ee3228a)
  • charsearch: make char search dot repeatable (91485c1)
  • dont stabalize labels for treesitter (b20ad86)
  • expose commands on main module (70130d2)
  • fuzzy matching (7407dd6)
  • highlight groups config (313e252)
  • highlight: added support for before/after labels (d0133d2)
  • highlight: allow diffrerent namespaces for highlight (2649b18)
  • initial version (22913c6)
  • jump position (start, end or range) (335a5a9)
  • labels are now skipped based on regex searches to be able to fully support regex patterns (e704d88)
  • lazy require (171b9ff)
  • make all the things repeatable without needing expr=true (ec3a8ac)
  • much improved repeat api (2f76471)
  • multiple modes (ed1150f)
  • pattern: custom pattern functions (b9e13f2)
  • repeat: show warning when keymap expr didn't execute. probably because expr=true was not used (789d3b2)
  • stable labels (3e6b345)
  • state: proper support for incremental search (8a0fa11)
  • state: state will now automatically updated on changedtick or when buf changes (60193cb)
  • state: update matcher when view changed (9f4dc50)
  • treesitter node jumping (119643f)
  • treesitter: ; & , to expand/descrease selection (6551d97)
  • treesitter: allow custom options (d9d5e75)
  • util module for dot-repeat (e6f02b1)

Bug Fixes

  • allow space in string (f1b8691)
  • calculate target in update (f3f915a)
  • charsearch: inclusive/exclusive operator pending fix (fb1867c)
  • charsearch: mode (b8c18ba)
  • config: register and nohlsearch are disables by default (f20d2f8)
  • dont set search register by default (f7352f7)
  • fixup for first -> current (43b96c6)
  • highlight: highlight each line of the backdrop separately to fix extmark priorities (08bf4f6)
  • highlight: proper nvim 0.10.0 check for inline extmarks (6da8904)
  • highlight: set cursorline hl group (8715685)
  • init: pass opts to config (0627e2f)
  • jump: check pattern for jump target (d29d5fc)
  • jump: dont change ordering of matches when calculating labels (8611eab)
  • jump: fix inclusive/excusive for operator pending mode (99c99a7)
  • jump: make it all work in operator pending mode (1005faa)
  • labeler: dont include end_pos to re-use stable labels (dadca0e)
  • labels: fixed some edge cases regarding labels (124d1b6)
  • matcher: match end_pos when finding relative to another match (0794ba2)
  • matcher: ordering (e46a629)
  • search: added support for match (e3e3958)
  • search: cleanup and add search to history (175ffd9)
  • search: dont add labels if too many results (959af4e)
  • searcher: don't use ignore case for labels and skip both upper/lower when needed (1b48511)
  • searcher: finally was able to properly fix finding ends of matches (4251741)
  • searcher: skip all labels when pattern ends with escape character (530038d)
  • searcher: use vim.regex to get match end and added support for multi-line (ffcdf20)
  • search: properly deal with invalid patterns (46d6655)
  • search: skip all labels when pattern is invalid regex (9bb8079)
  • state: better operator pending mode detection for search (f53dd07)
  • state: force update when making visible (ada913d)
  • state: keep states as a key in a table to prevent double work (4a6ea98)
  • state: results sorting (9da4d28)
  • state: stop searching when max matches reached (4245e49)
  • treesitter: use state.pos as cursor to get nodes (d1185ad)

Performance Improvements