Skip to content

Migration Guides

Patrick edited this page Jun 11, 2021 · 26 revisions

Don't like the new changes? Don't have enough time to migrate? Freeze your plugin at its current version and update when you're ready. See the Cookbook.

v7

Search directory's key binding changed

The default key binding for search directory has been changed from Ctrl+F to Ctrl+Alt+F. This new binding avoids conflict with the oft-used forward-char.

Custom key binding mechanism completely replaced

The former method of customizing your key bindings by setting fzf_fish_custom_keybindings and then installing all the bindings yourself has been abolished. Hallelujah! Enter a new, much easier and flexible wrapper for configuring your bindings: fzf_configure_bindings. It is thoroughly documented and easy to learn: run fzf_configure_bindings --help.

Users who customize their bindings must migrate to this method because I also took opportunity of this major release to change several of the search function names now that they are properly abstracted. It should only take one line--one invocation to fzf_configure_bindings--to port over your custom bindings. Hopefully, the migration process is worth it.

Users who did not customize their bindings (probably because doing so was tedious and hacky) are encouraged to use this to customize their bindings to their hearts' content now that this is a first-class, documented and adaptable feature.

v5

If you do not use custom key bindings, there is nothing you need to do to upgrade to v5. However, if you do, you need to update your key binding to call __fzf_search_current_dir with two new arguments:

# If you use custom key bindings, change this...
bind \cv '__fzf_search_current_dir'
bind --mode insert \cv '__fzf_search_current_dir'

# ...to this...
set --local search_vars_cmd '__fzf_search_shell_variables (set --show | psub) (set --names | psub)'
bind \cv $search_vars_cmd
bind --mode insert \cv $search_vars_cmd

See conf.d/fzf.fish for more details.

v2

After much feedback around Search Git Log's Ctrl+L key binding conflicting with clear screen, I have decided to change its key binding to Ctrl+Alt+L. An alternative option I considered was just Alt+L, which is shorter but I realized conflicts with __fish_list_current_token, which is actually quite useful.

Clone this wiki locally