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