
作为一个程序员有很多痛苦的事情其中一件事情就是debug调试下面就是我经常遇到的一个场景我在调一个复杂函数断点停下的那一刻调试面板里刷出了一整屏变量字符串、数字、布尔值、结构体混在一起格式全都一样。我要找的那个is_ready布尔值藏在一堆长得差不多的变量里。我只能一行一行地看。看到user_id哦是字符串看到42哦是数字看到true……等等我刚才看的那一行是哪个这不是在调试这是在考眼力。没有颜色的情况下在一大堆调用栈里扫变量非常困难只能一行一行读而不是“先找颜色再看键名”。VS Code 早就解决了这个问题字符串是橙色数字是绿色布尔值是蓝色结构体是灰色。你不用读变量名扫一眼颜色就知道它的类型。但 Zed 的调试器一直没这个能力所有变量都是同一个颜色像一个没有高亮的代码编辑器。现在Zed 也学会了Zed 新版本的调试器现在能根据变量类型给它们上不同的主题色。下面来直观感受下以前是这样所有的都是清一色的蓝色现在是这样在 VS Code 的 里字符串是橙色数字是绿色布尔值是蓝色表格结构体/类是灰色。zed和vscode最大的区别就是变量本身的颜色有些不一样现在调试再也不用一行一行扫描式查看了你想找一个布尔值眼睛直接去找蓝色。你想找一个字符串直接去看橙色。类型成了颜色索引变量名成了第二层信息而不是唯一入口。调试大对象时尤其明显。 一个结构体里嵌了十几个字段类型混杂。以前你要一个个展开、一个个读。现在颜色先帮你分组你一眼就知道哪些是值类型、哪些是引用类型。降低“看错变量”的概率。 调试时最烦的事之一是盯着一个变量看了半天发现它不是你要找的那个。颜色编码等于给你加了一层“类型提示”减少这种低级误判。VS Code 在这件事上是先行者。它的调试器很早就支持按类型着色而且这个能力跟主题深度绑定你换主题变量颜色也跟着换。这是它调试体验成熟的地方之一。Zed 这次是补课但补得挺聪明。它没有发明一套自己的颜色系统而是直接接入主题。也就是说变量颜色不是写死的而是跟着你的主题走。你用暗色主题它就是暗色主题里定义的类型色你换一个主题颜色也跟着变。这比“硬编码一套配色”要灵活。但差距还在。VS Code 的调试 UI 经过多年打磨在变量分组、懒加载、搜索过滤这些方面都更成熟。Zed 这次解决的是“有没有”的问题距离“好不好用”还有空间。