调试器在这里 - Zed 博客

主要观点:

  • 2000 多名开发者的需求促使 Zed 实现了调试功能,这是迈向 Zed 1.0 的一大步。
  • Zed 的原生调试器具有快速、熟悉、可配置的特点,支持多种流行语言及扩展系统。
  • 通过引入定位器简化设置过程,自动运行定位器,多数情况下无需手动编写调试配置。
  • 调试会话中可轻松检查程序状态,调试器面板可自定义,支持键盘驱动调试。
  • 调试器由社区引领开发,Remco Smits 贡献关键,其架构采用两层架构实现高效协作调试等功能。
  • 通过扩展 API 支持调试器集成,利用 Tree-sitter 实现内联变量值功能。
  • 下一步计划添加新视图、自动配置等高级功能。

关键信息:

  • 支持语言:Rust、C/C++、JavaScript、Go、Python 等,可通过扩展支持其他语言。
  • 定位器:可将构建配置转换为调试配置,简化设置,目前支持 Cargo、Python、JavaScript、Go 等。
  • 调试器面板:可自定义,支持键盘驱动调试。
  • 架构:两层架构,数据层与调试适配器通信,UI 层获取数据渲染界面。
  • 扩展:扩展 API 支持调试器集成,添加 DAP 支持需定义自定义模式等。
  • 内联变量值:通过 Tree-sitter 实现,目前支持 Python、Rust、Go 。
  • 下一步计划:添加新视图、自动配置等。

重要细节:

  • 调试器设置过程简单,多数情况下自动运行定位器即可。
  • 两层架构分离了 UI 层和数据层,提高效率和可扩展性。
  • 扩展调试器需定义自定义模式等,遵循 LSP 扩展方式。
  • Tree-sitter 可准确识别当前执行范围的变量,支持多种语言。
  • 下一步计划中的新视图包括 watch 列表、内存视图等。
阅读 25
0 条评论