diff --git a/Lib/_pyrepl/commands.py b/Lib/_pyrepl/commands.py index cb434e5d9f67b6..e79fbfa6bb0b38 100644 --- a/Lib/_pyrepl/commands.py +++ b/Lib/_pyrepl/commands.py @@ -485,16 +485,17 @@ def do(self) -> None: from .pager import get_pager from site import gethistoryfile + # After the pager exits, the screen state is unknown (Unix may + # restore via alternate screen, Windows shows pager output). + # Clear and force a full redraw at the end for consistency. + self.reader.console.clear() + history = os.linesep.join(self.reader.history[:]) self.reader.console.restore() pager = get_pager() pager(history, gethistoryfile()) self.reader.console.prepare() - # After the pager exits, the screen state is unknown (Unix may - # restore via alternate screen, Windows shows pager output). - # Clear and force a full redraw for consistency. - self.reader.console.clear() self.reader.invalidate_full() diff --git a/Lib/_pyrepl/unix_console.py b/Lib/_pyrepl/unix_console.py index f61642e21fb3c1..0cb31a151c9d39 100644 --- a/Lib/_pyrepl/unix_console.py +++ b/Lib/_pyrepl/unix_console.py @@ -155,7 +155,7 @@ class UnixRefreshPlan: After the user types ``e`` to complete ``name``:: - Before: >>> def greet(nam|): + Before: >>> def greet(nam|): ▲ LineUpdate here: insert_char "e"