diff --git a/changelog.md b/changelog.md index 4c956ac9..9f91aed5 100644 --- a/changelog.md +++ b/changelog.md @@ -4,6 +4,7 @@ Upcoming Release (TBD) Bug Fixes -------- * Improve missing ssh-extras message. +* Fix repeated control-r in traditional reverse isearch. Internal diff --git a/mycli/key_bindings.py b/mycli/key_bindings.py index 772613a0..15d9dc63 100644 --- a/mycli/key_bindings.py +++ b/mycli/key_bindings.py @@ -1,7 +1,7 @@ import logging from prompt_toolkit.enums import EditingMode -from prompt_toolkit.filters import completion_is_selected, emacs_mode +from prompt_toolkit.filters import completion_is_selected, control_is_searchable, emacs_mode from prompt_toolkit.key_binding import KeyBindings from prompt_toolkit.key_binding.key_processor import KeyPressEvent @@ -140,7 +140,7 @@ def _(event: KeyPressEvent) -> None: event.app.current_buffer.insert_text(shortcuts.server_datetime(mycli.sqlexecute, quoted=True)) - @kb.add("c-r", filter=emacs_mode) + @kb.add("c-r", filter=control_is_searchable) def _(event: KeyPressEvent) -> None: """Search history using fzf or reverse incremental search.""" _logger.debug("Detected key.") @@ -150,7 +150,7 @@ def _(event: KeyPressEvent) -> None: else: search_history(event) - @kb.add("escape", "r", filter=emacs_mode) + @kb.add("escape", "r", filter=control_is_searchable) def _(event: KeyPressEvent) -> None: """Search history using fzf when available.""" _logger.debug("Detected key.")