Skip to content

Commit

Permalink
Support the "pager" binary in _pyrepl (python#122878)
Browse files Browse the repository at this point in the history
Debian (and derivatives) provide a /usr/bin/pager binary, managed by the
alternatives system, that always points to an available pager utility.
Allow _pyrepl to use it, to follow system policy.

This is a very trivial change, from a patch that Debian has been
carrying since 2.7 era. Seems appropriate to upstream.
https://bugs.debian.org/799555
  • Loading branch information
stefanor authored Sep 19, 2024
1 parent 4420cf4 commit 426569e
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 0 deletions.
2 changes: 2 additions & 0 deletions Lib/_pyrepl/pager.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,8 @@ def get_pager() -> Pager:
return plain_pager
if sys.platform == 'win32':
return lambda text, title='': tempfile_pager(plain(text), 'more <')
if hasattr(os, 'system') and os.system('(pager) 2>/dev/null') == 0:
return lambda text, title='': pipe_pager(text, 'pager', title)
if hasattr(os, 'system') and os.system('(less) 2>/dev/null') == 0:
return lambda text, title='': pipe_pager(text, 'less', title)

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Use the ``pager`` binary, if available (e.g. on Debian and derivatives), to display REPL ``help()``.

0 comments on commit 426569e

Please sign in to comment.