diff options
Diffstat (limited to 'venv/lib/python3.11/site-packages/rich/pager.py')
-rw-r--r-- | venv/lib/python3.11/site-packages/rich/pager.py | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/venv/lib/python3.11/site-packages/rich/pager.py b/venv/lib/python3.11/site-packages/rich/pager.py new file mode 100644 index 0000000..a3f7aa6 --- /dev/null +++ b/venv/lib/python3.11/site-packages/rich/pager.py @@ -0,0 +1,34 @@ +from abc import ABC, abstractmethod +from typing import Any + + +class Pager(ABC): + """Base class for a pager.""" + + @abstractmethod + def show(self, content: str) -> None: + """Show content in pager. + + Args: + content (str): Content to be displayed. + """ + + +class SystemPager(Pager): + """Uses the pager installed on the system.""" + + def _pager(self, content: str) -> Any: # pragma: no cover + return __import__("pydoc").pager(content) + + def show(self, content: str) -> None: + """Use the same pager used by pydoc.""" + self._pager(content) + + +if __name__ == "__main__": # pragma: no cover + from .__main__ import make_test_card + from .console import Console + + console = Console() + with console.pager(styles=True): + console.print(make_test_card()) |