开源代码编辑器 Zed 宣布推出「调试器(Debugger)」功能,称这是向 Zed 1.0 迈出的重要一步。
调试器特性
-
快速 :减少上下文切换时间,让用户能更专注于调试。
-
熟悉 :与 Zed 的设计语言保持一致,支持典型的调试流程,方便用户快速上手。
-
可配置 :用户可自定义 UI、键绑定、调试配置等。
据介绍,Zed 开箱即支持调试多种流行编程语言,包括 Rust、C/C++、JavaScript、Go 和 Python。通过扩展系统,Zed 可以支持任何实现调试适配器协议(DAP)的调试适配器。
技术架构
- 采用两层架构,数据层与调试适配器直接通信,UI 层从数据层获取数据进行界面渲染。
- 数据层负责维护会话状态、缓存响应、使失效数据,UI 层按需请求数据,避免不必要的请求,便于后续实现协作调试。
调试适配器集成
- 扩展了 Zed 的扩展 API 以支持调试器集成,通过定义自定义架构等方式,让扩展作者能轻松将调试适配器集成到 Zed 中。
内联变量值实现
- 利用 Tree-sitter 查询准确识别当前执行范围内的变量,无需依赖 LSP 服务器与调试适配器的紧密集成,目前支持 Python、Rust、Go 等语言。
详情查看文档:https://zed.dev/docs/debugger