Oznámen open source editoru kódu pro více uživatelů Zed, vyvinutý pod vedením Nathana Sobo, autora projektu Atom (základ VS Code) za účasti týmu bývalých vývojářů editoru Atom, společnosti Electron. platforma a knihovna pro analýzu stromového hlídání. Zdrojový kód serverové části, která koordinuje úpravy pro více uživatelů, je otevřen pod licencí AGPLv3 a samotný editor je otevřen pod licencí GPLv3. K vytvoření uživatelského rozhraní slouží naše vlastní knihovna GPUI otevřená pod licencí Apache 2.0. Kód projektu je vyvinut v jazyce Rust. Z platforem je aktuálně podporován pouze macOS (podpora pro Linux, Windows a Web je ve vývoji).
Editor Zed je pozoruhodný svým zaměřením na organizování kolaborativního vývoje v reálném čase a dosažení maximálního lesku, produktivity a odezvy rozhraní, ve kterém by podle tvůrců projektu měly být všechny editační akce prováděny okamžitě a kódovací úlohy by měly být řešit co nejefektivněji. Zed se pokouší spojit odlehčený editor a funkčnost moderních integrovaných vývojových prostředí v jednom produktu. Při vývoji Zed byly zohledněny zkušenosti s tvorbou Atomu a byl učiněn pokus implementovat některé nové nápady, jak by měl vypadat ideální editor pro programátora.
Vysokého výkonu Zed je dosaženo aktivním využitím multithreadingu s využitím všech dostupných jader CPU a také rasterizací oken na straně GPU. Díky tomu se nám podařilo dosáhnout velmi vysoké odezvy na stisknutí kláves s výsledkem zobrazeným již v dalším cyklu aktualizace obrazovky. V provedených testech je doba odezvy na stisknutí klávesy v Zed odhadována na 58 ms, pro srovnání v Sublime Text 4 je tato hodnota 75 ms, v CLion - 83 ms a ve VS Code - 97 ms. Doba spouštění pro Zed se odhaduje na 338 ms, Sublime Text 4 - 381 ms, VS Code - 1444 ms, CLion - 3001 ms. Spotřeba paměti byla 257 MB pro Zed, 4 MB pro Sublime Text 219, 556 MB pro VS Code a 1536 MB pro CLion.
Mezi funkce Zed patří:
- Zohlednění úplného stromu syntaxe různých programovacích jazyků pro správné zvýraznění syntaxe, automatické formátování, strukturální zvýraznění a kontextové vyhledávání;
- Podpora pro volání serverů LSP (Language Server Protocol) pro automatické dokončování, navigaci v kódu, diagnostiku chyb a refaktoring.
- Schopnost propojovat a měnit témata. Dostupnost světlých a tmavých motivů.
- Použití výchozích klávesových zkratek VS Code. Volitelný režim kompatibility s klávesovými zkratkami a příkazy Vim.
- Podporuje integraci s GitHub Copilot, která vám pomůže psát a refaktorovat váš kód.
- Integrovaný emulátor terminálu.
- Kolaborativní navigace a úpravy kódu několika vývojáři v jednom sdíleném pracovním prostoru.
- Nástroje pro společnou diskusi a plánování práce v týmu. Podporuje správu úkolů, psaní poznámek a sledování projektů, textový a hlasový chat.
- Možnost připojení k práci na projektu z libovolného počítače, aniž byste byli vázáni na data v místním systému. Práce s externími projekty se provádí stejným způsobem jako práce s kódem umístěným na lokálním počítači.
Pro financování práce vývojového týmu Zed na plný úvazek hodlá projekt nadále využívat obchodní model založený na poskytování doplňkových placených služeb. První z těchto služeb budou „Zed Channels“ s implementací virtuální kanceláře pro organizaci práce vývojářských týmů ve velkých projektech, která umožní několika vývojářům spolupracovat, komunikovat s ostatními účastníky a společně psát kód. Na základě Zed Channels byla spuštěna iniciativa Fireside Hacks, v rámci které může kdokoli sledovat vývoj samotného Zenu v reálném čase. Do budoucna se také počítá s poskytováním služby s vlastním inteligentním asistentem ve stylu GitHub Copilot a případně implementací placených specializovaných doplňků zohledňujících specifika vývoje komerčních produktů a využití v podnicích.
Zdroj: opennet.ru