使用 python Rich 库缩进文本块

问题描述 投票:0回答:1

我正在尝试使用 Rich 库中的 rich.console.print(Markdown(text)) 将格式化的 Markdown 文本块打印到终端。但是,我希望用制表符缩进该文本块。通常我会使用 textwrap 模块,但在使用它时, rich.Markdown() 会将其解释为代码块,因此除了给它不同的背景之外,不会对 markdown 应用任何格式。

使用textwrap的示例: textwrap

不使用textwrap的示例: no textwrap

我的Python代码:

    pretty_console.console.print("[u bright_blue]All series:[/]")
    for e in display_data:
        pretty_console.console.print(
            f"{e['id'].ljust(max_series_id_length)}: "
            f"[bold]{e['name'].ljust(max_series_name_length)}[/]\n"
        )
        if e['description']:
            text = e['description']
            markdown_text = Markdown(text)
            pretty_console.console.print(markdown_text)

请原谅图片中的荷兰语,但在这种情况下语言并不重要。

有谁知道如何打印丰富格式的文本,并且在(软)换行时也可以使用缩进?

python formatting rich
1个回答
0
投票

您可以使用

Padding
缩进输出:

from rich.console import Console
from rich.padding import Padding

console = Console()
console.print(Padding("my text", pad=(0, 0, 0, 4))) # Indent by 4 spaces.
© www.soinside.com 2019 - 2024. All rights reserved.