- Added a new environment variable
$FZF_POS
exported to the child processes. It's the vertical position of the cursor in the list starting from 1.# Toggle selection to the top or to the bottom seq 30 | fzf --multi --bind 'load:pos(10)' \ --bind 'shift-up:transform:for _ in $(seq $FZF_POS $FZF_MATCH_COUNT); do echo -n +toggle+up; done' \ --bind 'shift-down:transform:for _ in $(seq 1 $FZF_POS); do echo -n +toggle+down; done'
- Added
--with-shell
option to start child processes with a custom shell command and flagsgem list | fzf --with-shell 'ruby -e' \ --preview 'pp Gem::Specification.find_by_name({1})' \ --bind 'ctrl-o:execute-silent: spec = Gem::Specification.find_by_name({1}) [spec.homepage, *spec.metadata.filter { _1.end_with?("uri") }.values].uniq.each do system "open", _1 end '
- Added
change-multi
action for dynamically changing--multi
optionchange-multi
- enable multi-select mode with no limitchange-multi(NUM)
- enable multi-select mode with a limitchange-multi(0)
- disable multi-select mode
- Windows improvements
become
action is now supported on Windows- Unlike in *nix, this does not use
execve(2)
. Instead it spawns a new process and waits for it to finish, so the exact behavior may differ.
- Unlike in *nix, this does not use
- Fixed argument escaping for Windows cmd.exe. No redundant escaping of backslashes.
- Bug fixes and improvements