Skip to main content

Zed 编辑器介绍

· 2 min read

Zed 是一个现代化的编辑器, 使用它只是为了提高效率.

安装

直接在官网看如何安装即可, 根据不同的系统不同方式.

配置

安装后, 只需要对日常使用进行配置, 它里面的许多快捷键都和 VS Code 类似.

如下是一个目前使用的基础配置:

{
"features": {
"edit_prediction_provider": "zed"
},
"active_pane_modifiers": {
"inactive_opacity": 0.4
},
"restore_on_startup": "none",
"autosave": "on_window_change",
"vim_mode": true,
"buffer_font_size": 24,
"buffer_font_family": "FiraCode Nerd Font Mono",
"preferred_line_length": 120,
"soft_wrap": "preferred_line_length",
"show_wrap_guides": true, //展示行宽竖线
"ui_font_family": "FiraCode Nerd Font Mono",
"ui_font_size": 24,
"edit_predictions_disabled_in": ["comment", "string"],
// vim 的相对行号
"vim": { "toggle_relative_line_numbers": true },
"theme": {
"mode": "system",
"light": "One Light",
"dark": "One Dark"
},
"tabs": {
"file_icons": true,
"close_position": "left",
"show_close_button": "always"
},
"file_finder": {
"modal_max_width": "medium"
},
// languages 和 lsp 配置
"languages": {
"TypeScript": {
"prettier": {
"allowed": false
}
},
"Rust": {
"formatter": "language_server",
"format_on_save": "on"
},
"Markdown": { "format_on_save": "off" }
},
"inlay_hints": {
"enabled": false
},
"lsp": {
"rust-analyzer": {
"initialization-options": {
"check": {
"command": "clippy"
},
"checkOnSave": {
"command": "clippy"
}
}
}
}
// "assistant": { "enabled": false, "version": "2" }
}

除通用环境配置外, 还支持针对不同语言进行.

键位绑定

目前自定义的一些键位, 和 Vscode 习惯匹配:

[
{
"context": "Workspace",
"bindings": {
"shift shift": "file_finder::Toggle",
"cmd-e": "projects::OpenRecent",
"cmd-p": "buffer_search::FocusEditor",
"cmd-[": "pane::GoBack",
"cmd-]": "pane::GoForward",
"cmd-1": "workspace::ToggleLeftDock",
"cmd-shift-n": "workspace::NewWindow"
}
},
{
"context": "Editor",
"bindings": {
"cmd-w": "pane::CloseActiveItem",
"shift shift": "file_finder::Toggle",
"cmd-c": "editor::Copy",
"cmd-v": "editor::Paste",
"cmd-x": "editor::Cut",
"cmd-[": "pane::GoBack",
"cmd-]": "pane::GoForward",
"cmd-shift-t": "workspace::NewCenterTerminal"
}
},
{
"context": "Terminal",
"bindings": {
// "cmd-c": ["terminal::SendKeystroke", "cmd-c"]
}
},
{
"context": "vim_mode",
"bindings": {
"cmd-e": "projects::OpenRecent",
"cmd-a": "editor::SelectAll",
"cmd-c": "editor::Copy",
"cmd-v": "editor::Paste",
"cmd-[": "pane::GoBack",
"cmd-]": "pane::GoForward"
}
}
]

vim 相关

vim 中有许多拥有的命令, 详见: https://zed.dev/docs/vim