rich.segment

class rich.segment.ControlType(value, names=None, *values, module=None, qualname=None, type=None, start=1, boundary=None)[源代码]

不可打印的控制代码,通常转换为ANSI代码。

class rich.segment.Segment(text, style=None, control=None)[源代码]

具有关联样式的一段文本。段由控制台呈现过程产生,并最终被转换成要写入终端的字符串。

参数
  • text (str) -- 一段文字。

  • style (Style, optional) -- 应用于文本的可选样式。

  • control (Tuple[ControlCode], optional) -- 可选的控制代码序列。

cell_length

此段的单元格长度。

类型

集成

classmethod adjust_line_length(line, length, style=None, pad=True)[源代码]

将线条调整为给定宽度(根据需要裁剪或填充)。

参数
  • segments (Iterable[Segment]) -- 单行中的线段列表。

  • length (int) -- 所需的线条宽度。

  • style (Style, optional) -- 填充样式(如果使用)(末尾的空格)。默认为无。

  • pad (bool, optional) -- 如果行短于以下值,则用空格填充 length 。默认为True。

  • line (List[Segment]) --

返回

具有所需长度的线段。

返回类型

List[Segment]

classmethod align_bottom(lines, width, height, style, new_lines=False)[源代码]

将渲染与底部对齐(根据需要在上方添加额外的行)。

参数:

行(列表 [List[Segment] ]):行的列表。Width(Int):所需宽度。Height(int,可选):所需高度或无以保持不变。Style(Style):添加的任何填充的样式。默认为无。New_line(bool,可选):填充的行应包括“

“。默认为FALSE。

返回:

明细表 [List[Segment] ]:新的行列表。

参数
返回类型

List[List[Segment]]

classmethod align_middle(lines, width, height, style, new_lines=False)[源代码]

将线条居中对齐(根据需要在上方和下方添加额外的线条)。

参数:

行(列表 [List[Segment] ]):行的列表。Width(Int):所需宽度。Height(int,可选):所需高度或无以保持不变。Style(Style):添加的任何填充的样式。New_line(bool,可选):填充的行应包括“

“。默认为FALSE。

返回:

明细表 [List[Segment] ]:新的行列表。

参数
返回类型

List[List[Segment]]

classmethod align_top(lines, width, height, style, new_lines=False)[源代码]

将线条与顶部对齐(根据需要向底部添加额外线条)。

参数:

行(列表 [List[Segment] ]):行的列表。Width(Int):所需宽度。Height(int,可选):所需高度或无以保持不变。Style(Style):添加的任何填充的样式。New_line(bool,可选):填充的行应包括“

“。默认为FALSE。

返回:

明细表 [List[Segment] ]:新的行列表。

参数
返回类型

List[List[Segment]]

classmethod apply_style(segments, style=None, post_style=None)[源代码]

将样式(S)应用于段的可迭代。

返回将样式替换为的段的可迭代数 style + segment.style + post_style

参数
  • segments (Iterable[Segment]) -- 要处理的段。

  • style (Style, optional) -- 基本风格。默认为无。

  • post_style (Style, optional) -- 要应用于线段样式顶部的样式。默认为无。

返回

段的新的可迭代(可能是相同的可迭代)。

返回类型

Iterable[Segments]

property cell_length: int

显示自文本所需的终端单元格数量。

返回

一些细胞。

返回类型

int

control: Optional[Sequence[Union[Tuple[ControlType], Tuple[ControlType, Union[int, str]], Tuple[ControlType, int, int]]]]

字段号2的别名

classmethod divide(segments, cuts)[源代码]

将段的可迭代分成多个部分。

参数
生成器

[Iterable[List[Segment]]] --列表中的段的可迭代。

返回类型

Iterable[List[Segment]]

classmethod filter_control(segments, is_control=False)[源代码]

数据段过滤依据 is_control 属性。

参数
  • segments (Iterable[Segment]) -- 段实例的可迭代。

  • is_control (bool, optional) -- 搜索中要匹配的IS_CONTROL标志。

返回

和段实例的可迭代。

返回类型

Iterable[Segment]

classmethod get_line_length(line)[源代码]

获取分段列表的长度。

参数

line (List[Segment]) -- 编码为段列表的行(假定没有‘\n’字符),

返回

这条线的长度。

返回类型

int

classmethod get_shape(lines)[源代码]

获取线条列表的形状(包围矩形)。

参数

lines (List[List[Segment]]) -- 行的列表(没有‘\n’字符)。

返回

以字符为单位的宽度和高度。

返回类型

Tuple[int, int]

property is_control: bool

检查数据段是否包含控制代码。

classmethod line()[源代码]

创建新的线段。

返回类型

Segment

classmethod remove_color(segments)[源代码]

从可迭代的线段中删除所有颜色。

参数

segments (Iterable[Segment]) -- 一个可迭代的段。

生成器

Segment --无色风格的片段。

返回类型

Iterable[Segment]

classmethod set_shape(lines, width, height=None, style=None, new_lines=False)[源代码]

设置线条列表(包围矩形)的形状。

参数:

行(列表 [List[Segment] ]):行的列表。Width(Int):所需宽度。Height(int,可选):所需高度或无以保持不变。Style(style,可选):添加的任何填充的样式。New_line(bool,可选):填充的行应包括“

“。默认为FALSE。

返回:

明细表 [List[Segment] ]:新的行列表。

参数
返回类型

List[List[Segment]]

classmethod simplify(segments)[源代码]

通过组合具有相同样式的连续线段来简化可迭代的线段。

参数

segments (Iterable[Segment]) -- 段的可迭代。

返回

将以相同方式呈现的段的可能更小的可迭代。

返回类型

Iterable[Segment]

classmethod split_and_crop_lines(segments, length, style=None, pad=True, include_new_lines=True)[源代码]

将线段拆分为多条线,并裁剪大于给定长度的线。

参数
  • segments (Iterable[Segment]) -- 段的可迭代数,可能是从sole.render生成的。

  • length (int) -- 所需的线路长度。

  • style (Style, optional) -- 用于任何填充的样式。

  • pad (bool) -- 允许填充小于以下值的行 length

  • include_new_lines (bool) --

返回

可迭代的线段线。

返回类型

Iterable[List[Segment]]

split_cells(cut)[源代码]

在指定列处将线段拆分为两个线段。

如果切割点落在两个单元格宽字符的中间,则它将被两个空格替换,以保留父段的显示宽度。

返回

两段。

返回类型

Tuple[Segment, Segment]

参数

cut (int) --

classmethod split_lines(segments)[源代码]

将一系列线段拆分为线条列表。

参数

segments (Iterable[Segment]) -- 可能包含换行符的段。

生成器

Iterable[List[Segment]] --段列表可重复,每行一个。

返回类型

Iterable[List[Segment]]

从可迭代的样式中删除所有链接。

参数

segments (Iterable[Segment]) -- 一个可迭代的段。

生成器

Segment --删除链接的段。

返回类型

Iterable[Segment]

classmethod strip_styles(segments)[源代码]

从段的可迭代中删除所有样式。

参数

segments (Iterable[Segment]) -- 一个可迭代的段。

生成器

Segment --具有样式的线段将替换为无

返回类型

Iterable[Segment]

style: Optional[Style]

字段号%1的别名

text: str

字段号0的别名

class rich.segment.Segments(segments, new_lines=False)[源代码]

一个简单的可渲染来渲染可迭代的段。如果要在外部打印数据段,此类可能很有用 __rich_console__ 方法。

参数
  • segments (Iterable[Segment]) -- 段的可迭代。

  • new_lines (bool, optional) -- 在线束段之间添加新线。默认为False。