mirror of
https://github.com/python/cpython.git
synced 2025-11-08 09:32:01 +00:00
gh-131507: Add support for syntax highlighting in PyREPL (GH-133247)
Co-authored-by: Victorien <65306057+Viicos@users.noreply.github.com> Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
This commit is contained in:
parent
bfcbb28223
commit
fac41f56d4
21 changed files with 654 additions and 99 deletions
|
|
@ -12,6 +12,7 @@
|
|||
from unittest.mock import MagicMock, call
|
||||
|
||||
from .support import handle_all_events, code_to_events
|
||||
from .support import reader_no_colors as default_prepare_reader
|
||||
|
||||
try:
|
||||
from _pyrepl.console import Event, Console
|
||||
|
|
@ -47,14 +48,22 @@ def console(self, events, **kwargs) -> Console:
|
|||
setattr(console, key, val)
|
||||
return console
|
||||
|
||||
def handle_events(self, events: Iterable[Event], **kwargs):
|
||||
return handle_all_events(events, partial(self.console, **kwargs))
|
||||
def handle_events(
|
||||
self,
|
||||
events: Iterable[Event],
|
||||
prepare_console=None,
|
||||
prepare_reader=None,
|
||||
**kwargs,
|
||||
):
|
||||
prepare_console = prepare_console or partial(self.console, **kwargs)
|
||||
prepare_reader = prepare_reader or default_prepare_reader
|
||||
return handle_all_events(events, prepare_console, prepare_reader)
|
||||
|
||||
def handle_events_narrow(self, events):
|
||||
return self.handle_events(events, width=5)
|
||||
|
||||
def handle_events_short(self, events):
|
||||
return self.handle_events(events, height=1)
|
||||
def handle_events_short(self, events, **kwargs):
|
||||
return self.handle_events(events, height=1, **kwargs)
|
||||
|
||||
def handle_events_height_3(self, events):
|
||||
return self.handle_events(events, height=3)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue