Empty change-with-nth restores the default --with-nth value
Some checks are pending
CodeQL / Analyze (go) (push) Waiting to run
build / build (push) Waiting to run
Test fzf on macOS / build (push) Waiting to run

Previously, change-with-nth() with an empty value cleared with-nth
entirely. Now it restores the original --with-nth expression, matching
the convention used by change-nth.
This commit is contained in:
Junegunn Choi
2026-02-28 17:57:12 +09:00
parent aa2f2087f0
commit ddb2e08ff6
2 changed files with 19 additions and 6 deletions

View File

@@ -1780,16 +1780,25 @@ class TestCore < TestInteractive
end
end
def test_change_with_nth_clear
tmux.send_keys %(echo -e 'a b c\nd e f' | #{FZF} --with-nth 1 --bind 'space:change-with-nth()'), :Enter
def test_change_with_nth_default
# Empty value restores the default --with-nth
tmux.send_keys %(echo -e 'a b c\nd e f' | #{FZF} --with-nth 1 --bind 'space:change-with-nth(2|)'), :Enter
tmux.until do |lines|
assert_equal 2, lines.item_count
assert lines.any_include?('a')
refute lines.any_include?('b')
end
# Switch to field 2
tmux.send_keys :Space
tmux.until do |lines|
assert lines.any_include?('a b c')
assert lines.any_include?('b')
refute lines.any_include?('a')
end
# Empty restores default (field 1)
tmux.send_keys :Space
tmux.until do |lines|
assert lines.any_include?('a')
refute lines.any_include?('b')
end
end