v0.55.0

junegunn/fzfv0.55.0Aug 29, 2024by junegunn

Upgrading?

Release notes summary

Adds search syntax improvements, enables fuzzy path completion for bash, and introduces hyperlink support (OSC 8) within the fzf interface.

Key Highlights

  • Added exact-boundary-match type to the search syntax
  • Fuzzy path completion is now enabled for all bash commands
  • Comments are now allowed in $FZF_DEFAULT_OPTS
  • Hyperlinks (OSC 8) are supported in preview and main windows
  • Changed default --ellipsis to '··'

New Features

  • Exact-boundary-match search type
  • Fuzzy path completion
  • Comment support in configuration
  • Hyperlink support
  • New default ellipsis character

Full Release Notes

_Release highlights: https://junegunn.github.io/fzf/releases/0.55.0/_

- Added `exact-boundary-match` type to the search syntax. When a search term is single-quoted, fzf will search for the exact occurrences of the string with both ends at word boundaries.
  ```sh
  fzf --query "'here'" << EOF
  come here
  not there
  EOF
  ```
- [bash] Fuzzy path completion is enabled for all commands
    - 1. If the default completion is not already set
    - 2. And if the current bash supports `complete -D` option
    - However, fuzzy completion for some commands can be "dynamically" disabled by the dynamic completion loader
    - See the comment in `__fzf_default_completion` function for more information
- Comments are now allowed in `$FZF_DEFAULT_OPTS` and `$FZF_DEFAULT_OPTS_FILE`
  ```sh
  export FZF_DEFAULT_OPTS='
    # Layout options
    --layout=reverse
    --info=inline-right   # Show info on the right side of the prompt line
    # ...
  '
  ```
- Hyperlinks (OSC 8) are now supported in the preview window and in the main window
  ```sh
  printf '<< \e]8;;http://github.com/junegunn/fzf\e\\Link to \e[32mfz\e[0mf\e]8;;\e\\ >>' | fzf --ansi

  fzf --preview "printf '<< \e]8;;http://github.com/junegunn/fzf\e\\Link to \e[32mfz\e[0mf\e]8;;\e\\ >>'"
  ```
- The default `--ellipsis` is now `··` instead of `..`.
- [vim] A spec can have `exit` callback that is called with the exit status of fzf
    - This can be used to clean up temporary resources or restore the original state when fzf is closed without a selection
- Fixed `--tmux bottom` when the status line is not at the bottom
- Fixed extra scroll offset in multi-line mode (`--read0` or `--wrap`)
- Added fallback `ps` command for `kill` completion on Cygwin

Related Repositories