gpt4 book ai didi

python - 如何在开发过程中调试 sublime 插件

转载 作者:行者123 更新时间:2023-11-28 19:26:00 26 4
gpt4 key购买 nike

我想用 pdb 调试我的插件,但它不起作用。我收到这些错误

Traceback (most recent call last):
File "./sublime_plugin.py", line 362, in run_
File "./useIt.py", line 14, in run
for region in self.view.sel():
File "./useIt.py", line 14, in run
for region in self.view.sel():
File ".\bdb.py", line 46, in trace_dispatch
File ".\bdb.py", line 65, in dispatch_line
bdb.BdbQuit

有人有想法吗?或者其他调试 sublime 插件的方法?

最佳答案

问题是 sys.stdin 通常 没有附加到任何东西。但是,如果您从控制台启动 SublimeText2,sys.stdin 确实有效:

  • 在 Mac 上,通过在终端中输入完整路径在资源包中定位可执行文件来启动应用程序:

    /Applications/Sublime\ Text\ 2.app/Contents/MacOS/Sublime\ Text\ 2
  • 在 Windows 上,从 Windows 控制台启动应用程序:

    "C:\Program Files\Sublime Text 2\sublime_text.exe"

    临时的,我没有安装 Windows Sublime Text 2,所以这个命令行基于快速谷歌

现在应用程序有一个控制台;但是 sys.stdout 仍然被重定向到内置的 SublimeText 2 控制台。您希望使用正确的 stdout 启动调试器,该调试器仍连接到您的控制台。而不是 import pdb; pdb.set_trace(),使用:

import pdb, sys; pdb.Pdb(stdout=sys.__stdout__).set_trace()

原始控制台 stdout 保存在 sys.__stdout__ 中,通过将其传递给 pdb.Pdb(),您将获得一个功能齐全的 pdb session 。

关于python - 如何在开发过程中调试 sublime 插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13038293/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com