В многопользовательском редакторе кода Zed обеспечена поддержка Linux

Команда разработчиков текстового редактора Zed объявила о реализации поддержки платформы Linux. Готовые сборки, подготовленные для архитектур x86_64 и ARM64, поддерживают работу в большинстве дистрибутивов Linux. Редактор примечателен наличием возможностей для совместной работы над кодом, высокой отзывчивостью интерфейса и выполнением растеризации окон на стороне GPU.

Проект развивается под руководством Натана Собо (Nathan Sobo), автора редактора Atom (основа VS Code) при участии команды бывших разработчиков редактора Atom, платформы Electron и библиотеки для разбора синтаксиса Tree-sitter. Исходные тексты серверной части, обеспечивающей координацию многопользовательского редактирования, открыты под лицензией AGPLv3, а самого редактора — под лицензией GPLv3. Для формирования интерфейса пользователя задействована собственная библиотека GPUI, открытая под лицензией Apache 2.0. Код проекта написан на языке Rust.

Zed совмещает в одном продукте легковесный текстовый редактор и функциональность современных интегрированных сред разработки. При разработке учтён опыт создания Atom и предпринята попытка воплотить некоторые идеи о том, как должен выглядеть идеальный редактор для программиста. Большое внимание уделяется производительности и отзывчивости интерфейса — по задумке создателей проекта все действия при редактировании должны выполняться мгновенно, а задачи кодирования решаться наиболее эффективным способом. Высокая производительность Zed достигается благодаря активному использованию многопоточности с задействованием всех доступных ядер CPU и вовлечению GPU в процесс отрисовки.

Основные возможности Zed:

  • Совместная навигация по коду и редактирование кода одновременно несколькими разработчиками в одном общем рабочем пространстве.

  • Встроенная возможность предоставления другим участникам проекта доступа к своему экрану.
  • Средства для совместного обсуждения и планирования работ в команде. Поддержка ведения задач, создания заметок и отслеживания проектов, текстовый и голосовой чат.
  • Возможность подключения к работе с внешним проектом с любого компьютера, без привязки к данным на локальной системе. Работа с внешними проектами осуществляется по аналогии с работой с кодом, размещённым на локальном компьютере.
  • Учёт полного синтаксического дерева различных языков программирования для корректной подсветки синтаксиса, автоформатирования, структурного выделения и контекстного поиска;

  • Поддержка обращения к серверам LSP (Language Server Protocol) для автодополнения, навигации по коду, диагностики ошибок и рефакторинга.

  • Всплывающий диалог «Палитра команд» для быстрого доступа к поддерживаемым командам и изучения способов вызова команд по клавиатурным комбинациям.

  • Всплывающие подсказки для просмотра диагностических сообщений во время работы с кодом.

  • Настраиваемое размещение и прикрепление панелей.

  • Возможность использования сразу нескольких курсоров и выделенных блоков для одновременного набора в нескольких местах или манипуляций с типовыми блоками кода.

  • Панель для быстрой навигации по всем файлам проекта.

  • Возможность поиска внутри всех файлов проекта.

  • Инструменты для рефакторинга и переименования переменных, объектов, методов и функций с автоматической заменой во всех файлах проекта.

  • Поддержка подключения и изменения тем оформления. Наличие светлых и тёмных тем.
  • Использование по умолчанию клавиатурных комбинаций VS Code. Опциональный режим совместимости с клавиатурными комбинациями и командами Vim.
  • Поддержка интеграции с GitHub Copilot для помощи в написании и рефакторинге кода.
  • Интегрированный эмулятор терминала.

Источник: http://www.opennet.ru/opennews/art.shtml?num=61524