Revert "An '--expect' key should execute actions bound to the key"

To be backward compatible.

Close #3829
This commit is contained in:
Junegunn Choi 2024-06-01 13:20:12 +09:00
parent dbe8dc344e
commit 41bcbe342f
No known key found for this signature in database
GPG Key ID: 254BC280FEF9C627
3 changed files with 17 additions and 13 deletions

View File

@ -828,6 +828,14 @@ list.
e.g.
\fBfzf --expect=ctrl-v,ctrl-t,alt-s --expect=f1,f2,~,@\fR
.RE
This option is not compatible with \fB--bind\fR on the same key and will take
precedence over it. To combine the two, use \fBprint\fR action.
.RS
e.g.
\fBfzf --multi --bind 'enter:print()+accept,ctrl-y:select-all+print(ctrl-y)+accept'\fR
.RE
.TP
.B "--read0"
Read input delimited by ASCII NUL characters instead of newline characters

View File

@ -3608,6 +3608,14 @@ func (t *Terminal) Loop() error {
}
t.mutex.Lock()
for key, ret := range t.expect {
if keyMatch(key, event) {
t.pressed = ret
t.reqBox.Set(reqClose, nil)
t.mutex.Unlock()
return nil
}
}
previousInput := t.input
previousCx := t.cx
t.lastKey = event.KeyName()
@ -4460,18 +4468,6 @@ func (t *Terminal) Loop() error {
return true
}
for key, ret := range t.expect {
if keyMatch(key, event) {
t.pressed = ret
if actions, found := t.keymap[key]; found {
doActions(actions)
}
t.reqBox.Set(reqClose, nil)
t.mutex.Unlock()
return nil
}
}
if t.jumping == jumpDisabled || len(actions) > 0 {
// Break out of jump mode if any action is submitted to the server
if t.jumping != jumpDisabled {

View File

@ -594,7 +594,7 @@ class TestGoFZF < TestBase
tmux.send_keys "seq 1 100 | #{fzf('--query 1 --print-query --expect z --bind z:up+up')}", :Enter
tmux.until { |lines| assert_equal 20, lines.match_count }
tmux.send_keys('z')
assert_equal %w[1 z 11], fzf_output_lines
assert_equal %w[1 z 1], fzf_output_lines
end
def test_expect_print_query