Кастомизация редактора Zed не для технарей
Около месяца, как перешел с Sublime Text на опенсорсный текстовый редактор Zed. И все в нем прекрасно: дизайн, множество тем и плагинов. Вокруг уже появилось свое небольшое активное комьюнити, которое помогает проекту развиваться. В ближайшем будущем обещают даже поддержку Jupyter Notebook. Паттерны использования описал в заметке.
Zed (рус. Зэд) — это высокопроизводительный, современный и минималистичный редактор кода на Rust, активно использующий GPU для быстрой и плавной работы интерфейса, созданный командой разработчиков Atom; он поддерживает многопользовательскую работу в реальном времени, стандарты LSP и MCP для автодополнения и диагностики, интеграцию с Git и ИИ-помощниками (включая GPT и Claude), имеет встроенный терминал и мощные функции IDE, обеспечивая молниеносный отклик и удобство для командной разработки. Zed — это открытый проект с акцентом на скорость, отзывчивость и совместное программирование.
С первого запуска стало понятно, что некоторые функции придется настраивать под себя: сортировка по алфавиту или уникальным строкам. Документация с первого раза не отвечала на большинство вопросов. Пришлось лезть в гитхаб и искать. Оказалось достаточно забиндить клавиши под отдельные функции в настройках (Settings → Open Key Bindings [#K &S]). Получился такой конфиг:
[
// Zed keymap
//
// For information on binding keys, see the Zed
// documentation: https://zed.dev/docs/key-bindings
//
// To see the default key bindings run `zed: open default keymap`
// from the command palette.
[
{
"context": "Workspace",
"bindings": {
// "shift shift": "file_finder::Toggle"
}
},
{
"context": "Editor && mode == full",
"bindings": {
// "j k": ["workspace::SendKeystrokes", "escape"]
// Мои F-клавиши для работы со строками
"f3": "editor::UniqueLinesCaseInsensitive", // Удаление дубликатов без учета регистра
"f4": "editor::UniqueLinesCaseSensitive", // Удаление дубликатов с чувствительностью регистру
"f5": "editor::SortLinesCaseInsensitive", // Сортировка без учета регистра
"f6": "editor::SortLinesCaseSensitive", // Сортировка с чувствительностью регистру
"f7": "editor::ReverseLines", // Обратная сортировка списка
"f8": "editor::ShuffleLines", // Случайная сортировка
"f9": "editor::DeleteLine", // Удаление строки
// Дубликат строки: если у тебя есть editor::DuplicateLineDown в дефолтном keymap —
// раскомментируй следующую строку и закомментируй вариант с SendKeystrokes ниже.
// "shift-alt-down": "editor::DuplicateLineDown", // Дубликат строки вниз (нативный экшен)
// Универсальный вариант дубликата строки через эмуляцию клавиш (работает везде):
"shift-alt-down": ["workspace::SendKeystrokes", "cmd-c cmd-v"], // Дубликат строки (copy + paste)
// Мультикурсор / выбор как в VSCode:
"cmd-l": "editor::SelectLine", // Выделить текущую строку
"cmd-shift-l": "editor::SelectAllMatches", // Курсор на всех совпадениях выделения
"cmd-alt-up": "editor::AddSelectionAbove", // Добавить курсор выше
"cmd-alt-down": "editor::AddSelectionBelow" // Добавить курсор ниже
// Под cmd-d в Zed нет идеального аналога VSCode "select next occurrence".
// Обычно используют дефолтный биндинг для поиска или editor::SelectNext,
// его можно подсмотреть в zed: open default keymap и при желании сюда добавить.
}
}
]
Обновлено 21 июня 2026
Еще по теме
Официальная страница редактора Zed
Sublime Text для маркетологов