诊断

Zed 从语言服务器获取其诊断信息,并支持 LSP 的推(push)和拉(pull)两种变体,这使其与所有现有语言服务器兼容。

常规诊断

默认情况下,Zed 将所有诊断信息显示为编辑器和滚动条中的带下划线文本。

编辑器诊断信息可以通过

"diagnostics_max_severity": null

编辑器设置进行筛选(可能的值:"off""error""warning""info""hint"null(默认,所有诊断信息))。

滚动条诊断信息通过

"scrollbar": {
  "diagnostics": "all",
}

配置进行设置(可能的值:"none""error""warning""information""all"(默认))

诊断信息可以悬停以显示包含完整、渲染的诊断消息的工具提示。或者,可以使用editor::GoToDiagnosticeditor::GoToPreviousDiagnostic在编辑器中的诊断信息之间导航,并为当前活动的诊断信息显示一个弹出窗口。

内联诊断(错误透镜)

Zed 支持将诊断信息显示为代码右侧的透镜。此功能默认禁用,但可以使用编辑器菜单暂时开启(或关闭),或使用

永久开启。

"diagnostics": {
  "inline": {
    "enabled": true,
    "max_severity": null, // same values as the `diagnostics_max_severity` from the editor settings
  }
}

其他 UI 位置

项目面板

项目面板的条目可以根据文件中诊断信息的严重程度着色。

要配置,请使用

"project_panel": {
  "show_diagnostics": "all",
}

配置(可能的值:"off""errors""all"(默认))

编辑器选项卡

与项目面板类似,编辑器选项卡可以使用

"tabs": {
  "show_diagnostics": "off",
}

配置进行着色(可能的值:"off"(默认)、"errors""all"