Skip to content

设置详解

这一章解决什么问题

帮助你全面理解 Zed 的配置体系,掌握 settings.json 的编辑方法,配置出适合自己的编辑环境。

资料来源

你会在什么时候用到它

  • 第一次配置 Zed 时
  • 想调整字体、主题、缩进等设置时
  • 需要为特定语言配置不同行为时

打开设置

方式一:命令面板

Ctrl+Shift+Popen settings

方式二:快捷键

Ctrl+,(与 VS Code 相同)

设置编辑界面

Zed 提供两种设置编辑方式:

  1. Settings UI:图形化界面,适合查找和修改常用设置
  2. settings.json:直接编辑 JSON 文件,适合高级配置

推荐使用 JSON

settings.json 功能更全面,而且配置可以备份和分享。本教程主要介绍 JSON 配置方式。

查看默认设置

Ctrl+Shift+Popen default settings

这会打开默认配置,你可以查看所有可用的配置项(只读)。

settings.json 结构

settings.json 是一个 JSON 文件,按层级组织配置:

json
{
  // 顶层:全局设置
  "theme": "One Dark",
  "ui_font_size": 16,
  "buffer_font_size": 14,
  
  // 面板位置
  "project_panel": {
    "dock": "left",
    "default_width": 240
  },
  "git_panel": {
    "dock": "right"
  },
  
  // 终端配置
  "terminal": {
    "shell": "system",
    "working_directory": "current_project_directory"
  },
  
  // 语言特定设置
  "languages": {
    "JavaScript": {
      "tab_size": 2
    },
    "Python": {
      "tab_size": 4
    }
  }
}

配置文件位置

平台路径
Windows%LOCALAPPDATA%\\Zed\\settings.json

快速打开配置文件:

powershell
# PowerShell
notepad "$env:LOCALAPPDATA\Zed\settings.json"

核心设置项

主题设置

json
{
  "theme": {
    "mode": "system",
    "light": "One Light",
    "dark": "One Dark"
  }
}
  • "mode": "system" 跟随系统,"light" 强制亮色,"dark" 强制暗色
  • "light" / "dark": 指定使用的主题名

字体设置

json
{
  "ui_font_family": ".SystemUIFont",
  "ui_font_size": 16,
  "buffer_font_family": "Cascadia Code",
  "buffer_font_size": 14,
  "buffer_font_features": {
    "calt": true,
    "liga": true
  }
}
设置说明
ui_font_family界面字体(文件树、面板等)
ui_font_size界面字体大小
buffer_font_family编辑器字体
buffer_font_size编辑器字体大小
buffer_font_features字体特性(连字等)

Windows 字体推荐

  • 代码字体Cascadia CodeFira CodeJetBrains Mono
  • 中文字体.SystemUIFont 会自动使用系统默认字体,通常能正确显示中文
  • 等宽字体:确保使用等宽字体,代码对齐才正确

缩进设置

json
{
  "hard_tabs": false,
  "tab_size": 2,
  "show_whitespaces": "selection"
}
设置选项说明
hard_tabstrue / false使用 Tab 字符还是空格
tab_size数字Tab 显示宽度
show_whitespaces"all" / "selection" / "none"是否显示空白字符

项目一致性

缩进风格应该与项目保持一致。如果项目使用 2 空格,你也应该用 2 空格。推荐使用 EditorConfig 统一管理。

自动保存

json
{
  "autosave": {
    "after_delay": {
      "milliseconds": 1000
    }
  }
}

选项:

  • "off" — 关闭
  • "after_delay" — 延迟保存(需指定毫秒数)
  • "on_focus_change" — 焦点离开编辑器时
  • "on_window_change" — 窗口失焦时

格式化

json
{
  "format_on_save": "on",
  "formatter": "language_server"
}
  • format_on_save"on" 保存时格式化,"off" 不格式化
  • formatter"language_server" 使用语言服务器,"prettier" 使用 Prettier

换行符

json
{
  "line_ending": "\n"
}

选项:

  • "\n" — LF(Unix 风格,推荐)
  • "\r\n" — CRLF(Windows 风格)
  • "auto" — 自动检测

面板位置配置

各面板可以配置停靠位置:

json
{
  "project_panel": {
    "dock": "left",
    "default_width": 240
  },
  "outline_panel": {
    "dock": "right"
  },
  "collaboration_panel": {
    "dock": "left"
  },
  "git_panel": {
    "dock": "right",
    "default_width": 300
  },
  "agent": {
    "dock": "right"
  },
  "terminal": {
    "dock": "bottom"
  }
}

"dock" 选项:"left""right""bottom"

语言特定设置

为不同编程语言配置不同行为:

json
{
  "languages": {
    "JavaScript": {
      "tab_size": 2,
      "formatter": {
        "external": {
          "command": "prettier",
          "arguments": ["--stdin-filepath", "{buffer_path}"]
        }
      }
    },
    "TypeScript": {
      "tab_size": 2,
      "format_on_save": "on"
    },
    "Python": {
      "tab_size": 4,
      "hard_tabs": false,
      "formatter": {
        "external": {
          "command": "black",
          "arguments": ["-"]
        }
      }
    },
    "Rust": {
      "tab_size": 4,
      "hard_tabs": false
    },
    "Markdown": {
      "soft_wrap": "editor_width",
      "tab_size": 2
    }
  }
}

Git 相关设置

json
{
  "git": {
    "git_gutter": "tracked_files",
    "inline_blame": {
      "enabled": true,
      "delay_ms": 500
    },
    "hunk_style": "staged_hollow"
  },
  "git_panel": {
    "tree_view": true,
    "status_style": "icon",
    "default_width": 300
  }
}
设置说明
git_gutter行号旁显示 Git 改动标记
inline_blame行尾显示 Git blame 信息
hunk_styleDiff hunk 的显示样式
tree_viewGit 面板按树形结构显示

完整配置模板

参见 参考 - 配置模板

本章小结

  • Ctrl+, 打开设置
  • 配置在 settings.json 中,JSON 格式
  • 核心配置:主题、字体、缩进、自动保存、格式化
  • 可以为不同语言设置不同配置
  • 各面板位置可以自定义

小练习

  1. 打开 settings.json,修改编辑器字体大小
  2. 设置自动保存为 "after_delay": 1500
  3. 为你常用的语言添加特定配置
  4. 调整 Git 面板的位置和宽度

基于 Zed 官方文档及社区资料整理,仅供学习参考