rich.segment

class rich.segment.ControlType(value)[ソース]

通常はANSIコードに変換される、印刷不可の制御コード。

class rich.segment.Segment(text, style=None, control=None)[ソース]

関連付けられたスタイルを持つテキストの一部。セグメントはコンソールのレンダリングプロセスによって生成され、最終的に端末に書き込まれる文字列に変換されます。

パラメータ
  • text (str) – テキストの一部。

  • style (Style, optional) – テキストに適用するオプションのスタイル。

  • control (Tuple[ControlCode], optional) – 制御コードのオプションシーケンス。

cell_length

このセグメントのセル長。

int

classmethod adjust_line_length(line, length, style=None, pad=True)[ソース]

行を指定された幅に調整します(必要に応じて切り取りまたはパディング)。

パラメータ
  • **segments** (Iterable[Segment]) – 単一行のセグメントのリスト。

  • **length** (int) – 行の目的の幅。

  • **style** (Style, optional) – 使用される場合のパディングのスタイル(末尾のスペース)。デフォルトはNone。

  • **pad** (bool, optional) – 行がlengthより短い場合はスペースでパディングします。デフォルトはTrue。

  • **line** (List[Segment]) –

戻り値

目的の長さのセグメントの行。

戻り値の型

List[Segment]

classmethod align_bottom(lines, width, height, style, new_lines=False)[ソース]

レンダリングを下部に揃えます(必要に応じて上に余分な行を追加します)。

引数

lines (List[List[Segment]]): 行のリスト。 width (int): 目的の幅。 height (int, optional): 目的の高さ、変更しない場合はNone。 style (Style): 追加されたパディングのスタイル。デフォルトはNone。 new_lines (bool, optional): パディングされた行には「\n」を含める必要があります。 デフォルトはFalse。

戻り値

戻り値

List[List[Segment]]: 新しい行のリスト。

パラメータ
  • **lines** (List[List[Segment]]) –

  • **width** (int) –

  • **height** (int) –

  • **style** (Style) –

  • **new_lines** (bool) –

戻り値の型

List[List[Segment]]

classmethod align_middle(lines, width, height, style, new_lines=False)[ソース]

行を中央に揃えます(必要に応じて上下に余分な行を追加します)。

引数

lines (List[List[Segment]]): 行のリスト。 width (int): 目的の幅。 height (int, optional): 目的の高さ、変更しない場合はNone。 style (Style): 追加されたパディングのスタイル。 new_lines (bool, optional): パディングされた行には「\n」を含める必要があります。デフォルトはFalse。

戻り値

戻り値

List[List[Segment]]: 新しい行のリスト。

パラメータ
  • **lines** (List[List[Segment]]) –

  • **width** (int) –

  • **height** (int) –

  • **style** (Style) –

  • **new_lines** (bool) –

戻り値の型

List[List[Segment]]

classmethod align_top(lines, width, height, style, new_lines=False)[ソース]

行を上部に揃えます(必要に応じて下に余分な行を追加します)。

引数

lines (List[List[Segment]]): 行のリスト。 width (int): 目的の幅。 height (int, optional): 目的の高さ、変更しない場合はNone。 style (Style): 追加されたパディングのスタイル。 new_lines (bool, optional): パディングされた行には「\n」を含める必要があります。デフォルトはFalse。

戻り値

戻り値

List[List[Segment]]: 新しい行のリスト。

パラメータ
  • **lines** (List[List[Segment]]) –

  • **width** (int) –

  • **height** (int) –

  • **style** (Style) –

  • **new_lines** (bool) –

戻り値の型

List[List[Segment]]

セグメントの反復可能オブジェクトにスタイルを適用します。

スタイルがstyle + segment.style + post_styleに置き換えられたセグメントの反復可能オブジェクトを返します。

パラメータ
  • **segments** (Iterable[Segment]) – 処理するセグメント。

  • **style** (Style, optional) – 基本スタイル。デフォルトはNone。

  • **post_style** (Style, optional) – セグメントスタイルの上に適用するスタイル。デフォルトはNone。

戻り値

戻り値

戻り値の型

セグメントの新しい反復可能オブジェクト(場合によっては同じ反復可能オブジェクト)。

Iterable[Segments]

property cell_length: int

戻り値

self.textを表示するために必要な端末セルの数。

戻り値の型

int

戻り値

フィールド番号2のエイリアス

classmethod divide(segments, cuts)[ソース]

パラメータ
  • セグメントの反復可能オブジェクトを部分に分割します。

  • **cuts** (Iterable[int]) – 分割するセル位置。

**segments** (Iterable[Segment]) –

Yields

戻り値の型

[Iterable[List[Segment]]] – リスト内のセグメントの反復可能オブジェクト。

classmethod filter_control(segments, is_control=False)[source]

`is_control` 属性でセグメントをフィルタリングします。

