跨平台截图模块修复 | AI生成和翻译

首页 2026.07

修复完成。不再需要 --linux 参数——平台会自动检测。

ww/image/screenshot.py 中的变更内容:

  1. 延迟导入 Quartz — 将 import Quartz 移入 sys.platform == "darwin" 分支内,而不是模块顶层。此前崩溃的原因是:Python 在加载模块时会尝试导入所有顶层名称,而 Quartz(pyobjc)在 Linux 上并不存在。

  2. capture_screenshot() 现在可在 Linux 上运行 — 回退到 _capture_linux(),该函数会依次尝试 scrot → ImageMagick import → gnome-screenshot → spectacle → ffmpeg x11grab。工具搜索顺序与 screenshot_linux.py 一致。

  3. main() 的描述已更新 — 现在显示“macOS / Linux”,而非仅“macOS”。

结果:

测试表明截图捕获功能正常工作(ImageMagick import 通过 DISPLAY=:1 运行),LLM 步骤仅因该云环境未设置 OPENROOTER_API_KEY 而失败——并非代码问题。

需要我将这种跨平台模式保存为技能吗?


AI生成和翻译,但整理分享仍需精力。如果觉得有帮助,欢迎 捐助支持。 微信:@lzwjavaWeChat QR · X: @lzwjava · 打个招呼 👋

返回 捐助