Releases: junegunn/fzf
Releases Β· junegunn/fzf
0.57.0
- You can now resize the preview window by dragging the border
- Built-in walker improvements
--walker-root
can take multiple directory arguments. e.g.--walker-root include src lib
--walker-skip
can handle multi-component patterns. e.g.--walker-skip target/build
- Removed long processing delay when displaying images in the preview window
FZF_PREVIEW_*
environment variables are exported to all child processes (#4098)- Bug fixes in fish scripts
0.56.3
0.56.2
0.56.1
- Bug fixes and improvements
- Fixed a race condition which would cause fzf to present stale results after
reload
(#4070) page-up
andpage-down
actions now work correctly with multi-line items (#4069){n}
is allowed inSCROLL
expression in--preview-window
(#4079)- [zsh] Fixed regression in history loading with shared option (#4071)
- [zsh] Better command extraction in zsh completion (#4082)
- Fixed a race condition which would cause fzf to present stale results after
- Thanks to @LangLangBart, @jaydee-coder, @alex-huff, and @vejkse for the contributions
0.56.0
- Added
--gap[=N]
option to display empty lines between items.- This can be useful to visually separate adjacent multi-line items.
# All bash functions, highlighted declare -f | perl -0777 -pe 's/^}\n/}\0/gm' | bat --plain --language bash --color always | fzf --read0 --ansi --reverse --multi --highlight-line --gap
- Or just to make the list easier to read. For single-line items, you probably want to set
--color gutter:-1
as well to hide the gutter.fzf --info inline-right --gap --color gutter:-1
- This can be useful to visually separate adjacent multi-line items.
- Added
noinfo
option to--preview-window
to hide the scroll indicator in the preview window - Bug fixes
- Thanks to @LangLangBart, @akinomyoga, and @charlievieth for fixing the bugs
0.55.0
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.fzf --query "'here'" << EOF come here not there EOF
- [bash] Fuzzy path completion is enabled for all commands
-
- If the default completion is not already set
-
- And if the current bash supports
complete -D
option
- And if the current bash supports
- 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
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
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 forkill
completion on Cygwin
0.54.3
- Fixed incompatibility of adaptive height specification and 'start:reload'
# A regression in 0.54.0 would cause this to fail fzf --height '~100%' --bind 'start:reload:seq 10'
- Environment variables are now available to
$FZF_DEFAULT_COMMAND
FZF_DEFAULT_COMMAND='echo $FZF_QUERY' fzf --query foo
0.54.2
- Fixed incorrect syntax highlighting of truncated multi-line entries
- Updated GoReleaser to 2.1.0 to simplify notarization of macOS binaries
- macOS archives will be in
tar.gz
format instead ofzip
format since we no longer notarize the zip files but binaries
- macOS archives will be in
- (Windows) Reverted a mintty fix in 0.54.0
- As a result, mouse may not work on mintty in fullscreen mode. However, fzf will correctly read non-ASCII input in fullscreen mode (
--no-height
). - fzf unfortunately cannot read non-ASCII input when not in fullscreen mode on Windows. So if you need to input non-ASCII characters, add
--no-height
to your$FZF_DEFAULT_OPTS
. - Any help in fixing this issue will be appreciated (#3799, #3847).
- As a result, mouse may not work on mintty in fullscreen mode. However, fzf will correctly read non-ASCII input in fullscreen mode (
0.54.1
- Updated fastwalk dependency for built-in directory walker
- Reverted ALT-C binding of fish to use
cd
instead ofbuiltin cd
builtin cd
was introduced to work around a bug ofcd
coming fromzoxide init --cmd cd fish
where it cannot handle--
argument.- However, the default
cd
of fish is actually a wrapper function for supportingcd -
, so we want to use it instead. - See #3928 for more information and consider helping zoxide fix the bug.
0.54.0
Release highlights: https://junegunn.github.io/fzf/releases/0.54.0/
- Implemented line wrap of long items
--wrap
option enables line wrap--wrap-sign
customizes the sign for wrapped lines (default:β³
)toggle-wrap
action toggles line wraphistory | fzf --tac --wrap --bind 'ctrl-/:toggle-wrap' --wrap-sign $'\tβ³ '
- fzf by default binds
CTRL-/
andALT-/
totoggle-wrap
- Updated shell integration scripts to leverage line wrap
- CTRL-R binding includes
--wrap-sign $'\tβ³ '
to indent wrapped lines kill **
completion uses--wrap
to show the whole line by default instead of showing it in the preview window
- CTRL-R binding includes
- Added
--info-command
option for customizing the info line# Prepend the current cursor position in yellow fzf --info-command='echo -e "\x1b[33;1m$FZF_POS\x1b[m/$FZF_INFO π"'
$FZF_INFO
is set to the original info text- ANSI color codes are supported
- Pointer and marker signs can be set to empty strings
# Minimal style fzf --pointer '' --marker '' --prompt '' --info hidden
- Better cache management and improved rendering for
--tail
- Improved
--sync
behavior- When
--sync
is provided, fzf will not render the interface until the initial filtering and the associated actions (bound to any ofstart
,load
,result
, orfocus
) are complete.# fzf will not render intermediate states (sleep 1; seq 1000000; sleep 1) | fzf --sync --query 5 --listen --bind start:up,load:up,result:up,focus:change-header:Ready
- When
- GET endpoint is now available from
execute
andtransform
actions (it used to timeout due to lock conflict)fzf --listen --sync --bind 'focus:transform-header:curl -s localhost:$FZF_PORT?limit=0 | jq .'
- Added
offset-middle
action to place the current item is in the middle of the screen - fzf will not start the initial reader when
reload
orreload-sync
is bound tostart
event.fzf < /dev/null
or: | fzf
are no longer required and extraneousload
event will not fire due to the empty list.# Now this will work as expected. Previously, this would print an invalid header line. # `fzf < /dev/null` or `: | fzf` would fix the problem, but then an extraneous # `load` event would fire and the header would be prematurely updated. fzf --header 'Loading ...' --header-lines 1 \ --bind 'start:reload:sleep 1; ps -ef' \ --bind 'load:change-header:Loaded!'
- Fixed mouse support on Windows
- Fixed crash when using
--tiebreak=end
with very long items - zsh 5.0 compatibility (thanks to @LangLangBart)
- Fixed
--walker-skip
to also skip symlinks to directories - Fixed
result
event not fired when input stream is not complete - Built-in reader of the Windows binary will print forward slashes on MSYS and WSL (thanks to @charlievieth)
- New tags will have
v
prefix so that they are available on https://proxy.golang.org/