X7ROOT File Manager
Current Path:
/opt/alt/python38/lib/python3.8/site-packages/pip/_vendor/rich
opt
/
alt
/
python38
/
lib
/
python3.8
/
site-packages
/
pip
/
_vendor
/
rich
/
ðŸ“
..
📄
__init__.py
(5.8 KB)
📄
__main__.py
(8.6 KB)
ðŸ“
__pycache__
📄
_cell_widths.py
(9.86 KB)
📄
_emoji_codes.py
(136.95 KB)
📄
_emoji_replace.py
(1.04 KB)
📄
_export_format.py
(2.06 KB)
📄
_extension.py
(265 B)
📄
_inspect.py
(9.47 KB)
📄
_log_render.py
(3.15 KB)
📄
_loop.py
(1.21 KB)
📄
_palettes.py
(6.9 KB)
📄
_pick.py
(423 B)
📄
_ratio.py
(5.34 KB)
📄
_spinners.py
(19.45 KB)
📄
_stack.py
(351 B)
📄
_timer.py
(417 B)
📄
_win32_console.py
(22.29 KB)
📄
_windows.py
(1.88 KB)
📄
_windows_renderer.py
(2.72 KB)
📄
_wrap.py
(1.8 KB)
📄
abc.py
(890 B)
📄
align.py
(10.13 KB)
📄
ansi.py
(6.66 KB)
📄
bar.py
(3.19 KB)
📄
box.py
(9.63 KB)
📄
cells.py
(4.4 KB)
📄
color.py
(17.54 KB)
📄
color_triplet.py
(1.03 KB)
📄
columns.py
(6.96 KB)
📄
console.py
(93.64 KB)
📄
constrain.py
(1.26 KB)
📄
containers.py
(5.37 KB)
📄
control.py
(6.47 KB)
📄
default_styles.py
(7.77 KB)
📄
diagnose.py
(972 B)
📄
emoji.py
(2.44 KB)
📄
errors.py
(642 B)
📄
file_proxy.py
(1.58 KB)
📄
filesize.py
(2.45 KB)
📄
highlighter.py
(9.36 KB)
📄
json.py
(4.93 KB)
📄
jupyter.py
(3.18 KB)
📄
layout.py
(13.74 KB)
📄
live.py
(13.84 KB)
📄
live_render.py
(3.58 KB)
📄
logging.py
(11.2 KB)
📄
markup.py
(8.01 KB)
📄
measure.py
(5.18 KB)
📄
padding.py
(4.85 KB)
📄
pager.py
(828 B)
📄
palette.py
(3.32 KB)
📄
panel.py
(8.54 KB)
📄
pretty.py
(35.72 KB)
📄
progress.py
(58.35 KB)
📄
progress_bar.py
(7.97 KB)
📄
prompt.py
(11.04 KB)
📄
protocol.py
(1.36 KB)
📄
region.py
(166 B)
📄
repr.py
(4.34 KB)
📄
rule.py
(4.66 KB)
📄
scope.py
(2.78 KB)
📄
screen.py
(1.55 KB)
📄
segment.py
(23.66 KB)
📄
spinner.py
(4.27 KB)
📄
status.py
(4.32 KB)
📄
style.py
(25.63 KB)
📄
styled.py
(1.23 KB)
📄
syntax.py
(33.88 KB)
📄
table.py
(38.59 KB)
📄
terminal_theme.py
(3.29 KB)
📄
text.py
(43.62 KB)
📄
theme.py
(3.54 KB)
📄
themes.py
(102 B)
📄
traceback.py
(25.45 KB)
📄
tree.py
(8.95 KB)
Editing: jupyter.py
from typing import TYPE_CHECKING, Any, Dict, Iterable, List, Sequence if TYPE_CHECKING: from pip._vendor.rich.console import ConsoleRenderable from . import get_console from .segment import Segment from .terminal_theme import DEFAULT_TERMINAL_THEME if TYPE_CHECKING: from pip._vendor.rich.console import ConsoleRenderable JUPYTER_HTML_FORMAT = """\ <pre style="white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace">{code}</pre> """ class JupyterRenderable: """A shim to write html to Jupyter notebook.""" def __init__(self, html: str, text: str) -> None: self.html = html self.text = text def _repr_mimebundle_( self, include: Sequence[str], exclude: Sequence[str], **kwargs: Any ) -> Dict[str, str]: data = {"text/plain": self.text, "text/html": self.html} if include: data = {k: v for (k, v) in data.items() if k in include} if exclude: data = {k: v for (k, v) in data.items() if k not in exclude} return data class JupyterMixin: """Add to an Rich renderable to make it render in Jupyter notebook.""" __slots__ = () def _repr_mimebundle_( self: "ConsoleRenderable", include: Sequence[str], exclude: Sequence[str], **kwargs: Any, ) -> Dict[str, str]: console = get_console() segments = list(console.render(self, console.options)) html = _render_segments(segments) text = console._render_buffer(segments) data = {"text/plain": text, "text/html": html} if include: data = {k: v for (k, v) in data.items() if k in include} if exclude: data = {k: v for (k, v) in data.items() if k not in exclude} return data def _render_segments(segments: Iterable[Segment]) -> str: def escape(text: str) -> str: """Escape html.""" return text.replace("&", "&").replace("<", "<").replace(">", ">") fragments: List[str] = [] append_fragment = fragments.append theme = DEFAULT_TERMINAL_THEME for text, style, control in Segment.simplify(segments): if control: continue text = escape(text) if style: rule = style.get_html_style(theme) text = f'<span style="{rule}">{text}</span>' if rule else text if style.link: text = f'<a href="{style.link}" target="_blank">{text}</a>' append_fragment(text) code = "".join(fragments) html = JUPYTER_HTML_FORMAT.format(code=code) return html def display(segments: Iterable[Segment], text: str) -> None: """Render segments to Jupyter.""" html = _render_segments(segments) jupyter_renderable = JupyterRenderable(html, text) try: from IPython.display import display as ipython_display ipython_display(jupyter_renderable) except ModuleNotFoundError: # Handle the case where the Console has force_jupyter=True, # but IPython is not installed. pass def print(*args: Any, **kwargs: Any) -> None: """Proxy for Console print.""" console = get_console() return console.print(*args, **kwargs)
Upload File
Create Folder