发布

关注每周的 Zed 发布。

办公时间:11 月 5 日,深入了解 Zed 的 PR 审查流程,并与 Conrad Irwin 一起现场审查您的 PR
九月

0.205.4

2025年9月24日

macOS
Linux

本周发布的版本包括一个暂存选择器、应用和丢弃 Git 暂存命令、无需修改工作副本即可修改提交消息的功能、项目面板中更好的拖放支持、自动更新失败时更好的错误报告,以及在代理面板中提及大文件时改进的令牌消耗。此外,对于 Python 开发者🐍,Zed 现在直接附带 ty 语言服务器(默认禁用)和 Ruff(默认启用)——无需再为它们安装扩展!

功能

通用

  • 增加了对拖放文件和外部路径到项目面板空白区域的支持,将其放置到您添加到项目的最后一个文件夹中。(#38008
  • 通过允许将折叠的目录拖放到项目面板中的其他项目上,改进了拖放支持。(#38070
  • 添加了 whitespace_map 设置,用于控制当 show_whitespace 设置启用时,用于渲染空白的可见字符。(#37704;感谢 iluuu1994
  • 改进了自动更新失败时的错误报告。(#38241
  • 为 Markdown 预览和语法树视图添加了滚动条。(#38183
  • 添加了 pane::SplitAndMove{Up,Down,Left,Right},允许在不克隆当前缓冲区的情况下创建分割。(#38034
  • 添加了图标主题支持,可根据目录名称更改文件夹图标。(#36351;感谢 jacobtread
  • 在适用情况下,添加了对引用搜索缓冲区的重用。(#37994
  • 改进了自动保存行为,以防止在快速关闭文件和使用 afterDelay 设置时出现确认对话框。(#36929;感谢 itsaphel
  • 改进了 Linux 上 pane::GoForward 操作的显示键绑定。(#38221;感谢 RocketRide9
  • 现在,安装开发扩展将自动移除已安装的发布扩展。(#38088
  • 改进了在行尾使用 ctrl-keditor::CutToEndOfLine)时的行为。(#34553;感谢 AidanV
  • 添加了一个选项,使 editor::CutToEndOfLine 不吞噬换行符。(#34553;感谢 AidanV
{
    "context": "Editor",
    "bindings": {"ctrl-k": ["editor::CutToEndOfLine", { "stop_at_newlines": true }]}
}
  • 添加了 repl.max_columnsrepl.max_lines 设置。(#37927;感谢 cvanelteren
  • 允许 0 作为 excerpt_context_lines 设置的值。(#37982

AI

  • ACP:将代理设置传递给所有 ACP 代理。(#38247
  • 代理:添加了 agent.message_editor_min_lines 设置,允许用户通过使用不同的最小行数来自定义代理面板消息编辑器的默认大小。(#37975;感谢 ojkelly
  • 代理:当代理请求的工具不存在时,现在将其视为工具调用失败,而不是停止线程。(#38207
  • 代理:增加了对 API 密钥和 API URL 的支持,以连接到远程 Ollama 提供程序。这还允许从代理面板设置中设置 URL 和 API 密钥。(#34110;感谢 imumesh18
  • 代理:增加了从设置中控制 OpenRouter 模型的提供程序路由的功能。(#37979;感谢 imumesh18
  • 代理:当 @mention 大型文件时,代理面板现在发送文件的轮廓,而不是整个文件。(#38032
  • 代理:当 Gemini 响应包含 block_reason 时,添加了错误消息。(#38670

Vim / Helix

  • Helix:添加了专用的“helix select”模式,可以通过键绑定进行定向。(#37748;感谢 romaninsh

Git

  • 增加了更多 Git 暂存功能。(#35927;感谢 AlvaroParker
    • 添加了一个暂存选择器,用于弹出和丢弃特定的暂存条目。
    • 添加了 Git 暂存应用命令。
    • 添加了 Git 暂存丢弃命令。
    • 当不存在暂存条目时,禁用了 Git 面板上的暂存弹出操作。
  • 现在可以在 UI 中修改提交消息,而无需进行其他更改。(#37256;感谢 Hawkbawk
  • 为 Git 分支选择器项添加了工具提示,使得区分长分支名称更加容易。(#38261
  • 在字符串中使用 \x00 表示而不是字面上的空字符,以提高与 Git diff 和 GitHub 的 diff 查看器的兼容性。(#38033;感谢 AlvaroParker

语言

  • Python:添加了对 ty 语言服务器的内置支持(默认禁用)。(#37580
  • Python:现在无需安装扩展即可使用 Ruff 原生语言服务器。(#37804
  • Python:改进了本地虚拟环境的工具链优先级。(#37510;感谢 dunkmann00
  • TypeScript:在 .ts 文件中添加了对 Tailwind 自动补全的开箱即用支持。(#38254

错误修复

  • macOS 26:修复了滚动有时会感觉卡顿的问题。(#38179
  • macOS:修复了当工作区窗口之前位于屏幕外时 Zed 会崩溃的问题。(#38524
  • Linux:修复了 Secret Service 集成有时会产生 Incorrect secret 错误的问题。(#38043;感谢 bemyak
  • Helix:修复了 Helix 模式会错误地回退到“normal”模式而不是保持在“helix normal”模式的问题(例如,当按下 vv 时)。(#37748;感谢 romaninsh
  • 代理:修复了文本插入遵循光标位置而不是始终追加到末尾的问题。(#38253;感谢 Kyrilasa
  • 代理:修复了当流式代码块带有前导空白时崩溃的问题。(#38225
  • 代理:修复了代理设置视图中 MCP 服务器部分的服务器标题溢出问题。(#38195;感谢 clicktodev
  • 代理:修复了文件路径包含空格时外部代理身份验证失败的问题。(#38175;感谢 hakanensari
  • 代理:修复了处理设置中 LLM 提供程序 URL 更改时也加载相关 API 密钥的问题。(#38163
  • 代理:修复了过滤 MCP 工具时崩溃的问题。(#37929
  • 代理:修复了在代理面板中输入空格时,@mentions 自动补全有时不会消失的问题。(#37922
  • 代理:修复了 Gemini 拒绝某些配置文件/系统请求的问题。(#38705
  • ACP:修复了一个错误,即在 Zed 启动后很快启动外部代理线程会显示“未注册”错误。(#38330
  • ACP:修复了 ACP 代理请求读取文件部分时行为不正确的问题。(#38401
  • JavaScript:修复了动态 jest/vitest 任务名称中的名称转义问题。(#36999;感谢 lsndr
  • Python:修复了 Python 块语句(for、finally、if、else、try)在末尾有注释时缩进不正确的问题。(#37903;感谢 ImFeH2
  • Git:修复了 Git 的 core.excludesFile(~/.config/git/ignore)除了 .gitignore 之外未被尊重的问题。(#33592
  • Git:修复了面板上的 Git amend 发送“Update ...”而不是原始提交消息的问题。(#38681;感谢 AlvaroParker
  • Git:修复了 Git amend 按钮不工作的问题。(#38681;感谢 AlvaroParker
  • 修复了在安装 Emmet 扩展的 TSX 文件中,每次按键时补全菜单都会闪烁的问题。(#38320
  • 修复了一个可能导致某些语言服务器出现重复诊断的错误。(#38212
  • 修复了填充按钮悬停背景。(#38235;感谢 huacnlee
  • 修复了项目搜索替换陈旧搜索结果的问题。(#38251
  • 修复了悬停在模式选择器菜单项上时键绑定显示错误的问题。(#38204;感谢 AlvaroParker
  • 修复了 Zed 过度通知语言服务器关于打开缓冲区的问题,这可能导致多语言项目(例如 Go)中出现令人困惑的错误。(#38196
  • 修复了终端工具的 shell 选择问题。(#38186
  • 修复了 ANSI 颜色在某些背景颜色上对比度调整不正确的问题。(#38155;感谢 timvermeulen
  • 修复了基于 Basedpyright 的入门横幅。(#38135;感谢 narqo
  • 修复了编辑 keymap.json 时,操作文档仅显示带有输入的动作的问题。(#38156
  • 修复了当 keymap.json 文件完全为空时,键映射编辑器无法保存键绑定的问题。(#38087
  • 修复了 line_indicator_format 设置不会根据 settings.json 中的值进行更新的问题。(#38071
  • 修复了 SVG 预览在跟踪活动编辑器时不会更新的问题。(#38081
  • 修复了 nushell 和 powershell 的任务参数被错误引用问题。(#38056
  • 修复了预发布 LSP 提取设置在 Zed 重启之前不起作用的问题。(#38046
  • 修复了导航缓冲区搜索历史记录的问题。(#37924;感谢 tidely
  • 修复了安装开发扩展时,活动指示器中显示安装状态为“removing”的问题。(#37985
  • 修复了键映射优先级,偏向用户设置而非基本键映射/配置。(#37557;感谢 Zertsov
  • 修复了编辑器中代码操作菜单项被截断的问题。(#37951
  • 修复了编辑器中的占位符不会换行的问题。(#37919
  • 通过使用 npm install 而不是 pip install,修复了 Basedpyright 安装的可靠性问题。(#38471
  • 修复了 ty LSP 二进制文件的路径和参数问题。(#38458;感谢 derekntnguyen
  • 修复了无法使用终端登录 Claude Code 或 Gemini 的问题。(#38567
  • 修复了语法节点快捷方式。 (#38654)
  • 修复了部署 Git blame 时,展开切换按钮过大的问题。(#38349

Windows 测试版

  • 修复了 Zed CLI 打开该窗口中的现有文件时,Zed 窗口会保持最小化的问题。(#38287