跳转到主要内容

自动安装Rich的traceback处理器

项目描述

rich-tracebacks

PyPI - Python Version PyPI GitHub release (latest SemVer) PyPI - License

rich-tracebacks 自动化Python程序中 Rich 的 traceback 处理器的安装。与 Rich 自己的 官方方法 相比,rich-tracebacks 简单得多,且与您的虚拟环境无关。

安装

pip install rich-tracebacks

用法

启用

设置 RICH_TRACEBACKS 环境变量。变量的值无关紧要,但我们将使用 1 作为示例。

export RICH_TRACEBACKS=1

就这些。每次您运行程序时,Rich 的 traceback 处理器都会自动安装。

禁用

取消设置 RICH_TRACEBACKS 环境变量。

unset RICH_TRACEBACKS

配置

您可以通过在项目的根目录下创建一个 rt_config.py 文件来使用其支持的选项配置 traceback 处理器。该文件应包含一个名为 config 的字典,它将选项名称映射到它们的预期值。例如

# rt_config.py

config = {
    "show_locals": True,
    "width": 120,
    "theme": "monokai",
    ...
}

未在 rt_config.py 中定义的选项将回退到它们的默认值。如果 rt_config.py 不存在,则所有选项都将回退到它们的默认值。

关于 suppress 选项的说明

Rich 的 traceback 处理器支持一个 suppress 选项,您可以传递一个要排除在 traceback 之外的模块和路径的可迭代对象。要抑制一个模块,您通常需要导入该模块,然后将模块对象传递给 suppress 选项。例如

import loctocat
from rich.traceback import install

install(suppress=[loctocat])

使用 rich-tracebacks,您还可以选择简单地传递模块名称作为字符串。例如

# rt_config.py

config = {
    "suppress": ["loctocat"],
    ...
}

rich-tracebacks 将为您导入模块并传递模块对象到 Rich。无法导入的名称将作为字面字符串传递给 Rich,Rich 会将其视为路径。

常见问题解答

问题:我使用 PyCharm,当我在调试器中使用时,如果我的程序调用 sys.excepthook,rich-tracebacks 似乎不起作用,请帮帮我。

答案:恭喜你遇到了这个极其狭窄的问题。在相关的运行配置中设置环境变量 RICH_TRACEBACKS_PYCHARM 将为此问题提供一个非常实验性的修复方案。如果不起作用,请打开一个 issue,我将尽力帮助你。

许可证

rich-tracebacks 采用 MIT 许可协议

项目详情


下载文件

下载适合您平台的应用程序。如果您不确定选择哪一个,请了解更多关于安装包的信息。

源分发

rich_tracebacks-1.2.1.tar.gz (4.0 kB 查看哈希值)

上传时间

构建分发

rich_tracebacks-1.2.1-py3-none-any.whl (4.1 kB 查看哈希值)

上传时间 Python 3

支持者

AWSAWS 云计算和安全赞助商 DatadogDatadog 监控 FastlyFastly CDN GoogleGoogle 下载分析 MicrosoftMicrosoft PSF 赞助商 PingdomPingdom 监控 SentrySentry 错误日志 StatusPageStatusPage 状态页面