跳至主要內容

Zed 編輯器初體驗:Rust 打造的極速開發環境

5 分鐘閱讀 950 字

Zed 編輯器初體驗:Rust 打造的極速開發環境

身為一個長年使用 VS Code 的開發者,我對編輯器的要求其實不高:擴充套件豐富、啟動夠快、不會因為開太多檔案就卡住。但當我第一次開啟 Zed,感受到它的速度後,我開始認真思考是否該換個工作環境。

Zed 是什麼?

Zed 是由 Atom 和 Tree-sitter 的原班人馬打造的新世代程式碼編輯器,完全使用 Rust 開發,並在 GPU 上渲染 UI。它的設計目標只有一個:極速

2024 年初,Zed 宣布開源(MIT/GPL 授權),並持續快速迭代。

安裝

# macOS
brew install --cask zed

# 或直接從官網下載
# https://zed.dev

Linux 支援在 2024 年底正式推出,Windows 版本則仍在開發中(目前可透過 WSL 使用)。

第一印象:速度

開啟一個有 50 萬行程式碼的大型 monorepo,Zed 的反應幾乎是即時的。相比之下,VS Code 需要數秒才能完成索引,且記憶體用量高出許多。

幾個關鍵效能數字(個人非正式測試):

  • 冷啟動時間:約 0.3 秒
  • 大型檔案捲動:60fps 絲滑
  • 搜尋 10 萬行程式碼:幾乎即時

核心功能介紹

1. 多緩衝區(Multibuffers)

Zed 最獨特的功能之一。你可以把來自不同檔案的程式碼片段組合在同一個視窗中一起編輯:

Cmd+Shift+F 搜尋後,結果不只顯示匹配的行,而是可以直接在搜尋結果中編輯所有匹配的位置,改動會即時同步回原始檔案。

2. 協作功能(Collaboration)

Zed 內建了類似 Google Docs 的即時協作功能,無需任何外掛:

1. 開啟 Zed 並登入帳號
2. 點選右上角的協作圖示
3. 複製邀請連結發給同事
4. 即可即時共同編輯,看到對方的游標

3. LSP 支援

Zed 內建 LSP(Language Server Protocol)支援,自動下載和管理語言伺服器:

// .zed/settings.json(專案層級設定)
{
  "languages": {
    "TypeScript": {
      "language_servers": ["typescript-language-server", "!copilot"],
      "format_on_save": "on",
      "formatter": {
        "external": {
          "command": "prettier",
          "arguments": ["--stdin-filepath", "{buffer_path}"]
        }
      }
    },
    "Rust": {
      "language_servers": ["rust-analyzer"],
      "format_on_save": "on"
    }
  }
}

4. 鍵盤快速鍵

Zed 採用類 Vim 的操作哲學,所有功能都有對應的鍵盤快速鍵,且支援完整的 Vim 模式:

// 啟用 Vim 模式
{
  "vim_mode": true,
  "vim": {
    "use_system_clipboard": "always"
  }
}

常用快速鍵:

  • Cmd+P:模糊搜尋檔案
  • Cmd+Shift+P:命令面板
  • Ctrl+G:跳到行號
  • Cmd+Shift+F:全域搜尋(帶上下文)
  • Ctrl+Tab:切換最近使用的 buffer

5. 主題系統

{
  "theme": {
    "mode": "system",
    "light": "One Light",
    "dark": "One Dark"
  },
  "buffer_font_family": "Zed Mono",
  "buffer_font_size": 14,
  "ui_font_size": 14
}

擴充套件生態

老實說,這是 Zed 目前最大的弱點。擴充套件生態系遠不如 VS Code 豐富。但常用的功能大多已內建或有對應擴充:

  • Git:內建 Git diff、blame、branch 切換
  • Terminal:內建終端機(`Ctrl+``)
  • GitHub Copilot:官方整合
  • ESLint/Prettier:透過 LSP 支援
  • Tailwind CSS:官方語言擴充

安裝擴充:

Cmd+Shift+P > Extensions

與 VS Code 的比較

特性 Zed VS Code
啟動速度 極快 中等
記憶體用量 中~高
擴充套件生態 成長中 非常豐富
內建協作 需外掛
Vim 模式 原生 需外掛
Windows 支援 開發中 完整
遠端開發 有限 完整

我的工作流程調整

使用 Zed 兩個月後,我的主要工作流程是:

  1. 日常開發:用 Zed 處理 TypeScript/Vue 專案
  2. 大型搜尋/替換:Zed 的 Multibuffer 功能比 VS Code 好用
  3. 需要特定外掛時:切回 VS Code(如 GraphQL 相關工具)
  4. 遠端開發:繼續用 VS Code Remote SSH

設定範例

我目前使用的基礎設定:

{
  "vim_mode": true,
  "theme": "Catppuccin Mocha",
  "buffer_font_family": "JetBrains Mono",
  "buffer_font_size": 14,
  "format_on_save": "on",
  "autosave": "on_focus_change",
  "tab_size": 2,
  "soft_wrap": "editor_width",
  "show_whitespaces": "selection",
  "terminal": {
    "shell": {
      "program": "/opt/homebrew/bin/fish"
    }
  },
  "git": {
    "inline_blame": {
      "enabled": true,
      "delay_ms": 500
    }
  }
}

值得期待的功能

  • Windows 正式支援:預計 2025 年中
  • 擴充套件 API 完善:更多第三方擴充
  • AI 功能增強:目前已有 inline AI 輔助,持續改進
  • 遠端開發:SSH 遠端開發功能持續改善

小結

Zed 是一個讓我感到興奮的編輯器。速度快到不可思議,UI 設計簡潔,內建協作功能實用。如果你是 macOS 或 Linux 使用者,並且擴充套件需求不複雜,非常值得試試。它可能無法完全取代 VS Code,但作為日常主力編輯器的候選者,它已經足夠成熟。

分享這篇文章