diff --git a/CHANGELOG.md b/CHANGELOG.md index cda94bb7..f9ba87dd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -26,6 +26,7 @@ CHANGELOG ``` - nushell - The completion integration now requires nushell 0.116.1 or above, where an interactive completer can take the terminal through the `@interactive` attribute (#4934) (@sim590) +- Fixed `--no-sort` being ignored in filter mode with `--sync`, `--tac`, or `--bench` (#4940) (@NavpreetSSidhu) - Vim plugin: Fixed garbage text on screen in Neovim with `set title` when the fzf command contains ANSI escape sequences (#4941) 0.74.5 diff --git a/src/core.go b/src/core.go index 28834880..38944d55 100644 --- a/src/core.go +++ b/src/core.go @@ -264,7 +264,6 @@ func Run(opts *Options) (int, error) { } pattern := patternBuilder([]rune(*opts.Filter)) - matcher.sort = pattern.sortable transformer := buildItemTransformer(opts) diff --git a/test/test_filter.rb b/test/test_filter.rb index 35b00854..05776d01 100644 --- a/test/test_filter.rb +++ b/test/test_filter.rb @@ -25,6 +25,15 @@ class TestFilter < TestBase assert_equal 1, `echo Foo bar | #{FZF} -x -f "foo Fbar" | wc -l`.to_i end + def test_filter_no_sort + input = "printf 'abz\\nab\\nzab\\n'" + ['', '--sync'].each do |opts| + assert_equal %w[ab abz zab], `#{input} | #{FZF} -f ab #{opts}`.lines(chomp: true) + assert_equal %w[abz ab zab], `#{input} | #{FZF} -f ab --no-sort #{opts}`.lines(chomp: true) + assert_equal %w[zab ab abz], `#{input} | #{FZF} -f ab --no-sort --tac #{opts}`.lines(chomp: true) + end + end + def test_filter_exitstatus # filter / streaming filter ['', '--no-sort'].each do |opts|