主要观点:
- 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 列表、内存视图等。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。