パラメータ
  • segments (Iterable[Segment]) – Segment インスタンスの反復可能オブジェクト。

  • is_control (bool, optional) – 検索で一致させる is_control フラグ。

戻り値

Segment インスタンスの反復可能オブジェクト。

戻り値の型

Iterable[Segment]

classmethod get_line_length(line)[source]

セグメントのリストの長さを取得します。

パラメータ

line (List[Segment]) – Segment のリストとしてエンコードされた行('\n'文字は含まれていないと仮定)。

戻り値

行の長さ。

戻り値の型

int

classmethod get_shape(lines)[source]

行のリストの形状(外接矩形)を取得します。

パラメータ

lines (List[List[Segment]]) – 行のリスト('\n'文字は含まれていません)。

戻り値

文字単位の幅と高さ。

戻り値の型

Tuple[int, int]

property is_control: bool

セグメントに制御コードが含まれているかどうかを確認します。

classmethod line()[source]

新しい行セグメントを作成します。

戻り値の型

Segment

classmethod remove_color(segments)[source]

セグメントの反復可能オブジェクトからすべての色を削除します。

パラメータ

segments (Iterable[Segment]) – セグメントの反復可能オブジェクト。

**segments** (Iterable[Segment]) –

Segment – 無色のスタイルのセグメント。

戻り値の型

Iterable[Segment]

classmethod set_shape(lines, width, height=None, style=None, new_lines=False)[source]

行のリストの形状(外接矩形)を設定します。

引数

lines (List[List[Segment]]): 行のリスト。 width (int): 目的の幅。 height (int, optional): 目的の高さ。変更しない場合は None。 style (Style, optional): 追加されるパディングのスタイル。 new_lines (bool, optional): パディングされた行に "

戻り値

戻り値

List[List[Segment]]: 新しい行のリスト。

パラメータ
戻り値の型

List[List[Segment]]

classmethod simplify(segments)[source]

同じスタイルを持つ連続したセグメントを結合することにより、セグメントの反復可能オブジェクトを簡化します。

パラメータ

segments (Iterable[Segment]) – セグメントの反復可能オブジェクト。

戻り値

同じようにレンダリングされる、場合によってはより小さいセグメントの反復可能オブジェクト。

戻り値の型

Iterable[Segment]

classmethod split_and_crop_lines(segments, length, style=None, pad=True, include_new_lines=True)[source]

セグメントを行に分割し、指定された長さより長い行を切り詰めます。

パラメータ
  • segments (Iterable[Segment]) – セグメントの反復可能オブジェクト。おそらく console.render から生成されます。

  • length (int) – 目的の行の長さ。

  • style (Style, optional) – パディングに使用するスタイル。

  • pad (bool) – `length` より短い行のパディングを有効にします。

  • include_new_lines (bool) –

戻り値

セグメントの行の反復可能オブジェクト。

戻り値の型

Iterable[List[Segment]]

split_cells(cut)[source]

指定された列でセグメントを2つのセグメントに分割します。

カットポイントが2セル幅の文字の真ん中に来ると、親セグメントの表示幅を維持するために、2つのスペースに置き換えられます。

戻り値

2つのセグメント。

戻り値の型

Tuple[Segment, Segment]

パラメータ

cut (int) –

classmethod split_lines(segments)[source]

セグメントのシーケンスを行のリストに分割します。

パラメータ

segments (Iterable[Segment]) – 改行を含む可能性のあるセグメント。

**segments** (Iterable[Segment]) –

Iterable[List[Segment]] – 1行につき1つのセグメントリストの反復可能オブジェクト。

戻り値の型

[Iterable[List[Segment]]] – リスト内のセグメントの反復可能オブジェクト。

スタイルの反復可能オブジェクトからすべてのリンクを削除します。

パラメータ

segments (Iterable[Segment]) – セグメントの反復可能オブジェクト。

**segments** (Iterable[Segment]) –

Segment – リンクが削除されたセグメント。

戻り値の型

Iterable[Segment]

classmethod strip_styles(segments)[source]

セグメントの反復可能オブジェクトからすべてのスタイルを削除します。

パラメータ

segments (Iterable[Segment]) – セグメントの反復可能オブジェクト。

**segments** (Iterable[Segment]) –

Segment – スタイルが None に置き換えられたセグメント

戻り値の型

Iterable[Segment]

property style

フィールド番号 1 のエイリアス

property text

フィールド番号 0 のエイリアス

class rich.segment.Segments(segments, new_lines=False)[source]

セグメントの反復可能オブジェクトをレンダリングするためのシンプルなレンダー可能オブジェクト。このクラスは、__rich_console__ メソッドの外部でセグメントを出力したい場合に役立ちます。

パラメータ
  • segments (Iterable[Segment]) – セグメントの反復可能オブジェクト。

  • new_lines (bool, optional) – セグメント間に改行を追加します。デフォルトは False です。