← 返回博客

Zed Industries 本周动态:#10

2023 年 7 月 7 日


本周由于几个假期和一些休假,相对比较平静,但我们的工作仍在继续推进,让我们来看看本周我们做了些什么!

Nate

本周大部分时间都花在了协作 UI 的设计和代码上。能够在 Zed 中进行原生通话感觉真的很棒。你可能从未真正意识到切换到另一个应用进行静音有多么麻烦!

在它变得真正出色之前,还有一些事情要做,比如我们需要找到一个解决方案来降低背景噪音,在 UI 中切换音频源等等。但目前它已经相当好用,我们已经开始将其用于我们所有的 Zed 会议。请让我们知道您目前的印象。

否则,我上周和前一周的大部分时间都深入研究了主题代码。 尽管它是用 TypeScript 编写的,但我们决定将整个代码库迁移到 snake_case 以更好地与 Rust 应用程序对齐。 现在能够搜索一些东西并获得 Rust 和 TypeScript 匹配非常棒。 在底层还有许多其他的更改,以便进一步开发我们一直在开发的动态强度/对比度系统。

干杯!

Antonio

我从意大利与 Nathan 的配对时间回来了。我们一起工作得很开心,我对 Zed 的未来感到非常兴奋。

在其他新闻中,在发布助手之后,我本周花了一些时间来修复我们在发布后注意到的一些问题。我还帮助修复了一些长期存在的 GPUI 错误,这些错误错误地跟踪了鼠标状态,并致力于改进我们的 Vim 支持。

Julia

我们经常看到的一个崩溃是,我们同时运行多个实例,争夺本地数据库访问权限。我们使用此数据库来存储您的最近项目列表到您打开的工作区面板布局等大量内容。由于 macOS 应用程序通常只有一个实例和一些窗口,因此我们与此数据库交互的代码假定它具有独占访问权限,如果以某种方式启动另一个实例,这就会很快崩溃。

我们可以重构该代码以处理与另一个实例的协调访问,但这将是一项大量的工程工作,并且仍然具有可疑的正确性。 我们最终确定的解决方案是在启动时通过网络套接字查找现有实例,如果我们确认已经有一个实例正在运行,则尽早退出。 无论如何,一旦我们进行多平台,就需要这样的机制,因此这似乎是一个相当方便的解决方案!

Kyle

本周的大部分时间都在努力工作,在下周(希望)合并之前,加强语义索引引擎。 值得注意的是,我们已经设置了重新索引(因此索引始终保持最新),适应了边缘情况和中间故障,并扩展了语言支持。 它运行得非常顺利,我很高兴能尽快发布它。

除此之外,我已经开始规划这项工作的下一阶段,深入研究最近的人工智能研究。

Piotr

本周,我已经完成了项目和分支切换器的开发。在此过程中,我与 Antonio 合作调整了 GPUI 对单击的元素传播,因为项目和分支切换器都以有趣的方式与位于它们下面的项目面板进行交互。

我还添加了滚动条中的搜索标记,这是 Kirill 长期要求的功能。 下周,我计划改进切换器,使它们更好,并推进协作 UI 的发展。 我还计划研究解决社区对语言支持的要求。

Kirill

很高兴从我占用了一个月的主题中退后几步,做一些更小的事情。 我仍然忙于插图,主要是撰写博客文章草稿和解决被忽略的问题,但令人惊讶的是,到目前为止,这些问题也很小且易于修复。 其他最值得注意的事情是找到一种方法来禁止某些键绑定并修复由于 LSP 和我们的逻辑交织而导致的额外 } 出现的问题。

Piotr 在将滚动条中的搜索标记带到 Zed 方面做得非常出色,这激励我更多地关注类似的小缺陷或日常痛苦。 如果情况允许,我将在下周保持低调并改进更多这些功能,让我们看看后缀补全是否可以从它开始。

Mikayla

语音聊天已在稳定版上启用! 太棒了! 如上所述,本周进展相当缓慢。 只是在摆弄语音聊天,并计划我们的直播功能的下一步。