Python prompt_toolkit.keys.Keys.Any() Examples
The following are 9
code examples of prompt_toolkit.keys.Keys.Any().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
prompt_toolkit.keys.Keys
, or try the search function
.
![](https://www.programcreek.com/common/static/images/search.png)
Example #1
Source File: application.py From python-prompt-toolkit with BSD 3-Clause "New" or "Revised" License | 6 votes |
def _handle_exception( self, loop: AbstractEventLoop, context: Dict[str, Any] ) -> None: """ Handler for event loop exceptions. This will print the exception, using run_in_terminal. """ # For Python 2: we have to get traceback at this point, because # we're still in the 'except:' block of the event loop where the # traceback is still available. Moving this code in the # 'print_exception' coroutine will loose the exception. tb = get_traceback_from_context(context) formatted_tb = "".join(format_tb(tb)) async def in_term() -> None: async with in_terminal(): # Print output. Similar to 'loop.default_exception_handler', # but don't use logger. (This works better on Python 2.) print("\nUnhandled exception in event loop:") print(formatted_tb) print("Exception %s" % (context.get("exception"),)) await _do_wait_for_enter("Press ENTER to continue...") ensure_future(in_term())
Example #2
Source File: application.py From python-prompt-toolkit with BSD 3-Clause "New" or "Revised" License | 6 votes |
def _do_wait_for_enter(wait_text: AnyFormattedText) -> None: """ Create a sub application to wait for the enter key press. This has two advantages over using 'input'/'raw_input': - This will share the same input/output I/O. - This doesn't block the event loop. """ from prompt_toolkit.shortcuts import PromptSession key_bindings = KeyBindings() @key_bindings.add("enter") def _ok(event: E) -> None: event.app.exit() @key_bindings.add(Keys.Any) def _ignore(event: E) -> None: " Disallow typing. " pass session: PromptSession[None] = PromptSession( message=wait_text, key_bindings=key_bindings ) await session.app.run_async()
Example #3
Source File: key_bindings.py From python-prompt-toolkit with BSD 3-Clause "New" or "Revised" License | 6 votes |
def get_bindings_starting_with_keys(self, keys: KeysTuple) -> List[Binding]: """ Return a list of key bindings that handle a key sequence starting with `keys`. (It does only return bindings for which the sequences are longer than `keys`. And like `get_bindings_for_keys`, it also includes inactive bindings.) :param keys: tuple of keys. """ def get() -> List[Binding]: result = [] for b in self.bindings: if len(keys) < len(b.keys): match = True for i, j in zip(b.keys, keys): if i != j and i != Keys.Any: match = False break if match: result.append(b) return result return self._get_bindings_starting_with_keys_cache.get(keys, get)
Example #4
Source File: registry.py From android_universal with MIT License | 6 votes |
def get_bindings_starting_with_keys(self, keys): """ Return a list of key bindings that handle a key sequence starting with `keys`. (It does only return bindings for which the sequences are longer than `keys`. And like `get_bindings_for_keys`, it also includes inactive bindings.) :param keys: tuple of keys. """ def get(): result = [] for b in self.key_bindings: if len(keys) < len(b.keys): match = True for i, j in zip(b.keys, keys): if i != j and i != Keys.Any: match = False break if match: result.append(b) return result return self._get_bindings_starting_with_keys_cache.get(keys, get)
Example #5
Source File: key_bindings.py From ptpython with BSD 3-Clause "New" or "Revised" License | 5 votes |
def load_confirm_exit_bindings(python_input): """ Handle yes/no key presses when the exit confirmation is shown. """ bindings = KeyBindings() handle = bindings.add confirmation_visible = Condition(lambda: python_input.show_exit_confirmation) @handle("y", filter=confirmation_visible) @handle("Y", filter=confirmation_visible) @handle("enter", filter=confirmation_visible) @handle("c-d", filter=confirmation_visible) def _(event): """ Really quit. """ event.app.exit(exception=EOFError, style="class:exiting") @handle(Keys.Any, filter=confirmation_visible) def _(event): """ Cancel exit. """ python_input.show_exit_confirmation = False return bindings
Example #6
Source File: completion.py From python-prompt-toolkit with BSD 3-Clause "New" or "Revised" License | 5 votes |
def _create_more_session(message: str = "--MORE--") -> "PromptSession": """ Create a `PromptSession` object for displaying the "--MORE--". """ from prompt_toolkit.shortcuts import PromptSession bindings = KeyBindings() @bindings.add(" ") @bindings.add("y") @bindings.add("Y") @bindings.add(Keys.ControlJ) @bindings.add(Keys.ControlM) @bindings.add(Keys.ControlI) # Tab. def _yes(event: E) -> None: event.app.exit(result=True) @bindings.add("n") @bindings.add("N") @bindings.add("q") @bindings.add("Q") @bindings.add(Keys.ControlC) def _no(event: E) -> None: event.app.exit(result=False) @bindings.add(Keys.Any) def _ignore(event: E) -> None: " Disable inserting of text. " return PromptSession(message, key_bindings=bindings, erase_when_done=True)
Example #7
Source File: key_bindings.py From python-prompt-toolkit with BSD 3-Clause "New" or "Revised" License | 5 votes |
def get_bindings_for_keys(self, keys: KeysTuple) -> List[Binding]: """ Return a list of key bindings that can handle this key. (This return also inactive bindings, so the `filter` still has to be called, for checking it.) :param keys: tuple of keys. """ def get() -> List[Binding]: result: List[Tuple[int, Binding]] = [] for b in self.bindings: if len(keys) == len(b.keys): match = True any_count = 0 for i, j in zip(b.keys, keys): if i != j and i != Keys.Any: match = False break if i == Keys.Any: any_count += 1 if match: result.append((any_count, b)) # Place bindings that have more 'Any' occurrences in them at the end. result = sorted(result, key=lambda item: -item[0]) return [item[1] for item in result] return self._get_bindings_for_keys_cache.get(keys, get)
Example #8
Source File: test_key_binding.py From python-prompt-toolkit with BSD 3-Clause "New" or "Revised" License | 5 votes |
def bindings(handlers): bindings = KeyBindings() bindings.add(Keys.ControlX, Keys.ControlC)(handlers.controlx_controlc) bindings.add(Keys.ControlX)(handlers.control_x) bindings.add(Keys.ControlD)(handlers.control_d) bindings.add(Keys.ControlSquareClose, Keys.Any)(handlers.control_square_close_any) return bindings
Example #9
Source File: registry.py From android_universal with MIT License | 5 votes |
def get_bindings_for_keys(self, keys): """ Return a list of key bindings that can handle this key. (This return also inactive bindings, so the `filter` still has to be called, for checking it.) :param keys: tuple of keys. """ def get(): result = [] for b in self.key_bindings: if len(keys) == len(b.keys): match = True any_count = 0 for i, j in zip(b.keys, keys): if i != j and i != Keys.Any: match = False break if i == Keys.Any: any_count += 1 if match: result.append((any_count, b)) # Place bindings that have more 'Any' occurences in them at the end. result = sorted(result, key=lambda item: -item[0]) return [item[1] for item in result] return self._get_bindings_for_keys_cache.get(keys, get)