summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJunegunn Choi <junegunn.c@gmail.com>2016-09-18 04:45:21 +0900
committerJunegunn Choi <junegunn.c@gmail.com>2016-09-18 14:34:50 +0900
commit401a5fd5ff0e509a4ea56c9dba567e17be6c494f (patch)
tree055a42d266154d03f9c8d9451ecd6ff62fde0288
parent1854922f0cca9959838b73938f10d6d8c968d4c9 (diff)
Printable character in --expect set should not affect --print-query
-rw-r--r--src/terminal.go5
-rw-r--r--test/test_go.rb9
2 files changed, 12 insertions, 2 deletions
diff --git a/src/terminal.go b/src/terminal.go
index fa758e93..2a02ff88 100644
--- a/src/terminal.go
+++ b/src/terminal.go
@@ -1079,8 +1079,9 @@ func (t *Terminal) Loop() {
for key, ret := range t.expect {
if keyMatch(key, event) {
t.pressed = ret
- req(reqClose)
- break
+ t.reqBox.Set(reqClose, nil)
+ t.mutex.Unlock()
+ return
}
}
diff --git a/test/test_go.rb b/test/test_go.rb
index 2c018181..ff4b173b 100644
--- a/test/test_go.rb
+++ b/test/test_go.rb
@@ -452,6 +452,15 @@ class TestGoFZF < TestBase
assert_equal ['55', 'alt-z', '55'], readonce.split($/)
end
+ def test_expect_printable_character_print_query
+ tmux.send_keys "seq 1 100 | #{fzf '--expect=z --print-query'}", :Enter
+ tmux.until { |lines| lines[-2].include? '100/100' }
+ tmux.send_keys '55'
+ tmux.until { |lines| lines[-2].include? '1/100' }
+ tmux.send_keys 'z'
+ assert_equal ['55', 'z', '55'], readonce.split($/)
+ end
+
def test_expect_print_query_select_1
tmux.send_keys "seq 1 100 | #{fzf '-q55 -1 --expect=alt-z --print-query'}", :Enter
assert_equal ['55', '', '55'], readonce.split($/)