Skip to content

Troubleshooting

Patrick Fong edited this page Nov 14, 2023 · 52 revisions

My configuration variables (e.g. fzf_preview_file_cmd) are not being used

No, you don't have to export the variables. A common problem is that your config has if not status is-interactive preventing them from being executed. See #305 and #316.

Default or custom key bindings do not work

  • Execute bind and check if there are bindings overriding the bindings starting with _fzf_search_.
  • COMMON FIX: Check that you do not have a different fzf plugin installed (#257, #265, #288). See Uninstalling-other-fzf-plugins if you do.
  • Check your terminal's key bindings to see if it's intercepting the key binding (#210 and #223).
  • Ensure you're using the minimum required version of fish.
  • In your terminal's settings, map Option to Meta (#97).
  • Switch to a new terminal session (#168).

Search Directory does not work

  • On Debian-based distributions, you will need to symlink batcat to bat (see https://github.com/sharkdp/bat#installation).
  • fd, by default, ignores files also ignored by git. Check your local and global .gitignore files to see if the files not showing up have been ignored. You can disable this behavior by adding the --no-ignore flag to fzf_fd_opts.
  • Ensure fdclone is not installed.

Unable to set custom FZF_DEFAULT_OPTS

Originally reported in #106. If you're getting this error set: Universal variable 'FZF_DEFAULT_OPTS' is shadowed by the global variable of the same name., try these steps:

  • close your current fish session, open a new shell, and check if FZF_DEFAULT_OPTS is now the right value
  • use set --show FZF_DEFAULT_OPTS to determine what's overshadowing it
  • uninstall and reinstall the plugin

Search History doesn't work

Unknown command: fzf_fish_custom_keybindings

You may have missed the v7 migration announcement. Follow the directions here to migrate.

Text being printed on top/bottom of fzf previews

Whenever fzf previews a file, it executes the preview command in a new instance of Fish. And whenever Fish starts up, it sources your config.fish and the config files of installed plugins. So, check all your config files to see if they are printing something or erroring. Put configuration meant only for interactive use under

status is-interactive || exit

See #182 and #289.

Custom fzf bindings to open file in another program not working

See #203.

Getting complete: Too many arguments, fzf_configure_bindings completions don't work

You are probably running a version pre-3.2.0. Double check your version by checking $version instead of fish --versionbecause it's possible for the fish on your PATH to be updated but your terminal be configured to open up a different, older fish. This is especially the case on Ubuntu. See #226.